private var featureLayerToNavigatorContent:Dictionary = new Dictionary; private var featureLayerToAttributeTable:Dictionary = new Dictionary; private var featureLayerToDynamicMapService:Dictionary = new Dictionary; private var featureLayerToSettings:Dictionary = new Dictionary; private var hiddenFeatureLayerToSettingsName:Dictionary = new Dictionary; private var timer:Timer; private var querySource:String private var queryRefreshRate:String; private var featureLayer:FeatureLayer private function basewidget_initializeHandler():void { if (isPartOfPanel) // if widget is part of "left", "right" or "bottom" panel { this.percentWidth = this.percentHeight = 100; wTemplate.percentWidth = wTemplate.percentHeight = 100; } else { wTemplate.width = map.width - map.width / 100 - Number(this.left); wTemplate.minWidth = 800; wTemplate.height = wTemplate.minHeight = 300; } } private function basewidget_widgetConfigLoaded():void { if (configXML) { querySource = configXML.source; queryRefreshRate = configXML.refreshrate; // non-mapped layers var nonMappedLayers:Array = []; var players:XMLList = configXML.layer as XMLList; for (var p:Number = 0; p < players.length(); p++) { const layerXML:XML = players as XML; nonMappedLayers.push(createNonMappedLayer(layerXML)); } //excludeLayers excludeLayers = []; var elayers:XMLList = configXML.excludelayer as XMLList; for (var n:Number = 0; n < elayers.length(); n++) { excludeLayers.push(elayers.toString()); } // layerSettings, overriding default settings configureLayerSettings(configXML.layersettings.layer); // attachment inspector labels configureAttachmentInspectorLabels(); } map.addEventListener(MapEvent.LAYER_ADD, mapLayerAddHandler, false); map.addEventListener(MapEvent.LAYER_REMOVE, mapLayerRemoveHandler, false); map.addEventListener(MapEvent.LAYER_REORDER, mapLayerReorderHandler, false); mapLayers = map.layers as ArrayCollection; layersUsedInAttributeTable = getLayers(mapLayers); for each (var layer:Layer in nonMappedLayers) { layersUsedInAttributeTable.push(layer); } populateAttributeTableTabBar(layersUsedInAttributeTable); startWidgetTimer(); } private function startWidgetTimer():void { if (queryRefreshRate) { var seconds:Number = Number(queryRefreshRate); var rate:Number = seconds * 1000; stopWidgetTimer(); timer = new Timer(rate); timer.addEventListener(TimerEvent.TIMER, timerTick); timer.start(); } } private function stopWidgetTimer():void { if (timer != null) { if (timer.running) { timer.stop(); } } } private function timerTick(event:TimerEvent):void { var layer:Layer = layersUsedInAttributeTable.getItemAt(0) as Layer; createFeatureLayersFromDynamicMapService(ArcGISDynamicMapServiceLayer(layer), 0); AttributeTable(featureLayerToAttributeTable[featureLayers]).refresh(); }
} map.addEventListener(MapEvent.LAYER_ADD, mapLayerAddHandler, false); map.addEventListener(MapEvent.LAYER_REMOVE, mapLayerRemoveHandler, false); map.addEventListener(MapEvent.LAYER_REORDER, mapLayerReorderHandler, false); mapLayers = map.layers as ArrayCollection; layersUsedInAttributeTable = getLayers(mapLayers); for each (var layer:Layer in nonMappedLayers) { layersUsedInAttributeTable.push(layer); } populateAttributeTableTabBar(layersUsedInAttributeTable); startWidgetTimer(); } private function startWidgetTimer():void { if (queryRefreshRate) { var seconds:Number = Number(queryRefreshRate); var rate:Number = seconds * 1000; stopWidgetTimer(); timer = new Timer(rate); timer.addEventListener(TimerEvent.TIMER, timerTick); timer.start(); } } private function stopWidgetTimer():void { if (timer != null) { if (timer.running) { timer.stop(); } } } private function timerTick(event:TimerEvent):void { AttributeTable(featureLayerToAttributeTable[featureLayer]).refresh(); } private function configureAttachmentInspectorLabels():void { AttributeTableWidgetAttachmentInspectorSkin.noAttachmentsText = getDefaultString("noAttachmentsText"); AttributeTableWidgetAttachmentInspectorSkin.chooseFileText = getDefaultString("chooseFileText"); AttributeTableWidgetAttachmentInspectorSkin.attachmentSubmitLabel = getDefaultString("attachmentSubmitLabel"); AttributeTableWidgetAttachmentInspectorSkin.attachmentCancelLabel = getDefaultString("attachmentCancelLabel"); }
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.