Index: lams_central/web/lams_authoring.swf =================================================================== diff -u -r6b04e69c42c1f73e069ecb5a735ff97c9f50a0a1 -ra9608549c199d2aae45ee7729e4536f6545afe94 Binary files differ Index: lams_central/web/lams_authoring_library.swf =================================================================== diff -u -r6b04e69c42c1f73e069ecb5a735ff97c9f50a0a1 -ra9608549c199d2aae45ee7729e4536f6545afe94 Binary files differ Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasHelper.as =================================================================== diff -u -r29e9fbba3cd3b61650ccec4fd7601b72d5bc747b -ra9608549c199d2aae45ee7729e4536f6545afe94 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasHelper.as (.../CanvasHelper.as) (revision 29e9fbba3cd3b61650ccec4fd7601b72d5bc747b) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasHelper.as (.../CanvasHelper.as) (revision a9608549c199d2aae45ee7729e4536f6545afe94) @@ -684,12 +684,13 @@ } private function setNewContentFolderID(o:Object) { + app.toolkit.model.broadcastLibraryUpdate(); + if(o instanceof LFError){ o.showMessageConfirm(); }else{ if(StringUtils.isNull(_ddm.contentFolderID)) { _ddm.contentFolderID = String(o); } } - } /** Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/Toolkit.as =================================================================== diff -u -r9bc73561a0c171b8ccb96fc0149a887fa9e147ef -ra9608549c199d2aae45ee7729e4536f6545afe94 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/Toolkit.as (.../Toolkit.as) (revision 9bc73561a0c171b8ccb96fc0149a887fa9e147ef) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/Toolkit.as (.../Toolkit.as) (revision a9608549c199d2aae45ee7729e4536f6545afe94) @@ -51,7 +51,7 @@ mx.events.EventDispatcher.initialize(this); //Create the model - toolkitModel = new ToolkitModel(); + toolkitModel = new ToolkitModel(this); //Create the view toolkitView_mc = target_mc.createChildAtDepth("toolkitView",DepthManager.kTop); @@ -307,6 +307,10 @@ public function get view():MovieClip{ return toolkitView; } + + public function get model():ToolkitModel { + return toolkitModel; + } function get className():String { return 'Toolkit'; Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/ToolkitModel.as =================================================================== diff -u -rd7823922f404944822957e6c051bc0f1335a76de -ra9608549c199d2aae45ee7729e4536f6545afe94 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/ToolkitModel.as (.../ToolkitModel.as) (revision d7823922f404944822957e6c051bc0f1335a76de) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/ToolkitModel.as (.../ToolkitModel.as) (revision a9608549c199d2aae45ee7729e4536f6545afe94) @@ -39,6 +39,8 @@ private var _isDirty:Boolean; private var infoObj:Object; + private var toolkit:Toolkit; + /** * View state data */ @@ -51,13 +53,15 @@ * Currently (1.1) there is only ever one. */ private var _toolkitLearningLibraries:Hashtable; - + private var _dispatchEvent:Boolean; /** * Constructor. */ - public function ToolkitModel(){ + public function ToolkitModel(_toolkit:Toolkit){ Debugger.log('Running',4,'Constructor','ToolkitModel'); _toolkitLearningLibraries = new Hashtable(); + toolkit = _toolkit; + _dispatchEvent = false; } /** @@ -81,22 +85,42 @@ for(var i=0; i 0) { + //SET A DIRTY FLAG + setChanged(); + //notify the view there has been a change + infoObj = {}; + infoObj.updateType = "LIBRARIES_UPDATED"; + //notify observer's this is "this" as if by magic + + notifyObservers(infoObj); + } + else { + _dispatchEvent = true; + toolkit.getToolkitLibraries(); + } } /** Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/ToolkitView.as =================================================================== diff -u -reaa9b5ca1c61bf87f01ef2edbb3362a1b1a85115 -ra9608549c199d2aae45ee7729e4536f6545afe94 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/ToolkitView.as (.../ToolkitView.as) (revision eaa9b5ca1c61bf87f01ef2edbb3362a1b1a85115) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/tk/ToolkitView.as (.../ToolkitView.as) (revision a9608549c199d2aae45ee7729e4536f6545afe94) @@ -63,6 +63,8 @@ private var _dragging:Boolean; private var _scrollPanelWidthDiff:Number; //Difference in width between scrollpane and panel + private var _toolkitLoaded:Boolean; + //These are defined so that the compiler can 'see' the events that are added at runtime by EventDispatcher private var dispatchEvent:Function; public var addEventListener:Function; @@ -77,7 +79,8 @@ _tm = ThemeManager.getInstance(); _dictionary = Dictionary.getInstance(); _tip = new ToolTip(); - _dictionary.addEventListener('init',Proxy.create(this,setupLabels)); + _dictionary.addEventListener('init',Proxy.create(this,setupLabels)); + _toolkitLoaded = false; //Debugger.log('Running',4,'Constructor','ToolkitView'); } @@ -234,15 +237,16 @@ * @param o The model object that is broadcasting an update. */ private function updateLibraries(o:Observable){ - //Debugger.log('Running',4,'updateLibraries','ToolkitView'); + Debugger.log('Running:: toolkitLoaded: ' + _toolkitLoaded, Debugger.CRITICAL, 'updateLibraries', 'ToolkitView'); + if(_toolkitLoaded) return; var yPos:Number = 0; //set SP the content path: toolkitLibraries_sp.contentPath = "empty_mc"; var tkv = ToolkitView(this); - var tkm = ToolkitModel(o); + var tkm:ToolkitModel = getModel(); //get the hashtable var myLibs:Hashtable = tkm.getToolkitLibraries(); @@ -268,6 +272,8 @@ } + + _toolkitLoaded = true; //toolkitLibraries_sp.refreshPane(); Index: lams_flash/src/common/flash/org/lamsfoundation/lams/common/layout/LFLayoutManager.as =================================================================== diff -u -rd7823922f404944822957e6c051bc0f1335a76de -ra9608549c199d2aae45ee7729e4536f6545afe94 --- lams_flash/src/common/flash/org/lamsfoundation/lams/common/layout/LFLayoutManager.as (.../LFLayoutManager.as) (revision d7823922f404944822957e6c051bc0f1335a76de) +++ lams_flash/src/common/flash/org/lamsfoundation/lams/common/layout/LFLayoutManager.as (.../LFLayoutManager.as) (revision a9608549c199d2aae45ee7729e4536f6545afe94) @@ -101,7 +101,7 @@ } public function setEmptyLayoutItem(a:LFLayoutItem) { - Debugger.log("Adding Layout Item: " + a.componentName, Debugger.GEN, "addLayoutItem", "LFLayoutManager"); + Debugger.log("Adding Layout Item: " + a.componentName, Debugger.GEN, "setEmptyLayoutItem", "LFLayoutManager"); _layoutItems.put(a.componentName, null); }