Index: lams_flex/LamsAuthor/src/assets/languages/dictionary.xml =================================================================== diff -u -r0d708f58ed65f8cfce869f3aee815cea0d4c3f14 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/assets/languages/dictionary.xml (.../dictionary.xml) (revision 0d708f58ed65f8cfce869f3aee815cea0d4c3f14) +++ lams_flex/LamsAuthor/src/assets/languages/dictionary.xml (.../dictionary.xml) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -194,6 +194,18 @@ Equal group sizes + + Grouping type + + + Random + + + Choose in Monitor + + + Learner's choice + \ No newline at end of file Index: lams_flex/LamsAuthor/src/assets/languages/en_AU.xml =================================================================== diff -u -r60b2439a6205536482d65d00c64c18be2c744ad1 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/assets/languages/en_AU.xml (.../en_AU.xml) (revision 60b2439a6205536482d65d00c64c18be2c744ad1) +++ lams_flex/LamsAuthor/src/assets/languages/en_AU.xml (.../en_AU.xml) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -209,5 +209,17 @@ None + + Grouping type + + + Random + + + Choose in Monitor + + + Learner's choice + \ No newline at end of file Index: lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/PropertyInspector.mxml =================================================================== diff -u -r2453e0d0a14dab2534256200e96c507cb47aab00 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/PropertyInspector.mxml (.../PropertyInspector.mxml) (revision 2453e0d0a14dab2534256200e96c507cb47aab00) +++ lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/PropertyInspector.mxml (.../PropertyInspector.mxml) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -3,6 +3,7 @@ buttonClick="toggleMininmiseMaximise()" buttonPadding="4" buttonIcon="{minimiseIcon}" xmlns:group="org.lamsfoundation.lams.author.components.activity.group.*" + xmlns:common="org.lamsfoundation.lams.common.components.*" xmlns="org.lamsfoundation.lams.common.ui.components.*" layout="absolute" minWidth="250" @@ -17,6 +18,8 @@ + horizontalAlign="center" verticalGap="2" paddingBottom="0" paddingLeft="0" paddingRight="0" top="5"> - + @@ -120,22 +138,142 @@ text="{selectedActivityComponent.title}" /> + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + Index: lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/ActivityComponent.mxml =================================================================== diff -u -r2453e0d0a14dab2534256200e96c507cb47aab00 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/ActivityComponent.mxml (.../ActivityComponent.mxml) (revision 2453e0d0a14dab2534256200e96c507cb47aab00) +++ lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/ActivityComponent.mxml (.../ActivityComponent.mxml) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -223,19 +223,27 @@ _activity.title = title; } - public function get activityTypeID():int { + [Bindable] public function get activityTypeID():int { return _activity.activityTypeID; } + public function set activityTypeID(activityTypeID:int):void { + _activity.activityTypeID = activityTypeID; + } + /** * Returns the root activity object * This is required as AS3 has not concept of abstract methods. * So we need to be able to fetch this activity instance * Without knowing what activity type it is. */ - public function get rootActivity():Activity { + [Bindable]public function get rootActivity():Activity { return _activity; } + + public function set rootActivity(activity:Activity):void { + this._activity = activity; + } ]]> Index: lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/ActivityComponentFactory.as =================================================================== diff -u -r3444f7cd21be73f0284515ef8f821ad9320b54a0 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/ActivityComponentFactory.as (.../ActivityComponentFactory.as) (revision 3444f7cd21be73f0284515ef8f821ad9320b54a0) +++ lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/ActivityComponentFactory.as (.../ActivityComponentFactory.as) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -9,7 +9,7 @@ import org.lamsfoundation.lams.author.model.activity.Activity; import org.lamsfoundation.lams.author.model.activity.ActivityFactory; import org.lamsfoundation.lams.author.model.activity.CombinedActivity; - import org.lamsfoundation.lams.author.model.activity.GroupActivity; + import org.lamsfoundation.lams.author.model.activity.group.GroupActivity; import org.lamsfoundation.lams.author.model.activity.OptionalActivity; import org.lamsfoundation.lams.author.model.activity.ToolActivity; import org.lamsfoundation.lams.author.util.Constants; Index: lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/group/GroupActivityComponent.mxml =================================================================== diff -u -r6049b2dc7dad8cf49c0e9f8a92ffe6bb517139c6 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/group/GroupActivityComponent.mxml (.../GroupActivityComponent.mxml) (revision 6049b2dc7dad8cf49c0e9f8a92ffe6bb517139c6) +++ lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/activity/group/GroupActivityComponent.mxml (.../GroupActivityComponent.mxml) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -7,10 +7,9 @@ - - + - + - Index: lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/toolbar/ToolBar.mxml =================================================================== diff -u -r2aa362fa3ab4a8226745005fce896c82f7a03309 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/toolbar/ToolBar.mxml (.../ToolBar.mxml) (revision 2aa362fa3ab4a8226745005fce896c82f7a03309) +++ lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/components/toolbar/ToolBar.mxml (.../ToolBar.mxml) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -249,7 +249,7 @@ label="{Application.application.dictionary.getLabel('monitor_group_btn')}" toolTip="{Application.application.dictionary.getLabel('monitor_group_btn_tooltip')}"/> - numberOfGroups) { + for (var i:int = numberOfGroups; igroupNum-1; j--){ + groups.removeItemAt(j); + } + } + numberOfGroups = groupNum; + } + + private function generateGroupName():String { + return Application.application.dictionary.getLabel('group_btn') + " " + (numberOfGroups + 1); + } + + public static function get nullGroupActivity():GroupActivity { + var nullGroup:GroupActivity = new GroupActivity(0, 0); + nullGroup.title = Application.application.dictionary.getLabel("none_act_lbl"); + nullGroup.isNullGrouping = true; + return nullGroup; + } + } +} \ No newline at end of file Index: lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/util/AuthorUtil.as =================================================================== diff -u -r3444f7cd21be73f0284515ef8f821ad9320b54a0 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/util/AuthorUtil.as (.../AuthorUtil.as) (revision 3444f7cd21be73f0284515ef8f821ad9320b54a0) +++ lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/util/AuthorUtil.as (.../AuthorUtil.as) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -8,6 +8,9 @@ import mx.controls.Image; + import org.lamsfoundation.lams.author.model.activity.Activity; + import org.lamsfoundation.lams.author.model.activity.ToolActivity; + public class AuthorUtil { public function AuthorUtil(){} @@ -43,15 +46,31 @@ return image; } - public static function activitySupportsGrouping(activityTypeID:int):Boolean { - return activityTypeID != Constants.ACTIVITY_TYPE_GATE_CONDITION && + public static function activitySupportsGrouping(activity:Activity):Boolean { + var activityTypeID:int = activity.activityTypeID; + if (activityTypeID != Constants.ACTIVITY_TYPE_GATE_CONDITION && activityTypeID != Constants.ACTIVITY_TYPE_GATE_PERMISSION && activityTypeID != Constants.ACTIVITY_TYPE_GATE_SCHEDULE && activityTypeID != Constants.ACTIVITY_TYPE_GATE_SYNCH && activityTypeID != Constants.ACTIVITY_TYPE_GATE_SYSTEM && activityTypeID != Constants.ACTIVITY_TYPE_GROUPING && - activityTypeID != Constants.ACTIVITY_TYPE_REFERENCE; + activityTypeID != Constants.ACTIVITY_TYPE_REFERENCE) { + if (activity is ToolActivity) { + return (activity as ToolActivity).groupingEnabled; + } else { + return true; + } + } else { + return false; + } } + + + + + + + } } \ No newline at end of file Index: lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/util/Constants.as =================================================================== diff -u -r3444f7cd21be73f0284515ef8f821ad9320b54a0 -ra7b231505aaaa6e1c52468e782074c07128c675d --- lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/util/Constants.as (.../Constants.as) (revision 3444f7cd21be73f0284515ef8f821ad9320b54a0) +++ lams_flex/LamsAuthor/src/org/lamsfoundation/lams/author/util/Constants.as (.../Constants.as) (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -50,7 +50,7 @@ // Grouping type public static const GROUPING_TYPE_RANDOM:int = 1; public static const GROUPING_TYPE_TEACHER_CHOSEN:int = 2; - public static const GROUPING_TYPE_STUDENT_CHOICE:int = 3; + public static const GROUPING_TYPE_LEARNER_CHOICE:int = 3; // Transition type public static const TRANSITION_TYPE_NORMAL:int = 1; Index: lams_flex/LamsFlexCommon/src/org/lamsfoundation/lams/common/components/BindableComboBox.mxml =================================================================== diff -u --- lams_flex/LamsFlexCommon/src/org/lamsfoundation/lams/common/components/BindableComboBox.mxml (revision 0) +++ lams_flex/LamsFlexCommon/src/org/lamsfoundation/lams/common/components/BindableComboBox.mxml (revision a7b231505aaaa6e1c52468e782074c07128c675d) @@ -0,0 +1,51 @@ + + + + + +