<?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 Re: Save session state in ArcGIS API for Flex Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279578#M6630</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Daniel,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Try this code for that, maybe I got it all here:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
//This is code for MapManager.mxml

&amp;nbsp;&amp;nbsp; //config
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private function config(event:AppEvent):void
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; configData = event.data as ConfigData;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map = new Map();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.id = "map";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.zoomSliderVisible = false;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addEventListener(MapEvent.LOAD, mapLoadComplete);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.addChild(map);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SiteContainer.dispatchEvent(new AppEvent(AppEvent.MAP_LOADED, false, false, map));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var infoContainer:Canvas = new Canvas();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.percentWidth = 100;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.percentHeight = 100;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.horizontalScrollPolicy = "off";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.verticalScrollPolicy = "off";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.addChild(infoContainer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoPopup = new InfoPopup();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoPopup.map = map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.addChild(infoPopup);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; navToolbar = new Navigation();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; navToolbar.map = map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drawToolbar = new Draw();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drawToolbar.map = map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drawToolbar.addEventListener(DrawEvent.DRAW_END, onDrawEnd);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; getDefaultStatus();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var i:int = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; configData.configExtents.length; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var id:String = configData.configExtents&lt;I&gt;.id;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ext:String = configData.configExtents&lt;I&gt;.extent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var extArray:Array = ext.split(" ");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var extent:Extent = new Extent(Number(extArray[0]), Number(extArray[1]), Number(extArray[2]), Number(extArray[3]));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (id == "full")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fullExtent = extent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (id == "initial")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.extent = extent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; configData.configMap.length; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var label:String&amp;nbsp; = configData.configMap&lt;I&gt;.label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var type:String = configData.configMap&lt;I&gt;.type;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var url:String =&amp;nbsp; configData.configMap&lt;I&gt;.url;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var visible:Boolean = configData.configMap&lt;I&gt;.visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var alpha:Number = Number(configData.configMap&lt;I&gt;.alpha);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var style:String = configData.configMap&lt;I&gt;.style;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (type.toLowerCase())
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case "tiled":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var tiledlayer:ArcGISTiledMapServiceLayer = new ArcGISTiledMapServiceLayer(url);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.id = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.name = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.visible = visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.alpha = alpha;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(tiledlayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case "dynamic":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var dynlayer:ArcGISDynamicMapServiceLayer = new ArcGISDynamicMapServiceLayer(url);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.id = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.name = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.proxyURL = configData.proxy;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.visible = visible; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.alpha = alpha;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(dynlayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case "virtualearth":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var veTiledLayer:VETiledLayer =&amp;nbsp; new VETiledLayer();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.id = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.tokenURL = url;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.environment = "production";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.visible = visible; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.alpha = alpha;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.mapStyle = style;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.name = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(veTiledLayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.panArrowsVisible = false;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.zoomSliderVisible = true;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.logoVisible = true;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Alert.show("Do you want to load your last session state? This will restore the maps extent " +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "and the visiblity of the layers that were set in your last session." +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Do you want to load your previous session settings?", "Question", Alert.YES|Alert.NO, null, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alertClickHandler, expClass, Alert.YES);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private function alertClickHandler(event:CloseEvent):void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (event.detail==Alert.YES)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is where we are loading the state from the saved object&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; settingsSO = SharedObject.getLocal("MYSFV13SAVEDSETTINGS");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (settingsSO.size &amp;gt; 0) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; callLater(setExt,[settingsSO.data.extent]);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function setExt(obj:Object):void
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var mext:Extent = new Extent(obj.xmin, obj.ymin, obj.xmax,obj.ymax,map.spatialReference);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.extent = mext;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var acVisLayers:ArrayCollection = settingsSO.data.vislayers as ArrayCollection;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MapUtil.forEachMapLayer(map, function(layer:Layer):void {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var cLayId:int = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(var i:Number=0; i&amp;lt;acVisLayers.length -1;i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(acVisLayers&lt;I&gt;.name == layer.name)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cLayId = i;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var layVisAc:ArrayCollection;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (layer is ArcGISDynamicMapServiceLayer) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layer.visible = acVisLayers[cLayId].visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ArcGISDynamicMapServiceLayer(layer).visibleLayers = acVisLayers[cLayId].visarray;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else if (layer is ArcIMSMapServiceLayer) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layer.visible = acVisLayers[cLayId].visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ArcIMSMapServiceLayer(layer).visibleLayers = acVisLayers[cLayId].visarray;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else if (layer is ArcGISTiledMapServiceLayer) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layer.visible = acVisLayers[cLayId].visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 13:35:22 GMT</pubDate>
    <dc:creator>RobertScheitlin__GISP</dc:creator>
    <dc:date>2021-12-11T13:35:22Z</dc:date>
    <item>
      <title>Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279566#M6618</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm looking to modify the SFV to handle saving a users session state.&amp;nbsp; More specifically, I would like to be able to save what layers in the LiveMapsWidget are on, extent the map is at, etc....&amp;nbsp; So, when that user leaves the map, maybe a prompt asking if they would like to "save their settings".&amp;nbsp; Then, when they return, another prompt asking if they would like to "restore their settings" and everything is as it was, visible layers, extent, etc... something like that.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Has anyone implemented something like this?&amp;nbsp; Casey Bentz sent me some sample code (thanks Casey!) but it's not using the SFV and I'm having some difficulty getting this to work.&amp;nbsp; I believe this can be accomplished using SharedObjects but not exactly sure how to get it to work with the SFV.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I read at &lt;/SPAN&gt;&lt;A href="http://forums.esri.com/Thread.asp?c=158&amp;amp;f=2421&amp;amp;t=284721&amp;amp;mc=27#msgid883724"&gt;http://forums.esri.com/Thread.asp?c=158&amp;amp;f=2421&amp;amp;t=284721&amp;amp;mc=27#msgid883724&lt;/A&gt;&lt;SPAN&gt; that Robert Scheitlin has an implementation for this. Robert, any help would be great!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Apr 2010 18:23:46 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279566#M6618</guid>
      <dc:creator>DouglasGuess</dc:creator>
      <dc:date>2010-04-08T18:23:46Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279567#M6619</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Doug,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; This is far from complete but it saves the extent and all layers visibility when the SFV is closed and reloads those when the SFV opens. It uses the Flash Player shared objects. One of the big problems is that the LiveMapsWidget's TOC does not update based on programmatic changes to layers visibility. There are many things left to do like ask if the user wants to load the last state when the SFV opens.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Apr 2010 23:52:48 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279567#M6619</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2010-04-08T23:52:48Z</dc:date>
    </item>
    <item>
      <title>Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279568#M6620</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;&lt;SPAN&gt;Thanks Robert.&amp;nbsp; However, when I try to download the zip file, I get an error stating that the file is corrupt.&amp;nbsp; Would you mind posting another zip file?&amp;nbsp; Or, you could just email me the files (&lt;/SPAN&gt;&lt;A class="jive-link-email-small" href="mailto:dguess@lancaster.ne.gov"&gt;dguess@lancaster.ne.gov&lt;/A&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Apr 2010 00:55:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279568#M6620</guid>
      <dc:creator>DouglasGuess</dc:creator>
      <dc:date>2010-04-09T00:55:50Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279569#M6621</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I wanted this functionality in my customized FlexViewer 2.1, and thought I could try this code from Robert. I copied the changes that Robert made to the files, and pasted the into the corresponding places in my code and then step by step got rid of the errors (caused by using SFV 1.3 code in SFV 2.1).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Then I was actually surprised to see that it seems to be working fine; extent, turned on layers and even the check-boxes in my TOC.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I would also like to be able to save which widget that are open, does anyone know how to do that? I'm guessing the first thing I need to know is how to programatically identify which widget that are opened and closed and then programatically open widgets.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Jan 2011 09:21:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279569#M6621</guid>
      <dc:creator>MattiasEkström</dc:creator>
      <dc:date>2011-01-07T09:21:29Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279570#M6622</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Mattias,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; You need to do something along this line in the mapManager&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;for(var w:int=0; w&amp;lt;configData.widgetContainers.length; w++)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(var wig:int=0; wig&amp;lt;configData.widgetContainers&lt;W&gt;.widgets.length; wid++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var wgt:Object = configData.widgetContainers&lt;W&gt;.widgets[wid];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var preload:String&amp;nbsp; = wgt.preload;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var label:String&amp;nbsp;&amp;nbsp;&amp;nbsp; = wgt.label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var icon:String&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = wgt.icon;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var config:String&amp;nbsp;&amp;nbsp; = wgt.config;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var url:String&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = wgt.url;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var headless:String = wgt.headless;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/W&gt;&lt;/W&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:35:09 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279570#M6622</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2021-12-11T13:35:09Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279571#M6623</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Robert,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry for bringing up an old thread, but I'm trying to implement your code you provided in this thread to allow session state to be saved.&amp;nbsp; I've copied your changes to my index.mxml, mapmanager.mxml and index.html, compiled and copied the new index.html and index.swf to the website and the state is not being restored.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is the index.swf and index.html the only post-build files that will need to be copied over?&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What triggers the function to save the state at the sfv close (clicking on the web browser close button?).&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Apr 2011 18:56:02 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279571#M6623</guid>
      <dc:creator>DanielLewis</dc:creator>
      <dc:date>2011-04-01T18:56:02Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279572#M6624</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Daniel,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Yes it is the browser window closing that fires the save code. The below code is triggered from the index.html. So one of the first things to do is look for this line in the index.html that you are putting on the server. As far as which files need to be moved to the server I would think just the index.swf and index.html, but I normally just grab them all.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_macro_code jive_text_macro"&gt;window.onbeforeunload = clean_up;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 02 Apr 2011 12:29:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279572#M6624</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2011-04-02T12:29:49Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279573#M6625</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Daniel,&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; Yes it is the browser window closing that fires the save code. The below code is triggered from the index.html. So one of the first things to do is look for this line in the index.html that you are putting on the server. As far as which files need to be moved to the server I would think just the index.swf and index.html, but I normally just grab them all.&lt;BR /&gt;&lt;BR /&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_macro_code jive_text_macro"&gt;window.onbeforeunload = clean_up;&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Robert,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again for your help.&amp;nbsp; I'll give that a try and report back.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Also, can you tell me how to do the equivalent of a wscript.echo type statement so I can place that type of statement in the code and have it show a popup at that point so I can see if it is making it into specific routines for debugging/troubleshooting.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 02 Apr 2011 12:39:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279573#M6625</guid>
      <dc:creator>DanielLewis</dc:creator>
      <dc:date>2011-04-02T12:39:23Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279574#M6626</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Daniel,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; If you are talking about the javascript code than it is&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;alert('hello');&lt;/PRE&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; If you are talking the ActionScript code then it is &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import mx.controls.Alert;
Alert.show("Hello");
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:35:11 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279574#M6626</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2021-12-11T13:35:11Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279575#M6627</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Daniel,&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; Yes it is the browser window closing that fires the save code. The below code is triggered from the index.html. So one of the first things to do is look for this line in the index.html that you are putting on the server. As far as which files need to be moved to the server I would think just the index.swf and index.html, but I normally just grab them all.&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;window.onbeforeunload = clean_up;&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I confirmed that my indexl.html does have that line:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;lt;html lang="en"&amp;gt;
&amp;lt;!-- 
////////////////////////////////////////////////////////////////////////////////
//
// Copyright © 2008 - 2009 ESRI
//
// All rights reserved under the copyright laws of the United States.
// You may freely redistribute and use this software, with or
// without modification, provided you include the original copyright
// and use restrictions.&amp;nbsp; See use restrictions in the file:
// &amp;lt;install location&amp;gt;/FlexViewer/License.txt
//
////////////////////////////////////////////////////////////////////////////////
// --&amp;gt;

&amp;lt;head&amp;gt;
&amp;nbsp; &amp;lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&amp;gt;
&amp;nbsp; &amp;lt;meta name="keywords" content="ESRI, ArcGIS, Flex, Flex SDK, Viewer, GeoWeb"/&amp;gt;
&amp;nbsp; &amp;lt;meta name="description" content="Flex Viewer to demonstrate the best practice to develop GeoWeb application by leveraging the power of spatial technologies"/&amp;gt;
&amp;nbsp; &amp;lt;meta name="revised" content="version 1.0, Nov 14, 2008" /&amp;gt;
&amp;nbsp; 
&amp;nbsp; &amp;lt;title&amp;gt;Viewer&amp;lt;/title&amp;gt;

&amp;nbsp; &amp;lt;script src="AC_OETags.js" language="javascript"&amp;gt;&amp;lt;/script&amp;gt;

&amp;nbsp; &amp;lt;style&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; body { margin: 0px; overflow:hidden }
&amp;nbsp; &amp;lt;/style&amp;gt;
&amp;nbsp; 
&amp;lt;/head&amp;gt;



&amp;lt;body scroll='no'&amp;gt;
&amp;lt;script language="JavaScript" type="text/javascript"&amp;gt;
&amp;lt;!--
&amp;nbsp; AC_FL_RunContent(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "src", "index",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "width", "100%",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "height", "100%",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "align", "middle",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "id", "index",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "quality", "high",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "bgcolor", "#6e6e6e",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "name", "index",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "allowScriptAccess","sameDomain",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type", "application/x-shockwave-flash",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "pluginspage", "http://www.adobe.com/go/getflashplayer"
 );
// --&amp;gt;
&amp;lt;/script&amp;gt;


&amp;lt;!--New JavaScript function for State--&amp;gt;
&amp;lt;script language="JavaScript" type="text/javascript"&amp;gt;

 window.onbeforeunload = clean_up;

 function clean_up()
 {
&amp;nbsp; var flex = document.${application} || window.${application};
&amp;nbsp; flex.savesettings();
 }
&amp;lt;/SCRIPT&amp;gt;
&amp;lt;!--End New JavaScript function for State--&amp;gt;


&amp;lt;noscript&amp;gt;
 &amp;lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
&amp;nbsp;&amp;nbsp; id="index" width="100%" height="100%"
&amp;nbsp;&amp;nbsp; codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab"&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="movie" value="index.swf" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="quality" value="high" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="bgcolor" value="#6e6e6e" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="allowScriptAccess" value="sameDomain" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;embed src="index.swf" quality="high" bgcolor="#6e6e6e"
&amp;nbsp;&amp;nbsp;&amp;nbsp; width="100%" height="100%" name="index" align="middle"
&amp;nbsp;&amp;nbsp;&amp;nbsp; play="true"
&amp;nbsp;&amp;nbsp;&amp;nbsp; loop="false"
&amp;nbsp;&amp;nbsp;&amp;nbsp; quality="high"
&amp;nbsp;&amp;nbsp;&amp;nbsp; allowScriptAccess="sameDomain"
&amp;nbsp;&amp;nbsp;&amp;nbsp; type="application/x-shockwave-flash"
&amp;nbsp;&amp;nbsp;&amp;nbsp; pluginspage="http://www.adobe.com/go/getflashplayer"&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;/embed&amp;gt;
 &amp;lt;/object&amp;gt;
&amp;lt;/noscript&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;And, I've double-checked to make sure that all of the changes you listed in your files are in mine.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:35:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279575#M6627</guid>
      <dc:creator>DanielLewis</dc:creator>
      <dc:date>2021-12-11T13:35:14Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279576#M6628</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Daniel,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; I tested this again and low and behold it was not working, so I dug in and guess there is some syntax errors in the JavaScript portion so try replacing your index.template.html with this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;lt;!-- saved from url=(0014)about:internet --&amp;gt;
&amp;lt;html lang="en"&amp;gt;

&amp;lt;!-- 
Smart developers always View Source. 

This application was built using Adobe Flex, an open source framework
for building rich Internet applications that get delivered via the
Flash Player or to desktops via Adobe AIR. 

Learn more about Flex at http://flex.org 
// --&amp;gt;

&amp;lt;head&amp;gt;
&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&amp;gt;
&amp;lt;title&amp;gt;${title}&amp;lt;/title&amp;gt;
&amp;lt;script src="AC_OETags.js" language="javascript"&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;style&amp;gt;
body { margin: 0px; overflow:hidden }
&amp;lt;/style&amp;gt;
&amp;lt;/head&amp;gt;

&amp;lt;body scroll='no'&amp;gt;
&amp;lt;script language="JavaScript" type="text/javascript"&amp;gt;
&amp;lt;!--
&amp;nbsp; AC_FL_RunContent(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "src", "${swf}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "width", "${width}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "height", "${height}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "align", "middle",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "id", "${application}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "quality", "high",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "bgcolor", "${bgcolor}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "name", "${application}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "allowScriptAccess","sameDomain",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type", "application/x-shockwave-flash",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "pluginspage", "http://www.adobe.com/go/getflashplayer"
 );
// --&amp;gt;
&amp;lt;/script&amp;gt;
&amp;lt;script language="JavaScript" type="text/javascript"&amp;gt;
 window.onbeforeunload = clean_up;

 function clean_up()
 {
&amp;nbsp; var flex = document.${application} || window.${application};
&amp;nbsp; flex.savesettings();
 }
&amp;lt;/script&amp;gt;
&amp;lt;noscript&amp;gt;
 &amp;lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
&amp;nbsp;&amp;nbsp; id="${application}" width="${width}" height="${height}"
&amp;nbsp;&amp;nbsp; codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab"&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="movie" value="${swf}.swf" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="quality" value="high" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="bgcolor" value="${bgcolor}" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="allowScriptAccess" value="sameDomain" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;embed src="${swf}.swf" quality="high" bgcolor="${bgcolor}"
&amp;nbsp;&amp;nbsp;&amp;nbsp; width="${width}" height="${height}" name="${application}" align="middle"
&amp;nbsp;&amp;nbsp;&amp;nbsp; play="true"
&amp;nbsp;&amp;nbsp;&amp;nbsp; loop="false"
&amp;nbsp;&amp;nbsp;&amp;nbsp; quality="high"
&amp;nbsp;&amp;nbsp;&amp;nbsp; allowScriptAccess="sameDomain"
&amp;nbsp;&amp;nbsp;&amp;nbsp; type="application/x-shockwave-flash"
&amp;nbsp;&amp;nbsp;&amp;nbsp; pluginspage="http://www.adobe.com/go/getflashplayer"&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;/embed&amp;gt;
 &amp;lt;/object&amp;gt;
&amp;lt;/noscript&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:35:17 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279576#M6628</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2021-12-11T13:35:17Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279577#M6629</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Daniel,&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; I tested this again and low and behold it was not working, so I dug in and guess there is some syntax errors in the JavaScript portion so try replacing your index.template.html with this:&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;lt;!-- saved from url=(0014)about:internet --&amp;gt;
&amp;lt;html lang="en"&amp;gt;

&amp;lt;!-- 
Smart developers always View Source. 

This application was built using Adobe Flex, an open source framework
for building rich Internet applications that get delivered via the
Flash Player or to desktops via Adobe AIR. 

Learn more about Flex at http://flex.org 
// --&amp;gt;

&amp;lt;head&amp;gt;
&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&amp;gt;
&amp;lt;title&amp;gt;${title}&amp;lt;/title&amp;gt;
&amp;lt;script src="AC_OETags.js" language="javascript"&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;style&amp;gt;
body { margin: 0px; overflow:hidden }
&amp;lt;/style&amp;gt;
&amp;lt;/head&amp;gt;

&amp;lt;body scroll='no'&amp;gt;
&amp;lt;script language="JavaScript" type="text/javascript"&amp;gt;
&amp;lt;!--
&amp;nbsp; AC_FL_RunContent(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "src", "${swf}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "width", "${width}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "height", "${height}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "align", "middle",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "id", "${application}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "quality", "high",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "bgcolor", "${bgcolor}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "name", "${application}",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "allowScriptAccess","sameDomain",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type", "application/x-shockwave-flash",
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "pluginspage", "http://www.adobe.com/go/getflashplayer"
 );
// --&amp;gt;
&amp;lt;/script&amp;gt;
&amp;lt;script language="JavaScript" type="text/javascript"&amp;gt;
 window.onbeforeunload = clean_up;

 function clean_up()
 {
&amp;nbsp; var flex = document.${application} || window.${application};
&amp;nbsp; flex.savesettings();
 }
&amp;lt;/script&amp;gt;
&amp;lt;noscript&amp;gt;
 &amp;lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
&amp;nbsp;&amp;nbsp; id="${application}" width="${width}" height="${height}"
&amp;nbsp;&amp;nbsp; codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab"&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="movie" value="${swf}.swf" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="quality" value="high" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="bgcolor" value="${bgcolor}" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;param name="allowScriptAccess" value="sameDomain" /&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;embed src="${swf}.swf" quality="high" bgcolor="${bgcolor}"
&amp;nbsp;&amp;nbsp;&amp;nbsp; width="${width}" height="${height}" name="${application}" align="middle"
&amp;nbsp;&amp;nbsp;&amp;nbsp; play="true"
&amp;nbsp;&amp;nbsp;&amp;nbsp; loop="false"
&amp;nbsp;&amp;nbsp;&amp;nbsp; quality="high"
&amp;nbsp;&amp;nbsp;&amp;nbsp; allowScriptAccess="sameDomain"
&amp;nbsp;&amp;nbsp;&amp;nbsp; type="application/x-shockwave-flash"
&amp;nbsp;&amp;nbsp;&amp;nbsp; pluginspage="http://www.adobe.com/go/getflashplayer"&amp;gt;
&amp;nbsp;&amp;nbsp; &amp;lt;/embed&amp;gt;
 &amp;lt;/object&amp;gt;
&amp;lt;/noscript&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Robert,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks, that worked.&amp;nbsp; Are the variables in the index.html (i.e. ${application}) supposed to be picked up from another file?&amp;nbsp; I have to go through and change them to the application title, file name, etc. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now I'm going to try to add a popup to ask the user if they want to restore the state or take the default.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:35:19 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279577#M6629</guid>
      <dc:creator>DanielLewis</dc:creator>
      <dc:date>2021-12-11T13:35:19Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279578#M6630</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Daniel,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Try this code for that, maybe I got it all here:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
//This is code for MapManager.mxml

&amp;nbsp;&amp;nbsp; //config
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private function config(event:AppEvent):void
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; configData = event.data as ConfigData;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map = new Map();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.id = "map";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.zoomSliderVisible = false;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addEventListener(MapEvent.LOAD, mapLoadComplete);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.addChild(map);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SiteContainer.dispatchEvent(new AppEvent(AppEvent.MAP_LOADED, false, false, map));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var infoContainer:Canvas = new Canvas();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.percentWidth = 100;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.percentHeight = 100;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.horizontalScrollPolicy = "off";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.verticalScrollPolicy = "off";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.addChild(infoContainer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoPopup = new InfoPopup();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoPopup.map = map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infoContainer.addChild(infoPopup);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; navToolbar = new Navigation();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; navToolbar.map = map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drawToolbar = new Draw();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drawToolbar.map = map;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drawToolbar.addEventListener(DrawEvent.DRAW_END, onDrawEnd);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; getDefaultStatus();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var i:int = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; configData.configExtents.length; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var id:String = configData.configExtents&lt;I&gt;.id;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ext:String = configData.configExtents&lt;I&gt;.extent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var extArray:Array = ext.split(" ");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var extent:Extent = new Extent(Number(extArray[0]), Number(extArray[1]), Number(extArray[2]), Number(extArray[3]));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (id == "full")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fullExtent = extent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (id == "initial")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.extent = extent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; configData.configMap.length; i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var label:String&amp;nbsp; = configData.configMap&lt;I&gt;.label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var type:String = configData.configMap&lt;I&gt;.type;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var url:String =&amp;nbsp; configData.configMap&lt;I&gt;.url;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var visible:Boolean = configData.configMap&lt;I&gt;.visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var alpha:Number = Number(configData.configMap&lt;I&gt;.alpha);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var style:String = configData.configMap&lt;I&gt;.style;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (type.toLowerCase())
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case "tiled":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var tiledlayer:ArcGISTiledMapServiceLayer = new ArcGISTiledMapServiceLayer(url);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.id = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.name = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.visible = visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tiledlayer.alpha = alpha;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(tiledlayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case "dynamic":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var dynlayer:ArcGISDynamicMapServiceLayer = new ArcGISDynamicMapServiceLayer(url);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.id = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.name = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.proxyURL = configData.proxy;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.visible = visible; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dynlayer.alpha = alpha;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(dynlayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case "virtualearth":
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var veTiledLayer:VETiledLayer =&amp;nbsp; new VETiledLayer();
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.id = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.tokenURL = url;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.environment = "production";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.visible = visible; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.alpha = alpha;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.mapStyle = style;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; veTiledLayer.name = label;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.addLayer(veTiledLayer);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.panArrowsVisible = false;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.zoomSliderVisible = true;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.logoVisible = true;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Alert.show("Do you want to load your last session state? This will restore the maps extent " +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "and the visiblity of the layers that were set in your last session." +
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Do you want to load your previous session settings?", "Question", Alert.YES|Alert.NO, null, 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alertClickHandler, expClass, Alert.YES);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private function alertClickHandler(event:CloseEvent):void
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; if (event.detail==Alert.YES)
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is where we are loading the state from the saved object&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; settingsSO = SharedObject.getLocal("MYSFV13SAVEDSETTINGS");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (settingsSO.size &amp;gt; 0) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; callLater(setExt,[settingsSO.data.extent]);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function setExt(obj:Object):void
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var mext:Extent = new Extent(obj.xmin, obj.ymin, obj.xmax,obj.ymax,map.spatialReference);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.extent = mext;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var acVisLayers:ArrayCollection = settingsSO.data.vislayers as ArrayCollection;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MapUtil.forEachMapLayer(map, function(layer:Layer):void {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var cLayId:int = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(var i:Number=0; i&amp;lt;acVisLayers.length -1;i++)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(acVisLayers&lt;I&gt;.name == layer.name)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cLayId = i;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var layVisAc:ArrayCollection;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (layer is ArcGISDynamicMapServiceLayer) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layer.visible = acVisLayers[cLayId].visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ArcGISDynamicMapServiceLayer(layer).visibleLayers = acVisLayers[cLayId].visarray;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else if (layer is ArcIMSMapServiceLayer) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layer.visible = acVisLayers[cLayId].visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ArcIMSMapServiceLayer(layer).visibleLayers = acVisLayers[cLayId].visarray;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else if (layer is ArcGISTiledMapServiceLayer) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layer.visible = acVisLayers[cLayId].visible;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:35:22 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279578#M6630</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2021-12-11T13:35:22Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279579#M6631</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Robert,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This has been a cool addition to my website but I did notice something unusual with group layers. The checkbox for the group layer is not checked even though I had selected it in the previous session; however, the visible layers under the group layer are visible on the map.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Apr 2011 15:04:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279579#M6631</guid>
      <dc:creator>JamesKo</dc:creator>
      <dc:date>2011-04-04T15:04:35Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279580#M6632</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;James,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; This has always been an issue with the toc component, it does not update to programmatic changes to a layers visibility...&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Apr 2011 17:43:43 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279580#M6632</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2011-04-04T17:43:43Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279581#M6633</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Robert!&amp;nbsp; Is this code available in the Code Gallery for ArcGIS API for Flex?&amp;nbsp; What Flex &amp;amp; ArcGIS Server versions are compatible with the code?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for all your great work!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Ashley&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 14 Feb 2012 19:22:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279581#M6633</guid>
      <dc:creator>AshleyOwens</dc:creator>
      <dc:date>2012-02-14T19:22:50Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279582#M6634</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Ashley,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; No this is just a code sample to get developers started. It is nearly two years old and I don't even remember what version I developed this for.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 14 Feb 2012 19:33:39 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279582#M6634</guid>
      <dc:creator>RobertScheitlin__GISP</dc:creator>
      <dc:date>2012-02-14T19:33:39Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279583#M6635</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am able to save widget information (state, width, height, x/y position), but am having trouble setting these values on the widgets when the app loads the next time.&amp;nbsp; There is one exception: if the widget is set to preload in the config XML, it is loaded into the WidgetManager and I can retrieve it and set the values - &lt;/SPAN&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;var wgt:IBaseWidget = ViewerContainer.getInstance().widgetManager.getWidget(Number(acWidgets&lt;I&gt;.id),false);
wgt.setState(wgtObj.state);
if(wgt.getState() != WidgetStates.WIDGET_MINIMIZED)
{
 wgt.initialWidth = wgtObj.width;
 wgt.initialHeight = wgtObj.height;
}
wgt.setXYPosition(Number(acWidgets&lt;I&gt;.x),Number(acWidgets&lt;I&gt;.y));
wgt.setPreload(wgt.getState());&lt;/I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/PRE&gt;&lt;SPAN&gt; How can other widgets be accessed into an IBaseWidget object? I have tried several things such as retrieving from ModuleInfo - &lt;/SPAN&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;wgt = moduleInfo.factory.create() as IBaseWidget;&lt;/PRE&gt;&lt;SPAN&gt; I haven't found anything that works. Thanks for any insight!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 13:35:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279583#M6635</guid>
      <dc:creator>AshleyOwens</dc:creator>
      <dc:date>2021-12-11T13:35:24Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279584#M6636</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Ashley I am trying to do the same thing with the widgets but haven't made it as far as you. How did you access the widget width, height, and x/y position? Thanks!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Nov 2012 00:49:46 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279584#M6636</guid>
      <dc:creator>JessicaCondron</dc:creator>
      <dc:date>2012-11-16T00:49:46Z</dc:date>
    </item>
    <item>
      <title>Re: Save session state</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279585#M6637</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Jessica,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am using a shared object in each widget to retain its state, to access the properties of the widget, I have used the following:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;this.x --- x position of wid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; this.y --- y position of widget&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; this.wTemplate.width --- width of widget&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; this.wTemplate.height --- height of widget&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Hope this helps&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Anthony&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Nov 2012 05:36:13 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/save-session-state/m-p/279585#M6637</guid>
      <dc:creator>AnthonyGiles</dc:creator>
      <dc:date>2012-11-16T05:36:13Z</dc:date>
    </item>
  </channel>
</rss>

