<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Excluding layerIds for different widgets. in ArcGIS API for Flex Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/excluding-layerids-for-different-widgets/m-p/189854#M4424</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Folks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;First, I am apologies on my bad 'English'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am new to ArcGIS technology.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I was trying to divide the dynamic mapservices of config.xml, &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and loading them from individual configruation xml file associated with &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;each newly created widgets instead of from config.xml,i.e mapservices are loaded &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from individual widget's configuation file not from config.xml. Like 'LiveMapService' widget,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;this widget loads the mapservices from config.xml. But the newly created widgets will load &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mapservices from there individual configuration file not like 'LiveMapService' widget.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have created couple of such widgets with couple various services in each widgets, say,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'A' consists of services a1, a2, a3, etc. which are of type 'ArcGISDynamicMapServiceLayer', and&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'B' consists of services b1, b2, b3, etc. which are of type 'ArcGISDynamicMapServiceLayer'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'C' consists of services c1, c2, c3, etc. which are of type 'ArcGISDynamicMapServiceLayer' and so on.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;these widgets A, B, C etc loads the mapservices from there individual configuration file like A.xml, B.xml, C.xml etc and&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;not from the config.xml, but the widget declration will be in config.xml only.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;And these widgets are invoked from the shortcut menu from one of the main menu's.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have written a seperate single 'WidgetConfigManager.as', which parses the A.xml, B.xml, etc. similar &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to 'ConfigManager.as' for config.xml and store them in temperorly created&amp;nbsp; 'ConfigData' array &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;variable in 'ConfigData.as' , and single 'WidgetMapManager.mxml' file that calls the &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;rest based webservices with the url on 'ArcGISDynamicMapServiceLayer' and adds these layer on top&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to the 'map' object as layer, like the similar to the one we have in the flexviewer, i.e 'MapManager'. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I may be wrong that..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I guess here we have only single and only single 'map' object. On which I am loading the different &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;dynamic mapservices (a1,a2,a3, b1,b2,b3,c1,c2,c3,etc) layers through various newly created widgets.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;==========&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Problem:..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;==========&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When ever I click the widget from the shortcut menu to invoke, say the first widget clicked, &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;say widget 'A' is clicked, shows up the services.. a1,a2,a3.. correctely. But when I clicked another&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget say widget 'B' to invoke, this widget 'B' shows up the services.. b1, b2, b3.. correctely,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and problem is widget 'A' is also showing the services of widget 'B' as soon as I invoked the &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'B' from the menu. i.e widget 'A'&amp;nbsp; shows up the services a1,a2,a3,b1,b2,b3. for which I don't&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;want, even if I invoke the couple of widgets at time, they should show their individual services &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;in there widgets, not the other widgets services..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Can somebody help me on this.. would be appreciated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I may be wrong.. but I figured out the issue is with the 'layerIds'. when ever we invoke the &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;any widget having services a1,a2,a3.. they all added on to the same single 'map' object, ie. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;services from the widget 'A' are added to 'map' object while invoking, causing an array of 'layerIds' &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for a1,a2,a3 in 'map' object. Again, invoking another widget 'B'.. leads adding additional 'layerIds'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for servicess b1,b2,b3.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Since 'layerIds' is an read only object, we can not control or manipulate that object, to seperate &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;the service labels in 'layerIds'. the only way is to 'exclude' the not required services in a &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;particular widget. thats what code in 'LiveMapServices' widget does..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;i.e the following code,'getBasemaps()', should do more smart work on this,I guess... may be I am wrong..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function init():void&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; if (configXML)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //labels&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; visibilityLabel = configXML.labels.visibilitylabel || "Layer Visibility";&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; transparencyLabel = configXML.labels.transparencylabel || "Layer Transparency";&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //set the expanded state of the toc&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; expanded = (configXML.tocSettings.expanded == "true")?true:false;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.map = map;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeLayers = getBasemaps();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeGraphicsLayers = true;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; layerRepeater.dataProvider = getLayers();&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_options.png", transparencyLabel, showStateOptions);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_folder.png", visibilityLabel, showStateVisibility);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function getBasemaps():ArrayCollection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var baseMaps:ArrayCollection = new ArrayCollection();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; for (var i:Number = 0; i &amp;lt; configData.configBasemaps.length; i++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; baseMaps.addItem(configData.configBasemaps&lt;I&gt;.label);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return baseMaps;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am struck here since from long time.. Please somebody help me on this..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am providing my one of the sample widget's code below.. which I wrote..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks in advance.. provide me the 'getBasemaps()' method code, which does the smart thing to &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;exclude the not required services for corresponding widgets during the multiple widgets &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;invocation at runtime...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Bindable]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var mapLayerIds:Array;&amp;nbsp; //VM added code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var wdgMpMgr:WidgetMapManager;//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var wdgCfgMgr:WidgetConfigManager;//VM added code &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var cnfgDat:Array;//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[Bindable]//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var widgetLabel:String;//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function init():void&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; if (configXML)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //labels.....&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; wdgCfgMgr = new WidgetConfigManager();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; cnfgDat = wdgCfgMgr.configLoad(configXML);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; configData.configTempMap=null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; configData.configTempMap=cnfgDat;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; cboLayerGraphical.dataProvider=cnfgDat;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; CboLayers.dataProvider=cnfgDat;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //getLayerInfo(configData);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; wdgMpMgr = new WidgetMapManager();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; wdgMpMgr.getLayerInfo(configData, map);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //set the expanded state of the toc&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; expanded = (configXML.tocSettings.expanded == "true")?true:false;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.map = map;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; mapLayerIds=map.layerIds; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeLayers = getBasemaps();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeGraphicsLayers = true;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; layerRepeater.dataProvider = getLayers();&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_info.png", titleLabel, showStateQueryAttributes);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_searchgraphical.png", graphicalsearchLabel, showStateGraphicalSearch);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_options.png", transparencyLabel, showStateOptions);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "", visibilityLabel, showStateVisibility);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function getBasemaps():ArrayCollection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var lyrObj:Object = null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var otherMaps:ArrayCollection = new ArrayCollection();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (var i:Number = 0; i &amp;lt; map.layerIds.length; i++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyrObj = commonSearch(map.layerIds&lt;I&gt;);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; otherMaps.addItem(lyrObj);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return otherMaps;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private function commonSearch(lyr:Object):Object&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var tempLyr:Object = null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; for(var j:Number = 0; j &amp;lt; cnfgDat.length; j++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(lyr == cnfgDat&lt;J&gt;.label)&lt;/J&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tempLyr = lyr;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return tempLyr;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private function getLayers():Array&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var cnfgMpCnt:Number = map.layerIds.length;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var layerArray:Array = [];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; for(var i:Number=0; i &amp;lt; map.layerIds.length; i++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; for(var j:Number=0; j &amp;lt; cnfgDat.length; j++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; if(map.layerIds&lt;I&gt; == cnfgDat&lt;J&gt;.label)&lt;/J&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var layer:Layer = map.getLayer(map.layerIds&lt;I&gt;);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(!(layer is GraphicsLayer))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layerArray.push(layer);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return layerArray;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks &amp;amp; Regards.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-VM&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 20 Apr 2010 16:45:56 GMT</pubDate>
    <dc:creator>VenkatM</dc:creator>
    <dc:date>2010-04-20T16:45:56Z</dc:date>
    <item>
      <title>Excluding layerIds for different widgets.</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/excluding-layerids-for-different-widgets/m-p/189854#M4424</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Folks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;First, I am apologies on my bad 'English'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am new to ArcGIS technology.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I was trying to divide the dynamic mapservices of config.xml, &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and loading them from individual configruation xml file associated with &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;each newly created widgets instead of from config.xml,i.e mapservices are loaded &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;from individual widget's configuation file not from config.xml. Like 'LiveMapService' widget,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;this widget loads the mapservices from config.xml. But the newly created widgets will load &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mapservices from there individual configuration file not like 'LiveMapService' widget.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have created couple of such widgets with couple various services in each widgets, say,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'A' consists of services a1, a2, a3, etc. which are of type 'ArcGISDynamicMapServiceLayer', and&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'B' consists of services b1, b2, b3, etc. which are of type 'ArcGISDynamicMapServiceLayer'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'C' consists of services c1, c2, c3, etc. which are of type 'ArcGISDynamicMapServiceLayer' and so on.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;these widgets A, B, C etc loads the mapservices from there individual configuration file like A.xml, B.xml, C.xml etc and&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;not from the config.xml, but the widget declration will be in config.xml only.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;And these widgets are invoked from the shortcut menu from one of the main menu's.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have written a seperate single 'WidgetConfigManager.as', which parses the A.xml, B.xml, etc. similar &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to 'ConfigManager.as' for config.xml and store them in temperorly created&amp;nbsp; 'ConfigData' array &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;variable in 'ConfigData.as' , and single 'WidgetMapManager.mxml' file that calls the &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;rest based webservices with the url on 'ArcGISDynamicMapServiceLayer' and adds these layer on top&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;to the 'map' object as layer, like the similar to the one we have in the flexviewer, i.e 'MapManager'. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I may be wrong that..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I guess here we have only single and only single 'map' object. On which I am loading the different &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;dynamic mapservices (a1,a2,a3, b1,b2,b3,c1,c2,c3,etc) layers through various newly created widgets.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;==========&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Problem:..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;==========&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When ever I click the widget from the shortcut menu to invoke, say the first widget clicked, &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;say widget 'A' is clicked, shows up the services.. a1,a2,a3.. correctely. But when I clicked another&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget say widget 'B' to invoke, this widget 'B' shows up the services.. b1, b2, b3.. correctely,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and problem is widget 'A' is also showing the services of widget 'B' as soon as I invoked the &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;widget 'B' from the menu. i.e widget 'A'&amp;nbsp; shows up the services a1,a2,a3,b1,b2,b3. for which I don't&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;want, even if I invoke the couple of widgets at time, they should show their individual services &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;in there widgets, not the other widgets services..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Can somebody help me on this.. would be appreciated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I may be wrong.. but I figured out the issue is with the 'layerIds'. when ever we invoke the &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;any widget having services a1,a2,a3.. they all added on to the same single 'map' object, ie. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;services from the widget 'A' are added to 'map' object while invoking, causing an array of 'layerIds' &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for a1,a2,a3 in 'map' object. Again, invoking another widget 'B'.. leads adding additional 'layerIds'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for servicess b1,b2,b3.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Since 'layerIds' is an read only object, we can not control or manipulate that object, to seperate &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;the service labels in 'layerIds'. the only way is to 'exclude' the not required services in a &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;particular widget. thats what code in 'LiveMapServices' widget does..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;i.e the following code,'getBasemaps()', should do more smart work on this,I guess... may be I am wrong..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function init():void&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; if (configXML)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //labels&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; visibilityLabel = configXML.labels.visibilitylabel || "Layer Visibility";&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; transparencyLabel = configXML.labels.transparencylabel || "Layer Transparency";&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //set the expanded state of the toc&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; expanded = (configXML.tocSettings.expanded == "true")?true:false;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.map = map;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeLayers = getBasemaps();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeGraphicsLayers = true;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; layerRepeater.dataProvider = getLayers();&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_options.png", transparencyLabel, showStateOptions);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_folder.png", visibilityLabel, showStateVisibility);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function getBasemaps():ArrayCollection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var baseMaps:ArrayCollection = new ArrayCollection();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; for (var i:Number = 0; i &amp;lt; configData.configBasemaps.length; i++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; baseMaps.addItem(configData.configBasemaps&lt;I&gt;.label);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return baseMaps;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am struck here since from long time.. Please somebody help me on this..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am providing my one of the sample widget's code below.. which I wrote..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks in advance.. provide me the 'getBasemaps()' method code, which does the smart thing to &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;exclude the not required services for corresponding widgets during the multiple widgets &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;invocation at runtime...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;[Bindable]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var mapLayerIds:Array;&amp;nbsp; //VM added code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var wdgMpMgr:WidgetMapManager;//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var wdgCfgMgr:WidgetConfigManager;//VM added code &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var cnfgDat:Array;//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[Bindable]//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private var widgetLabel:String;//VM added code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function init():void&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; if (configXML)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //labels.....&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; wdgCfgMgr = new WidgetConfigManager();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; cnfgDat = wdgCfgMgr.configLoad(configXML);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; configData.configTempMap=null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; configData.configTempMap=cnfgDat;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; cboLayerGraphical.dataProvider=cnfgDat;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; CboLayers.dataProvider=cnfgDat;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //getLayerInfo(configData);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; wdgMpMgr = new WidgetMapManager();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; wdgMpMgr.getLayerInfo(configData, map);&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; //set the expanded state of the toc&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; expanded = (configXML.tocSettings.expanded == "true")?true:false;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.map = map;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; mapLayerIds=map.layerIds; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeLayers = getBasemaps();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; toc.excludeGraphicsLayers = true;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; layerRepeater.dataProvider = getLayers();&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_info.png", titleLabel, showStateQueryAttributes);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_searchgraphical.png", graphicalsearchLabel, showStateGraphicalSearch);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "i_options.png", transparencyLabel, showStateOptions);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; wTemplate.addTitlebarButton(ICON_URL + "", visibilityLabel, showStateVisibility);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;private function getBasemaps():ArrayCollection&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var lyrObj:Object = null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var otherMaps:ArrayCollection = new ArrayCollection();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (var i:Number = 0; i &amp;lt; map.layerIds.length; i++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lyrObj = commonSearch(map.layerIds&lt;I&gt;);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; otherMaps.addItem(lyrObj);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return otherMaps;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private function commonSearch(lyr:Object):Object&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var tempLyr:Object = null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; for(var j:Number = 0; j &amp;lt; cnfgDat.length; j++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(lyr == cnfgDat&lt;J&gt;.label)&lt;/J&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tempLyr = lyr;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return tempLyr;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;private function getLayers():Array&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var cnfgMpCnt:Number = map.layerIds.length;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; var layerArray:Array = [];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; for(var i:Number=0; i &amp;lt; map.layerIds.length; i++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; for(var j:Number=0; j &amp;lt; cnfgDat.length; j++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; if(map.layerIds&lt;I&gt; == cnfgDat&lt;J&gt;.label)&lt;/J&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var layer:Layer = map.getLayer(map.layerIds&lt;I&gt;);&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(!(layer is GraphicsLayer))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layerArray.push(layer);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; return layerArray;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks &amp;amp; Regards.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-VM&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 Apr 2010 16:45:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/excluding-layerids-for-different-widgets/m-p/189854#M4424</guid>
      <dc:creator>VenkatM</dc:creator>
      <dc:date>2010-04-20T16:45:56Z</dc:date>
    </item>
  </channel>
</rss>

