# 功能模块
# 模块管理
fast3dbase.widget 类是静态类,是平台widget模块统一管理维护的类
# 使用示例
var jsondata= {
"debugger": true,
"version": "time",
"defaultOptions": {
"windowOptions": {
"position": "r",
"maxmin": false,
"resize": true
},
"autoDisable": true,
"disableOhter": true
},
"widgetsAtStart": [
{
"name": "左上角工具栏",
"uri": "widgets/toolBar/widget.js",
"visible": true
}
],
"widgets": [
{
"name": "图层管理",
"uri": "widgets/manageLayers/widget.js",
"windowOptions": {
"position": {"top": 1,"bottom": 1,"right": 1}
},
"disableOhter": false
},
{
"name": "图上量算",
"uri": "widgets/measure/widget.js"
}
]
};
fast3dbase.widget.init(viewer, jsondata);
# 方法
包括模块初始化,激活释放指定模块等方法
方法名 | 返回值 | 说明 |
---|---|---|
init(<Viewer> viewer,<Object> jsondata,<String> basePath ) | 按配置信息初始化widget管理类 如果widgets目录不在当前页面的同级目录,在其他处时可以传入basePath参数,参数值为:widgets目录相对于当前页面的路径 | |
activate(<Object> item,<Boolean> noDisableOther ) | 激活指定的模块,item可以是id或者uri或模块配置信息对象//常用方式,直接使用uri | |
disable(<String> id或uri ) | 释放指定id或uri的widget | |
disableAll(<String> nodisableid? ) | 释放所有Widget,可以指定id或uri的widget不释放 | |
getWidget(<String> id或uri ) | Object | 获取指定id或uri的widget配置信息 |
getClass(<String> id或uri ) | BaseWidget | 获取指定id或uri的widget的对应的实例化BaseWidget类 |
bindClass(<BaseWidget> class ) | 实例化后的对象 | 绑定继承BaseWidget类的类到当前对应js的widget中 |
removeDebugeBar() | 移除Widget测试栏 | |
getDefWindowOptions() | objcet | 获取全局默认的view配置信息 |
getCacheVersion() | String | 获取当前配置的版本信息,用于清除浏览器缓存 |
# 基础模块
fast3dbase.widget.BaseWidget 类是平台所有widget功能模块的基础类,开发widget时需要继承该类。 该类不是直接new实例化使用的,是新建一个类继承该类后使用。
# 使用示例
var MyWidget = fast3dbase.widget.BaseWidget.extend({
map: null,//框架会自动对map赋值
options: {
resources: ['style.css'],
view: {
type: "window",
url: "view.html",
windowOptions: {width: 250, height: 300}
},
},
//初始化[仅执行1次]
create: function () {
},
viewWindow:null,
//每个窗口创建完成后调用
winCreateOK: function (opt, result) {
this.viewWindow = result;
},
//打开激活
activate: function () {
},
//关闭释放
disable: function () {
}
})
# Options参数选项
Option参数 | 参数类型 | 默认值 | 说明 |
---|---|---|---|
resources | String[] | null | 该模块依赖的外部js、css资源文件,会在实例化之前加入的页面中。 默认引用是当前widget所在目录的资源,相当于页面的资源或外部资源请以 “/” 或 “.” 或 “http” 开始命名 |
view | Object | null | 定义模块的view页面配置信息,为空时表示当前模块无关联页面, 其中url地址规则,参考resources说明 |
# 方法
包括模块初始化、激活、释放时相关方法。
方法名 | 返回值 | 说明 |
---|---|---|
activateBase() | 激活模块初始方法,基类内部使用 | |
disableBase() | 释放模块初始方法,基类内部使用 | |
init() | 模块初始化之前触发该方法,仅首次初始化执行1次 | |
create() | 模块初始化,仅首次初始化执行1次 | |
winCreateOK(<String> opt,<String> result ) | 每个view窗口或页面创建完成后调用 | |
activate() | 打开激活模块 | |
disable() | 关闭释放模块 | |
getHtml(<String> url,<function> callback ) | 获取指定url的html信息 | |
winFull() | 窗口最大化后触发 | |
winMin() | 窗口最小化后触发 | |
winRestore() | 窗口最大、小化后,被还原时触发 |