Index: lams_common/src/flash/org/lamsfoundation/lams/common/LearnerActivity.as =================================================================== diff -u -r07e43914da81db3c524e447835775fc7d27a3e6a -r8e25e4e57978705812e29736a9b30e92ff31b40f --- lams_common/src/flash/org/lamsfoundation/lams/common/LearnerActivity.as (.../LearnerActivity.as) (revision 07e43914da81db3c524e447835775fc7d27a3e6a) +++ lams_common/src/flash/org/lamsfoundation/lams/common/LearnerActivity.as (.../LearnerActivity.as) (revision 8e25e4e57978705812e29736a9b30e92ff31b40f) @@ -24,6 +24,7 @@ import org.lamsfoundation.lams.common.*; import org.lamsfoundation.lams.common.util.*; import org.lamsfoundation.lams.common.ui.*; +import org.lamsfoundation.lams.common.dict.*; import org.lamsfoundation.lams.common.mvc.*; import org.lamsfoundation.lams.learner.ls.*; import org.lamsfoundation.lams.monitoring.mv.*; @@ -64,6 +65,7 @@ private var _activity:Activity; private var _isSelected:Boolean; private var app:ApplicationParent; + private var _tip:ToolTip; //locals private var actStatus:String; private var actLabel:String; @@ -90,6 +92,7 @@ function LearnerActivity(){ Debugger.log("_activity:"+_activity.title,4,'Constructor','Activity'); _tm = ThemeManager.getInstance(); + _tip = new ToolTip(); //Get reference to application and design data model app = ApplicationParent.getInstance(); //let it wait one frame to set up the components. @@ -190,18 +193,14 @@ switch (actStatus){ case 'completed_mc' : completed_mc._visible = true; - //this.attachMovie("completed_mc", "completed_mc", this.getNextHighestDepth(),{_x:xPos, _y:yPos}) break; case 'current_mc' : - //this.attachMovie("current_mc", "current_mc", this.getNextHighestDepth(),{_x:xPos, _y:yPos}) current_mc._visible = true; - break; + break; case 'attempted_mc' : - //this.attachMovie("attempted_mc", "attempted_mc", this.getNextHighestDepth(),{_x:xPos, _y:yPos}) attempted_mc._visible = true; break; default : - //this.attachMovie("todo_mc", "todo_mc", this.getNextHighestDepth(),{_x:xPos, _y:yPos}) todo_mc._visible = true; //Debugger.log('unknown update type :' + infoObj.updateType,Debugger.CRITICAL,'update','org.lamsfoundation.lams.MonitorView'); } @@ -213,13 +212,51 @@ }else { title_lbl.text = actLabel; } - //Debugger.log('canvasActivity_mc._visible'+canvasActivity_mc._visible,4,'draw','CanvasActivity'); + //this.completed_mc.onRollOver = Proxy.create(this,this['showToolTip'], this.completed_mc, "completed_act_tooltip"); + //this.completed_mc.onRollOut = Proxy.create(this,this['hideToolTip']); + //this.current_mc.onRollOver = Proxy.create(this,this['showToolTip'], this.current_mc, "current_act_tooltip"); + //this.current_mc.onRollOut = Proxy.create(this,this['hideToolTip']); //Debugger.log('canvasActivity_mc._visible'+canvasActivity_mc._visible,4,'draw','CanvasActivity'); //_visible = true; } - + public function showToolTip(btnObj, btnTT:String):Void{ + var appData = getAppData(); + if(_complex){ + var ttXpos = appData.compX + xPos; + var ttYpos = appData.compY + yPos; + } else { + var ttXpos = appData.compX + this._x; + var ttYpos = appData.compY + this._y+btnObj._height; + } + + var ttHolder = appData.ttHolder; + trace("x pos: "+ttXpos+" and y pos: "+ttYpos+" and tt holder is: "+ttHolder) + var ttMessage = Dictionary.getValue(btnTT); + var ttWidth = 140; + _tip.DisplayToolTip(ttHolder, ttMessage, ttXpos, ttYpos, undefined, ttWidth); + + } + + public function hideToolTip():Void{ + _tip.CloseToolTip(); + } + + private function onRollOver(){ + if (actStatus == "completed_mc"){ + showToolTip(this.completed_mc, "completed_act_tooltip"); + }else if (actStatus == "current_mc"){ + showToolTip(this.current_mc, "current_act_tooltip"); + } + + } + + private function onRollOut(){ + + hideToolTip(); + } + private function onPress():Void{ - + hideToolTip(); // check double-click var now:Number = new Date().getTime(); @@ -238,6 +275,7 @@ } + private function onRelease():Void{ if(!_doubleClicking){ Debugger.log('Releasing:'+this,Debugger.GEN,'onRelease','LearnerActivity'); @@ -262,6 +300,10 @@ } else { return MonitorController(_controller); } + } + + public function getAppData():Object{ + return controller.appData; } /** Index: lams_common/src/flash/org/lamsfoundation/lams/common/LearnerComplexActivity.as =================================================================== diff -u -r07e43914da81db3c524e447835775fc7d27a3e6a -r8e25e4e57978705812e29736a9b30e92ff31b40f --- lams_common/src/flash/org/lamsfoundation/lams/common/LearnerComplexActivity.as (.../LearnerComplexActivity.as) (revision 07e43914da81db3c524e447835775fc7d27a3e6a) +++ lams_common/src/flash/org/lamsfoundation/lams/common/LearnerComplexActivity.as (.../LearnerComplexActivity.as) (revision 8e25e4e57978705812e29736a9b30e92ff31b40f) @@ -21,7 +21,8 @@ * ************************************************************************ */ import org.lamsfoundation.lams.common.*; -import org.lamsfoundation.lams.common.util.*; +import org.lamsfoundation.lams.common.util.*; +import org.lamsfoundation.lams.common.dict.*; import org.lamsfoundation.lams.common.ui.*; import org.lamsfoundation.lams.common.mvc.*; import org.lamsfoundation.lams.authoring.Activity; @@ -49,7 +50,7 @@ //this is set by the init object private var _controller:AbstractController; private var _view:AbstractView; - + private var _tip:ToolTip; //Set by the init obj private var _activity : Activity; private var _children : Array; @@ -93,7 +94,8 @@ _ddm = new DesignDataModel (); app = ApplicationParent.getInstance(); _visible = false; - _tm = ThemeManager.getInstance (); + _tm = ThemeManager.getInstance (); + _tip = new ToolTip(); _visibleHeight = container_pnl._height; _visibleWidth = container_pnl._width; @@ -112,7 +114,8 @@ childActivities_mc = this; _locked = false; showStatus(false); - + clickTarget_mc.onRollOver = Proxy.create(this, localOnRollOver); + clickTarget_mc.onRollOut = Proxy.create(this, localOnRollOut); clickTarget_mc.onPress = Proxy.create(this, localOnPress); clickTarget_mc.onRelease = Proxy.create(this, localOnRelease); clickTarget_mc.onReleaseOutside = Proxy.create(this, localOnReleaseOutside); @@ -127,16 +130,17 @@ } else { childrenArray = _children; } - + var childCoordY = 0 for (var i = 0; i < childrenArray.length; i ++) { var progStatus:String = Progress.compareProgressData(learner, childrenArray[i].activityID); - children_mc [i] = childHolder_mc.attachMovie("LearnerActivity_forComplex", "LearnerActivity_forComplex"+i, childHolder_mc.getNextHighestDepth(), {_activity:childrenArray[i], _controller:_controller, _view:_view, learner:learner, actStatus:progStatus, _complex:true}); + children_mc [i] = childHolder_mc.attachMovie("LearnerActivity_forComplex", "LearnerActivity_forComplex"+i, childHolder_mc.getNextHighestDepth(), {_activity:childrenArray[i], _controller:_controller, _view:_view, learner:learner, actStatus:progStatus, _complex:true, xPos:this._x, yPos:childCoordY}); Debugger.log('attaching child movieL ' + children_mc[i],Debugger.CRITICAL,'init','LearnerComplexActivity'); //set the positioning co-ords - children_mc [i]._y = (i*21); + children_mc [i]._y = (i*21); + childCoordY = this._y + ((i+1)*21)+29 ; children_mc [i]._visible = true; } @@ -231,9 +235,42 @@ Debugger.log ("I am in Draw :" + _activity.title + 'uiID:' + _activity.activityUIID + ' children:' + _children.length, Debugger.GEN, 'Draw', 'LearnerOptionalActivity'); _visible = true; + } + + public function showToolTip(btnObj, btnTT:String):Void{ + var appData = getAppData(); + var Xpos = appData.compX+ this._x; + var Ypos = appData.compY+( (this._y+btnObj._height)-4); + var ttHolder = appData.ttHolder; + trace("x pos: "+Xpos+" and y pos: "+Ypos+" and tt holder is: "+ttHolder) + var ttMessage = Dictionary.getValue(btnTT); + var ttWidth = 140; + _tip.DisplayToolTip(ttHolder, ttMessage, Xpos, Ypos, undefined, ttWidth); + + } + + public function hideToolTip():Void{ + _tip.CloseToolTip(); + } + + private function localOnRollOver(){ + if (actStatus == "completed_mc"){ + showToolTip(this.completed_mc, "completed_act_tooltip"); + }else if (actStatus == "current_mc"){ + showToolTip(this.current_mc, "current_act_tooltip"); + }else if (actStatus == "attempted_mc"){ + showToolTip(this.current_mc, "current_act_tooltip"); + } + + } + + private function localOnRollOut(){ + + hideToolTip(); } - private function localOnPress():Void{ + private function localOnPress():Void{ + hideToolTip(); this.swapDepths(this._parent.getNextHighestDepth()); // check double-click var now : Number = new Date ().getTime (); @@ -309,6 +346,10 @@ } } + public function getAppData():Object{ + return controller.appData; + } + public function isLearnerModule():Boolean{ if(app.module == 'learner'){ return true;