*** empty log message ***
authorClaus Gittinger <cg@exept.de>
Sat, 17 Nov 2001 17:38:10 +0100
changeset 3442 38a5ec1d3add
parent 3441 3b2b4a2d7f89
child 3443 397e9d17ca46
*** empty log message ***
AbstractLauncherApplication.st
ChangesBrowser.st
--- a/AbstractLauncherApplication.st	Sat Nov 17 17:36:04 2001 +0100
+++ b/AbstractLauncherApplication.st	Sat Nov 17 17:38:10 2001 +0100
@@ -658,7 +658,7 @@
 
     selector := Dialog 
                     requestSelector:(resources at:'Browse implementors of (Tab for completion):') 
-                    okLabel:(resources at:'browse')
+                    okLabel:(resources at:'Browse')
                     initialAnswer:''.
 
     selector size > 0 ifTrue:[
@@ -667,6 +667,8 @@
                 browseImplementorsOf:selector
         ]  
     ].
+
+    "Modified: / 17.11.2001 / 16:33:28 / cg"
 !
 
 browseResources
@@ -735,7 +737,7 @@
 
     selector := Dialog 
                     requestSelector:(resources at:'Browse senders of (Tab for completion):') 
-                    okLabel:(resources at:'browse')
+                    okLabel:(resources at:'Browse')
                     initialAnswer:''.
     selector size > 0 ifTrue:[
         self withWaitCursorDo:[
@@ -743,6 +745,8 @@
                 browseAllCallsOn:selector
         ]  
     ].
+
+    "Modified: / 17.11.2001 / 16:33:42 / cg"
 !
 
 browseUndeclared
@@ -6316,5 +6320,5 @@
 !AbstractLauncherApplication class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/AbstractLauncherApplication.st,v 1.179 2001-11-16 10:55:32 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/AbstractLauncherApplication.st,v 1.180 2001-11-17 16:37:12 cg Exp $'
 ! !
--- a/ChangesBrowser.st	Sat Nov 17 17:36:04 2001 +0100
+++ b/ChangesBrowser.st	Sat Nov 17 17:38:10 2001 +0100
@@ -212,7 +212,7 @@
                   #translateLabel: true
                   #isVisible: #notEditingClassSource
                   #value: #doCheckinAndDeleteClassAll
-                  #enabled: #hasSingleSelection
+                  #enabled: #hasSelection
                 )
                #(#MenuItem
                   #label: '-'
@@ -571,6 +571,8 @@
         nil
         nil
       )
+
+    "Modified: / 17.11.2001 / 14:15:36 / cg"
 ! !
 
 !ChangesBrowser methodsFor:'aspects'!
@@ -980,7 +982,7 @@
                            doDeleteClassFromBeginning 
                            doCompressClass doCompare
                            doSaveClassAll doSaveClassRest doSaveRest doBrowse 
-                           doFileoutAndDeleteClassAll doCheckinAndDeleteClassAll) 
+                           doFileoutAndDeleteClassAll) 
         ] ifFalse:[
             (self classNameOfChange:sel) isNil ifTrue:[
                 m disableAll:#(doApplyClassRest doDeleteClassRest
@@ -1017,7 +1019,7 @@
     ^ m
 
     "Modified: / 6.9.1995 / 17:14:22 / claus"
-    "Modified: / 22.8.1998 / 15:50:17 / cg"
+    "Modified: / 17.11.2001 / 14:16:14 / cg"
 !
 
 destroy
@@ -3736,39 +3738,57 @@
     "first checkin the selected changes class then delete all changes
      for it."
 
-    self theSingleSelection isNil ifTrue:[
-        ^ self information:'Only possible if a single change is selected.'.
-    ].
-
-    self withSelectedChangesDo:[:changeNr |
-        | className class |
-
-        className := self classNameOfChange:changeNr.
-        className notNil ifTrue:[
-            class := Smalltalk classNamed:className.
-            class isNil ifTrue:[
-                self halt:'oops - no such class'.
-            ].
-            class notNil ifTrue:[
-                class isPrivate ifTrue:[
-                    (self confirm:('This is a private class.\\CheckIn the owner ''%1'' and all of its private classes ?' bindWith:class owningClass name allBold) withCRs)
-                    ifFalse:[^ self].
-                    (SourceCodeManagerUtilities checkinClass:class owningClass withLog:nil)
-                    ifTrue:[
-                        self doDeleteClassAndPrivateClassesAll
-                    ]
-                ] ifFalse:[
-                    (SourceCodeManagerUtilities checkinClass:class withLog:nil)
-                    ifTrue:[
-                        self doDeleteClassAll
+    |classes answer|
+
+"/    self theSingleSelection isNil ifTrue:[
+"/        ^ self information:'Only possible if a single change is selected.'.
+"/    ].
+
+    self withExecuteCursorDo:[
+        classes := IdentitySet new.
+
+        self withSelectedChangesDo:[:changeNr |
+            | className class |
+
+            className := self classNameOfChange:changeNr.
+            className notNil ifTrue:[
+                class := Smalltalk classNamed:className.
+                class isNil ifTrue:[
+                    self halt:'oops - no class: ', className.
+                ].
+                class notNil ifTrue:[
+                    class := class theNonMetaclass.
+                    (classes includes:class) ifFalse:[
+                        class isPrivate ifTrue:[
+                            (classes includes:class owningClass) ifFalse:[
+                                answer := self confirmWithCancel:('This is a private class.\\CheckIn the owner ''%1'' and all of its private classes ?' 
+                                                                    bindWith:class owningClass name allBold) withCRs.
+                                answer isNil ifTrue:[^ self].
+                                answer ifTrue:[
+                                    classes add:class owningClass
+                                ]
+                            ]
+                        ] ifFalse:[
+                            classes add:class
+                        ].
                     ]
                 ]
-            ].
-
+            ]
         ].
+
+        changeListView setSelection:nil.
+        classes do:[:eachClass |
+            (SourceCodeManagerUtilities checkinClass:eachClass withLog:nil)
+                ifTrue:[
+                    self silentDeleteChangesForClassAndPrivateClasses:eachClass name
+                           from:1 to:(self numberOfChanges).
+                ]
+        ].
+        self setChangeList. 
     ]
 
-    "Modified: 6.9.1995 / 17:11:16 / claus"
+    "Modified: / 6.9.1995 / 17:11:16 / claus"
+    "Modified: / 17.11.2001 / 14:21:13 / cg"
 !
 
 doCompare
@@ -4611,5 +4631,5 @@
 !ChangesBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.245 2001-11-16 17:20:47 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/ChangesBrowser.st,v 1.246 2001-11-17 16:38:10 cg Exp $'
 ! !