Index: lams_central/web/lams_authoring.swf =================================================================== diff -u -rcea845b43eaed95e5e8109a216be04c462f190a4 -r0379c3c050496e1bd6fc6406ae13221ff11bc937 Binary files differ Index: lams_central/web/lams_authoring_library.swf =================================================================== diff -u -rcea845b43eaed95e5e8109a216be04c462f190a4 -r0379c3c050496e1bd6fc6406ae13221ff11bc937 Binary files differ Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasController.as =================================================================== diff -u -rcea845b43eaed95e5e8109a216be04c462f190a4 -r0379c3c050496e1bd6fc6406ae13221ff11bc937 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasController.as (.../CanvasController.as) (revision cea845b43eaed95e5e8109a216be04c462f190a4) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasController.as (.../CanvasController.as) (revision 0379c3c050496e1bd6fc6406ae13221ff11bc937) @@ -144,7 +144,10 @@ if (ca.activity.parentUIID == optionalOnCanvas[i].activity.activityUIID){ if (optionalOnCanvas[i].locked == false){ - if (ca._x > 142 || ca._x < -129 || ca._y < -55 || ca._y > optionalOnCanvas[i].getpanelHeight){ + if (ca._x > 142 || + ca._x < -129 || + ca._y < -55 || + ca._y > optionalOnCanvas[i].panelHeight) { //give it the new co-ords and 'drop' it ca.activity.xCoord = (_xmouse - _canvasModel.getPosition().x) - (_canvasModel.getCanvas().taWidth/2); ca.activity.yCoord = (_ymouse - _canvasModel.getPosition().y) - (_canvasModel.getCanvas().taHeight/2); @@ -162,6 +165,7 @@ for (var i=0; i optionalOnCanvas[i].getVisibleWidth() || + ca._x < -ca.getVisibleWidth() || + ca._y < -ca.getVisibleHeight() - sequenceActivity.yCoord || + ca._y > optionalOnCanvas[i].getVisibleHeight() - sequenceActivity.yCoord) { + + ca.activity.xCoord = (_xmouse - _canvasModel.getPosition().x) - (_canvasModel.getCanvas().taWidth/2); + ca.activity.yCoord = (_ymouse - _canvasModel.getPosition().y) - (_canvasModel.getCanvas().taHeight/2); + + _canvasModel.removeOptionalSequenceCA(ca, optionalOnCanvas[i].activity.activityUIID); + + } else { + activitySnapBack(ca); + } + + } } Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasModel.as =================================================================== diff -u -r72685d659861b2cc84b109799cc20738ae839fad -r0379c3c050496e1bd6fc6406ae13221ff11bc937 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasModel.as (.../CanvasModel.as) (revision 72685d659861b2cc84b109799cc20738ae839fad) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasModel.as (.../CanvasModel.as) (revision 0379c3c050496e1bd6fc6406ae13221ff11bc937) @@ -387,6 +387,19 @@ setDirty(); } + + public function removeOptionalSequenceCA(ca:Object, parentID){ + + ca.activity.parentUIID = (activeView instanceof CanvasBranchView) ? activeView.defaultSequenceActivity.activityUIID : null; + ca.activity.orderID = null; + ca.activity.parentActivityID = (activeView instanceof CanvasBranchView) ? activeView.defaultSequenceActivity.activityID : null; + + getCanvas().ddm.removeTransitionByConnection(ca.activity.activityUIID); + + removeActivity(parentID); + + setDirty(); + } /** *Called by the controller when a complex activity is dropped on bin. Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasOptionalActivity.as =================================================================== diff -u -r72685d659861b2cc84b109799cc20738ae839fad -r0379c3c050496e1bd6fc6406ae13221ff11bc937 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasOptionalActivity.as (.../CanvasOptionalActivity.as) (revision 72685d659861b2cc84b109799cc20738ae839fad) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasOptionalActivity.as (.../CanvasOptionalActivity.as) (revision 0379c3c050496e1bd6fc6406ae13221ff11bc937) @@ -68,7 +68,7 @@ private var _activity:Activity; private var _children:Array; private var children_mc:Array; - private var panelHeight:Number; + private var _panelHeight:Number; private var actMinOptions:Number; private var actMaxOptions:Number; private var noSeqActivities:Number; @@ -311,7 +311,7 @@ private function draw (){ var numOfChildren = _children.length; - panelHeight = CHILD_OFFSET_Y + (numOfChildren * CHILD_INCRE); + _panelHeight = CHILD_OFFSET_Y + (numOfChildren * CHILD_INCRE); setStyles(); @@ -437,8 +437,8 @@ return children_mc; } - public function get getpanelHeight():Number { - return panelHeight; + public function get panelHeight():Number { + return _panelHeight; } private function getAssociatedStyle():Object{ Index: lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasSequenceActivity.as =================================================================== diff -u -rce218d842869d1155caac214e8c8e4cfadde0642 -r0379c3c050496e1bd6fc6406ae13221ff11bc937 --- lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasSequenceActivity.as (.../CanvasSequenceActivity.as) (revision ce218d842869d1155caac214e8c8e4cfadde0642) +++ lams_flash/src/central/flash/org/lamsfoundation/lams/authoring/cv/CanvasSequenceActivity.as (.../CanvasSequenceActivity.as) (revision 0379c3c050496e1bd6fc6406ae13221ff11bc937) @@ -173,6 +173,12 @@ if(i == 0) SequenceActivity(_activity).firstActivityUIID = children_mc[i].activity.activityUIID; + + var transitionObj:Object = _canvasModel.getCanvas().ddm.getTransitionsForActivityUIID(children_mc[i].activity.activityUIID) + if(!transitionObj.hasTrans) + if(i<_children.length-1) + _canvasModel.createSequenceTransition(_activity, children_mc[i].activity.activityUIID); + //set the positioning co-ords children_mc[i].activity.xCoord = CHILD_OFFSET_X + (i * CHILD_INCRE); children_mc[i].activity.yCoord = CHILD_OFFSET_Y;