Tools__ChangeSetBrowser2.st
branchjv
changeset 16137 d0dd3f718e92
parent 15884 9773925891a7
child 16869 2ecababdd4c0
--- a/Tools__ChangeSetBrowser2.st	Thu Mar 03 06:57:22 2016 +0100
+++ b/Tools__ChangeSetBrowser2.st	Fri Mar 04 16:06:17 2016 +0000
@@ -1424,6 +1424,7 @@
             isVisible: allowAcceptHolder
             shortcutKey: Accept
             auxValue: 100
+            ignoreShortcutKeys: true
           )
          (MenuItem
             label: 'Apply All'
@@ -1569,6 +1570,8 @@
         nil
         nil
       )
+
+    "Modified: / 04-03-2016 / 16:02:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 changeMenu1
@@ -2185,11 +2188,13 @@
     anEvent isKeyPressEvent ifTrue:[
         evView := anEvent targetView.
         anEvent key == #Accept ifTrue:[
-            (evView isComponentOf:list1 window) ifTrue:[ self changeMenuApplyChanges:(self selectedChangesIn:list1). ^true ].
-            (evView isComponentOf:list2 window) ifTrue:[ self changeMenuApplyChanges:(self selectedChangesIn:list2). ^true ].
+            (evView isComponentOf:list1 window) ifTrue:[ self changeMenuApplyChanges:(self selectedChangesIn:list1) in: list1 . ^true ].
+            (evView isComponentOf:list2 window) ifTrue:[ self changeMenuApplyChanges:(self selectedChangesIn:list2) in: list2 . ^true ].
         ].
     ].
     ^ false
+
+    "Modified: / 04-03-2016 / 15:54:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !ChangeSetBrowser2 methodsFor:'aspects'!
@@ -3266,22 +3271,13 @@
 changeMenuApplySelection: changeList
 
     changeList selection do:[:change|
-        | changeIdx |
-
         self changeMenuApplyChange:change change.
-
-        "Advance to next change"
-        changeIdx := changeList list identityIndexOf: change.
-        changeIdx < changeList list size ifTrue:[
-            changeList selection: { changeList list at: changeIdx + 1 }
-        ] ifFalse:[ 
-            changeList redrawListItemAt: changeIdx.
-        ].
+        self selectChangeAfter: change change in: changeList.
     ].
 
     "Created: / 04-08-2011 / 17:27:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified (format): / 28-12-2011 / 15:48:53 / cg"
-    "Modified: / 25-04-2015 / 22:17:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 04-03-2016 / 15:58:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 changeMenuApplyToEnd: changeList
@@ -3789,6 +3785,15 @@
     "Created: / 04-08-2011 / 17:26:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+changeMenuApplyChanges: changesToApply in: changeList
+    changesToApply notEmpty ifTrue:[ 
+        self changeMenuApplyChanges: changesToApply.
+        self selectChangeAfter: changesToApply last in: changeList.
+    ].
+
+    "Created: / 04-03-2016 / 15:54:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 changeMenuDeleteChange: change
 
     change removed: true
@@ -3867,6 +3872,20 @@
     "Created: / 16-03-2011 / 22:41:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+selectChangeAfter: change in: changeList
+    "Advance to next change"
+    | changeIdx |
+
+    changeIdx := changeList list findFirst:[:changeItem | changeItem change ==  change ] ifNone:[ ^ self ].
+    changeIdx < changeList list size ifTrue:[
+        changeList selection: { changeList list at: changeIdx + 1 }
+    ] ifFalse:[ 
+        changeList redrawListItemAt: changeIdx.
+    ].
+
+    "Created: / 04-03-2016 / 15:52:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 selectionDo: aBlock
 
     | applyBlock |