/**
|
* 分屏对比widget
|
* @author Liuyl
|
* @date 2015/10/15
|
*/
|
define([
|
"dojo/_base/declare", "dojo/_base/array", "dojo/_base/lang",
|
"dojo/dom", "dojo/dom-style", "dojo/dom-class", "dojo/dom-attr", "dojo/dom-construct",
|
"dojo/topic", "dojo/aspect",
|
"base/BaseWidget", "base/AppEvent", "base/ConfigData",
|
"controls/mapswitch/MapSwitchControl", "controls/overview/OverviewControl", "controls/timeslider/TimeSliderControl",
|
"controls/Splittime/SplittimeControl","controls/sceneControl/SceneControl",
|
"widgets/map/MapWidget"
|
], function (declare, arrayUtil, lang,
|
dom, domStyle, domClass, domAttr, domConstruct,
|
topic, aspect,
|
BaseWidget, AppEvent, ConfigData,
|
MapSwitchControl, OverviewControl, TimeSliderControl, SplittimeControl,SceneControl,
|
MapWidget) {
|
var Widget = declare("MultidateWidget", [BaseWidget], {
|
templateString: "<div></div>",
|
_map: null,
|
constructor: function (options) {
|
this._map = options.map;
|
this.visibleGroupLayerId = ConfigData.basemap.multidate.groupid1;
|
this.visibleSetLayerId = ConfigData.basemap.multidate.setid1;
|
},
|
startup: function (extent) {
|
try {
|
this.mapWidget = null;
|
this.inherited(arguments);
|
} catch (err) {
|
console.log(err);
|
}
|
|
},
|
_buildMapWidget: function () {
|
var mapWidget = new MapWidget({
|
id: "multidateRightMapWidget",
|
cssPath: "widgets/map/MapWidget.css"
|
});
|
mapWidget.visibleGroupLayerId = this.visibleGroupLayerId;
|
mapWidget.visibleLayerSetId = this.visibleSetLayerId;
|
this.mapWidget = mapWidget;
|
//给主地图添加鹰眼、地图切换控件
|
aspect.after(this.mapWidget, "onload", lang.hitch(this, function (map) {
|
var mapSwitchControl = new MapSwitchControl({
|
map: this.mapWidget.map,
|
visibleGroupLayerId: this.visibleGroupLayerId,
|
cssPath: "controls/mapswitch/MapSwitchControl.css"
|
});
|
this.mapWidget.addControl(mapSwitchControl);
|
|
//全景按钮
|
var sceneControl = new SceneControl({
|
map: this.mapWidget.map,
|
cssPath: "controls/sceneControl/SceneControl.css"
|
});
|
this.mapWidget.addControl(sceneControl);
|
// var overviewControl = new OverviewControl({
|
// grouplayersConfig: ConfigData.basemap.grouplayers,
|
// visibleGroupLayerId: this.visibleGroupLayerId,
|
// map: this.mapWidget.map
|
// });
|
// this.mapWidget.addControl(overviewControl);
|
|
var splitimeControl = new SplittimeControl({
|
cssPath: "controls/Splittime/SplittimeControl.css"
|
});
|
this.mapWidget.addControl(splitimeControl);
|
$(".esriSimpleSlider").css({
|
"display": "none"
|
});
|
$(".Splittime-base").css({
|
"display": "block"
|
});
|
/* var timesliderControl = new TimeSliderControl({
|
grouplayersConfig: ConfigData.basemap.grouplayers,
|
map: this._map,
|
visibleGroupLayerId: this.visibleGroupLayerId,
|
visibleSetLayerId: this.visibleSetLayerId,
|
cssPath: "controls/timeslider/TimeSliderControl.css"
|
});
|
this.mapWidget.addControl(timesliderControl);*/
|
}));
|
AppEvent.dispatchAppEvent(AppEvent.APPEND_MAPWIDGET, {
|
mapwidget: this.mapWidget,
|
relate: true
|
});
|
},
|
open: function () {
|
this.inherited(arguments);
|
if (!this.mapwidget) {
|
this._buildMapWidget();
|
}
|
},
|
close: function () {
|
var mianSelectLayer = this.map.getLayer('mianSelectLayer');
|
if (mianSelectLayer) {
|
this.map.removeLayer(mianSelectLayer);
|
}
|
for (var x in ConfigData.layers) {
|
if (ConfigData.layers[x] != null) {
|
this.map.addLayer(ConfigData.layers[x]);
|
}
|
}
|
$("#SplittimeControl_0 .split_tuselect option:first").prop("selected", 'selected');
|
$("#SplittimeControl_0 .split_layerselect").empty().append("<option value=''>请选择图层</option>");
|
this.inherited(arguments);
|
if (this.mapWidget) {
|
this.visibleGroupLayerId = this.mapWidget._currentVisibleGroupLayer.id;
|
this.visibleSetLayerId = this.mapWidget._currentVisibleSetLayer.id;
|
AppEvent.dispatchAppEvent(AppEvent.REMOVE_MAPWIDGET, this.mapWidget.id);
|
}
|
this.mapWidget = null;
|
}
|
});
|
return Widget;
|
});
|