Index: lams_central/web/lams_authoring.swf =================================================================== diff -u -r6ccf5c57dc5e2767cf496580f29215beffb8648d -r029e69643ff0fb567d2d53ef9e63ba4bd035e50b Binary files differ Index: lams_central/web/lams_authoring_library.swf =================================================================== diff -u -r6ccf5c57dc5e2767cf496580f29215beffb8648d -r029e69643ff0fb567d2d53ef9e63ba4bd035e50b Binary files differ Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/BranchingActivity.as =================================================================== diff -u -r24a933e2927a758498ae27341b19baeb90ca0db3 -r029e69643ff0fb567d2d53ef9e63ba4bd035e50b --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/BranchingActivity.as (.../BranchingActivity.as) (revision 24a933e2927a758498ae27341b19baeb90ca0db3) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/BranchingActivity.as (.../BranchingActivity.as) (revision 029e69643ff0fb567d2d53ef9e63ba4bd035e50b) @@ -22,6 +22,7 @@ */ import org.lamsfoundation.lams.authoring.*; +import org.lamsfoundation.lams.common.util.Debugger; /* * * @author Mitchell Seaton @@ -71,6 +72,7 @@ _endXCoord = dto.endXCoord; _endYCoord = dto.endYCoord; _toolActivityUIID = dto.toolActivityUIID; + } /** @@ -87,6 +89,7 @@ if(_endXCoord) dto.endXCoord = _endXCoord; if(_endYCoord) dto.endYCoord = _endYCoord; if(_toolActivityUIID) dto.toolActivityUIID = _toolActivityUIID; + if(_defaultBranch) dto.defaultActivityUIID = _defaultBranch.sequenceActivity.activityUIID; return dto; Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/ToolOutputCondition.as =================================================================== diff -u -rcd33f92df2c46dfe2e817281d501e179a6094637 -r029e69643ff0fb567d2d53ef9e63ba4bd035e50b --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/ToolOutputCondition.as (.../ToolOutputCondition.as) (revision cd33f92df2c46dfe2e817281d501e179a6094637) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/ToolOutputCondition.as (.../ToolOutputCondition.as) (revision 029e69643ff0fb567d2d53ef9e63ba4bd035e50b) @@ -23,6 +23,7 @@ import org.lamsfoundation.lams.authoring.*; import org.lamsfoundation.lams.common.Config; +import org.lamsfoundation.lams.common.util.Debugger; /** * @@ -116,9 +117,13 @@ if(_display_name) dto.displayName = _display_name; if(_type) dto.type = _type; - dto.startValue = (_startValue) ? _startValue : Config.STRING_NULL_VALUE; - dto.endValue = (_endValue) ? _endValue : Config.STRING_NULL_VALUE; - dto.exactMatchValue = (_exactMatchValue) ? _exactMatchValue : Config.STRING_NULL_VALUE; + Debugger.log("start value: " + _startValue, Debugger.CRITICAL, "toData", "ToolOutputCondition"); + Debugger.log("end value: " + _endValue, Debugger.CRITICAL, "toData", "ToolOutputCondition"); + Debugger.log("exact value: " + _exactMatchValue, Debugger.CRITICAL, "toData", "ToolOutputCondition"); + + dto.startValue = (_startValue != null || _startValue instanceof Number) ? _startValue : Config.STRING_NULL_VALUE; + dto.endValue = (_endValue != null || _startValue instanceof Number) ? _endValue : Config.STRING_NULL_VALUE; + dto.exactMatchValue = (_exactMatchValue != null || _startValue instanceof Number) ? _exactMatchValue : Config.STRING_NULL_VALUE; return dto; } Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/br/CanvasBranchView.as =================================================================== diff -u -r9cff9ef484b8a878642260d5417f1bb407c7f281 -r029e69643ff0fb567d2d53ef9e63ba4bd035e50b --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/br/CanvasBranchView.as (.../CanvasBranchView.as) (revision 9cff9ef484b8a878642260d5417f1bb407c7f281) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/br/CanvasBranchView.as (.../CanvasBranchView.as) (revision 029e69643ff0fb567d2d53ef9e63ba4bd035e50b) @@ -242,11 +242,14 @@ Debugger.log("Sequence Activities length: " + sequenceActs.length, Debugger.CRITICAL, "loadSequenceActivities", "CanvasBranchView"); for(var i=0; i= condition.startValue && start_value <= condition.endValue) { @@ -396,14 +402,27 @@ private function itemChanged(evt:Object):Void { Debugger.log("type: " + _selectedDefinition.type, Debugger.CRITICAL, "itemChanged", "ToolOutputConditionsDialog"); + Debugger.log("index: " + _toolOutputDefin_cmb.selectedIndex, Debugger.CRITICAL, "itemChanged", "ToolOutputConditionsDialog"); + if(_selectedIndex == _toolOutputDefin_cmb.selectedIndex) + return; + + if(app.getCanvas().ddm.hasBranchMappingsForConditionSet(_condition_item_dgd.dataProvider) && evt != null) + LFMessage.showMessageConfirm(Dictionary.getValue("branch_mapping_dlg_condition_linked_msg", [Dictionary.getValue("branch_mapping_dlg_condition_linked_all")]), Proxy.create(this, removeAllItems, true), Proxy.create(this, returnDefinitionState), Dictionary.getValue("al_continue"), null); + else if(evt != null) removeAllItems(true); + else selectDefinition(); + + } + + private function selectDefinition():Void { var ddm = app.getCanvas().ddm; + _selectedDefinition = _toolOutputDefin_cmb.dataProvider[_toolOutputDefin_cmb.selectedIndex]; + Debugger.log("select definition: " + _selectedDefinition.description, Debugger.CRITICAL, "selectDefinition", "ToolOutputConditionsDialog"); switch(_selectedDefinition.type) { case ToolOutputDefinition.LONG: - if(evt != null) removeAllItems(); - + _start_value_stp.visible = true; _end_value_stp.visible = !_opt_greaterThan_cb.value; @@ -444,19 +463,31 @@ _condition_from_lbl.visible = false; _condition_to_lbl.visible = false; - // add default conditions for boolean output type - if(evt != null) { - removeAllItems(); + if(_condition_item_dgd.dataProvider.length <= 0) { addCondition(ToolOutputCondition.createBoolCondition(ddm.newUIID(), _selectedDefinition, true)); addCondition(ToolOutputCondition.createBoolCondition(ddm.newUIID(), _selectedDefinition, false)); } + break; default: Debugger.log("type not found", Debugger.GEN, "itemChanged", "ToolOutputConditionsDialog"); + } - + + _selectedIndex = _toolOutputDefin_cmb.selectedIndex; + } + private function returnDefinitionState() { + Debugger.log("_selectedIndex: " + _selectedIndex, Debugger.CRITICAL, "returnDefinitionState", "ToolOutputConditionsDialog"); + //_toolOutputDefin_cmb.selectedItem = _toolOutputDefin_cmb.getItemAt(_selectedIndex); + _toolOutputDefin_cmb.selectedIndex = _selectedIndex; + _selectedDefinition = _toolOutputDefin_cmb.dataProvider[_selectedIndex]; + + Debugger.log("_selectedItem: " + _toolOutputDefin_cmb.selectedItem, Debugger.CRITICAL, "returnDefinitionState", "ToolOutputConditionsDialog"); + + } + private function itemEdited(evt:Object):Void { var item = _condition_item_dgd.getItemAt(evt.itemIndex); var condition:ToolOutputCondition = ToolOutputCondition(item.data); Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasHelper.as =================================================================== diff -u -r9cff9ef484b8a878642260d5417f1bb407c7f281 -r029e69643ff0fb567d2d53ef9e63ba4bd035e50b --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasHelper.as (.../CanvasHelper.as) (revision 9cff9ef484b8a878642260d5417f1bb407c7f281) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasHelper.as (.../CanvasHelper.as) (revision 029e69643ff0fb567d2d53ef9e63ba4bd035e50b) @@ -173,14 +173,16 @@ //as its a new instance of the ddm,need to add the listener again _ddm.addEventListener('ddmUpdate',Proxy.create(this,onDDMUpdated)); _ddm.addEventListener('ddmBeforeUpdate',Proxy.create(this,onDDMBeforeUpdate)); + checkValidDesign(); checkReadOnlyDesign(); if(canvasModel.activeView instanceof CanvasBranchView) { canvasModel.activeView.removeMovieClip(); closeBranchView(); - } + } + canvasModel.selectedItem = null; canvasModel.setDirty(); createContentFolder(); Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasModel.as =================================================================== diff -u -r9cff9ef484b8a878642260d5417f1bb407c7f281 -r029e69643ff0fb567d2d53ef9e63ba4bd035e50b --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasModel.as (.../CanvasModel.as) (revision 9cff9ef484b8a878642260d5417f1bb407c7f281) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasModel.as (.../CanvasModel.as) (revision 029e69643ff0fb567d2d53ef9e63ba4bd035e50b) @@ -597,7 +597,7 @@ } } - public function addNewBranch(sequence:SequenceActivity, branchingActivity:Activity):Void { + public function addNewBranch(sequence:SequenceActivity, branchingActivity:BranchingActivity, isDefault:Boolean):Void { if(sequence.firstActivityUIID != null) { var b:Branch = new Branch(_cv.ddm.newUIID(), BranchConnector.DIR_FROM_START, _cv.ddm.getActivityByUIID(sequence.firstActivityUIID).activityUIID, branchingActivity.activityUIID, sequence, _cv.ddm.learningDesignID); @@ -609,6 +609,9 @@ _cv.ddm.addBranch(b); } + + if(isDefault) + branchingActivity.defaultBranch = b; } setDirty();