ChangesBrowser.st
changeset 11896 627b63f51074
parent 11805 351f5528be25
child 12401 4714b9640528
child 12428 a8bd7df67b9a
--- a/ChangesBrowser.st	Tue Oct 23 00:26:22 2012 +0200
+++ b/ChangesBrowser.st	Tue Oct 23 00:32:07 2012 +0200
@@ -1965,12 +1965,10 @@
     "compress changes for the selected class.
      this replaces multiple method-changes by the last (i.e. the most recent) change."
 
-    self theSingleSelection isNil ifTrue:[
-	^ self information:'Only possible if a single change is selected.'.
-    ].
+    self checkSingleSelectedChange.
 
     self selectedClassNames do:[:classNameToCompress |
-	self compressForClass:classNameToCompress.
+        self compressForClass:classNameToCompress.
     ]
 
     "Created: / 29.10.1997 / 01:05:16 / cg"
@@ -1983,25 +1981,23 @@
 
     |classSelectorPairs|
 
-    self theSingleSelection isNil ifTrue:[
-	^ self information:'Only possible if a single change is selected.'.
-    ].
+    self checkSingleSelectedChange.
 
     classSelectorPairs := Set new.
     self withSelectedChangesDo:[:changeNr |
-	| classNameToCompress selector |
-
-	classNameToCompress := self classNameOfChange:changeNr.
-	classNameToCompress notNil ifTrue:[
-	    selector := self selectorOfMethodChange:changeNr.
-	    selector notNil ifTrue:[
-		classSelectorPairs add:(classNameToCompress -> selector).
-	    ]
-	]
+        | classNameToCompress selector |
+
+        classNameToCompress := self classNameOfChange:changeNr.
+        classNameToCompress notNil ifTrue:[
+            selector := self selectorOfMethodChange:changeNr.
+            selector notNil ifTrue:[
+                classSelectorPairs add:(classNameToCompress -> selector).
+            ]
+        ]
     ].
 
     classSelectorPairs do:[:pair |
-	self compressForClass:pair key selector:pair value.
+        self compressForClass:pair key selector:pair value.
     ]
 
     "Created: / 19.11.2001 / 21:50:59 / cg"
@@ -2297,9 +2293,7 @@
 
     |yesNoBox|
 
-    (self theSingleSelection) isNil ifTrue:[
-        ^ self information:'Only possible if a single change is selected.'.
-    ].
+    self checkSingleSelectedChange.
 
     yesNoBox := YesNoBox new.
     yesNoBox title:(resources string:'Warning: this operation cannot be undone').
@@ -2346,18 +2340,14 @@
 doSaveClass
     "user wants changes for some class from current to end to be appended to a file"
 
-    (self theSingleSelection) isNil ifTrue:[
-	^ self information:'Only possible if a single change is selected.'.
-    ].
+    self checkSingleSelectedChange.
     self doSaveClassFrom:1
 !
 
 doSaveClassAll
     "user wants changes for some class from current to end to be appended to a file"
 
-    (self theSingleSelection) isNil ifTrue:[
-	^ self information:'Only possible if a single change is selected.'.
-    ].
+    self checkSingleSelectedChange.
     self doSaveClassFrom:1
 !
 
@@ -2366,12 +2356,10 @@
 
     |changeNr classNameToSave|
 
-    (changeNr := self theSingleSelection) isNil ifTrue:[
-	^ self information:'Only possible if a single change is selected.'.
-    ].
+    changeNr := self checkSingleSelectedChange.
     classNameToSave := self classNameOfChange:changeNr.
     classNameToSave notNil ifTrue:[
-	self saveClass:classNameToSave from:startNr
+        self saveClass:classNameToSave from:startNr
     ]
 !
 
@@ -2380,9 +2368,7 @@
 
     |changeNr|
 
-    (changeNr := self theSingleSelection) isNil ifTrue:[
-        ^ self information:'Only possible if a single change is selected.'.
-    ].
+    changeNr := self checkSingleSelectedChange.
     self doSaveClassFrom:changeNr.
 
     changeListView setSelection:changeNr.
@@ -3108,6 +3094,19 @@
     ^ false.
 !
 
+checkSingleSelectedChange
+    "just a helper, check for a single selection"
+
+    |changeNr|
+
+    (changeNr := self theSingleSelection) isNil ifTrue:[
+        self information:'Only possible if a single change is selected.'.
+        AbortSignal raise.
+        ^ nil.
+    ].
+    ^ changeNr
+!
+
 classFromEvaluatingTree:aParseTree
     |thisClass|
 
@@ -6460,9 +6459,9 @@
 !ChangesBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.432 2012-09-19 10:31:18 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.433 2012-10-22 22:32:07 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.432 2012-09-19 10:31:18 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.433 2012-10-22 22:32:07 cg Exp $'
 ! !