>>> REFACTOR: really horrible way of getting both map and connection map = Globals.vars.root; conn = map.editableLayer.connection; conn.addEventListener(Connection.TRACES_LOADED, onTracesLoaded); SaveManager.ensureAccess(fetchList, conn); } private function myGpxDialog_close(evt:CloseEvent):void { PopUpManager.removePopUp(this); conn.removeEventListener(Connection.TRACES_LOADED, onTracesLoaded); } private function fetchList(refresh:Boolean=false):void { results.text = "Fetching Traces..."; conn.fetchUserTraces(refresh); } private function onTracesLoaded(e:Event):void { results.text = "Traces Loaded"; dispatchEvent(new Event("traces_loaded")); } [Bindable(event="traces_loaded")] private function get traces():Array { return conn.getTraces(); } public function loadFile(t:Trace):void { t.addToMap(); } public function filesLoaded(success:Boolean,message:String=null):void { if (success) { dispatchEvent(new Event("layers_changed")); } else { Alert.show(message, 'Error', mx.controls.Alert.OK); } } ]]>