use new SCMUtilities class
authorClaus Gittinger <cg@exept.de>
Mon, 10 Jan 2000 17:03:20 +0100
changeset 1289 76e5acce57a6
parent 1288 0818e9c108be
child 1290 57d613905108
use new SCMUtilities class
ProjectBrowser.st
--- a/ProjectBrowser.st	Fri Jan 07 13:34:51 2000 +0100
+++ b/ProjectBrowser.st	Mon Jan 10 17:03:20 2000 +0100
@@ -983,7 +983,7 @@
           #name: 'NewApplication'
           #min: #(#Point 10 10)
           #max: #(#Point 1280 1024)
-          #bounds: #(#Rectangle 40 127 393 626)
+          #bounds: #(#Rectangle 12 22 365 521)
         )
         #component: 
        #(#SpecCollection
@@ -1098,13 +1098,14 @@
                  #(#LabelSpec
                     #label: 'Unix:'
                     #name: 'Label1'
-                    #layout: #(#LayoutFrame 0 0.0 5 0 60 0.0 27 0)
+                    #layout: #(#AlignmentOrigin 76 0.0 16 0 1 0.5)
                     #translateLabel: true
+                    #resizeForLabel: true
                     #adjust: #right
                   )
                  #(#InputFieldSpec
                     #name: 'EntryField1'
-                    #layout: #(#LayoutFrame 64 0.0 4 0 0 1.0 26 0)
+                    #layout: #(#LayoutFrame 80 0.0 4 0 0 1.0 26 0)
                     #activeHelpKey: #installDirUnix
                     #enableChannel: #canDeliverForUnix
                     #tabable: true
@@ -1116,13 +1117,14 @@
                  #(#LabelSpec
                     #label: 'Win32:'
                     #name: 'Label2'
-                    #layout: #(#LayoutFrame 0 0.0 36 0 60 0.0 58 0)
+                    #layout: #(#AlignmentOrigin 76 0.0 47 0 1 0.5)
                     #translateLabel: true
+                    #resizeForLabel: true
                     #adjust: #right
                   )
                  #(#InputFieldSpec
                     #name: 'EntryField2'
-                    #layout: #(#LayoutFrame 64 0.0 34 0 0 1.0 56 0)
+                    #layout: #(#LayoutFrame 80 0.0 34 0 0 1.0 56 0)
                     #activeHelpKey: #installDirWin32
                     #enableChannel: #canDeliverForWin32
                     #tabable: true
@@ -1134,13 +1136,14 @@
                  #(#LabelSpec
                     #label: 'VMS:'
                     #name: 'Label3'
-                    #layout: #(#LayoutFrame 0 0.0 65 0 60 0.0 87 0)
+                    #layout: #(#AlignmentOrigin 76 0.0 76 0 1 0.5)
                     #translateLabel: true
+                    #resizeForLabel: true
                     #adjust: #right
                   )
                  #(#InputFieldSpec
                     #name: 'EntryField3'
-                    #layout: #(#LayoutFrame 64 0.0 63 0 0 1.0 85 0)
+                    #layout: #(#LayoutFrame 80 0.0 63 0 0 1.0 85 0)
                     #activeHelpKey: #installDirVMS
                     #initiallyDisabled: true
                     #enableChannel: #canDeliverForVMS
@@ -1153,13 +1156,14 @@
                  #(#LabelSpec
                     #label: 'MacOS:'
                     #name: 'Label4'
-                    #layout: #(#LayoutFrame 0 0.0 95 0 60 0.0 117 0)
+                    #layout: #(#AlignmentOrigin 76 0.0 106 0 1 0.5)
                     #translateLabel: true
+                    #resizeForLabel: true
                     #adjust: #right
                   )
                  #(#InputFieldSpec
                     #name: 'EntryField4'
-                    #layout: #(#LayoutFrame 64 0.0 93 0 0 1.0 115 0)
+                    #layout: #(#LayoutFrame 80 0.0 93 0 0 1.0 115 0)
                     #activeHelpKey: #installDirMacOS
                     #initiallyDisabled: true
                     #enableChannel: #canDeliverForMacOS
@@ -1753,7 +1757,7 @@
           #name: 'NewApplication'
           #min: #(#Point 10 10)
           #max: #(#Point 1280 1024)
-          #bounds: #(#Rectangle 216 173 577 536)
+          #bounds: #(#Rectangle 12 22 373 385)
         )
         #component: 
        #(#SpecCollection
@@ -1848,13 +1852,14 @@
                  #(#LabelSpec
                     #label: 'Module:'
                     #name: 'Label1'
-                    #layout: #(#LayoutFrame 0 0 0 0 86 0 22 0)
+                    #layout: #(#AlignmentOrigin 106 0 11 0 1 0.5)
                     #translateLabel: true
+                    #resizeForLabel: true
                     #adjust: #right
                   )
                  #(#InputFieldSpec
                     #name: 'EntryField2'
-                    #layout: #(#LayoutFrame 92 0.0 0 0 0 1.0 22 0)
+                    #layout: #(#LayoutFrame 110 0.0 0 0 0 1.0 22 0)
                     #activeHelpKey: #repositoryModule
                     #model: #repositoryModule
                     #acceptChannel: #acceptChannel
@@ -1864,13 +1869,14 @@
                  #(#LabelSpec
                     #label: 'Directory:'
                     #name: 'Label2'
-                    #layout: #(#LayoutFrame 0 0 25 0 86 0 47 0)
+                    #layout: #(#AlignmentOrigin 106 0 36 0 1 0.5)
                     #translateLabel: true
+                    #resizeForLabel: true
                     #adjust: #right
                   )
                  #(#InputFieldSpec
                     #name: 'EntryField3'
-                    #layout: #(#LayoutFrame 92 0.0 25 0 0 1.0 47 0)
+                    #layout: #(#LayoutFrame 110 0.0 25 0 0 1.0 47 0)
                     #activeHelpKey: #repositoryDirectory
                     #model: #repositoryDirectory
                     #acceptChannel: #acceptChannel
@@ -3860,6 +3866,14 @@
     ^ true
 !
 
+checkInClasses:aCollectionOfClasses
+    |logMessage|
+
+    logMessage := SourceCodeManagerUtilities getLogMessageFor:'classes in project'.
+    SourceCodeManagerUtilities checkinClasses:aCollectionOfClasses withLog:logMessage.
+    self halt.
+!
+
 currentProject
     |node|
 
@@ -5632,7 +5646,7 @@
 checkInAllClasses
     "check in all classes"
 
-    |p classes|
+    |p classes classesToCheckIn anyBad|
 
     p := self currentProject.
     p isNil ifTrue:[
@@ -5640,34 +5654,41 @@
         ^ self
     ].
 
-    self warn:'CheckIn function not yet implemented.'.
-    ^ self.
-
-    "/ check in classes ...
+    classesToCheckIn := OrderedCollection new.
+    anyBad := false.
+
+    "/ collect in classes ...
 
     classes := p classes.
-    classes do:[:aClass |
-        |clsName|
-
-        aClass isBehavior ifFalse:[
-            aClass isSymbol ifTrue:[
-                clsName := aClass
-            ] ifFalse:[
-                clsName := aClass className
-            ].
+    classes do:[:aClassOrClassName |
+        |cls clsName|
+
+        cls := aClassOrClassName.
+        cls isString ifTrue:[
+            cls := Smalltalk at:cls asSymbol.
+            clsName := aClassOrClassName
+        ] ifFalse:[
+            clsName := aClassOrClassName name
+        ].
+
+        cls isBehavior ifFalse:[
             Transcript showCR:('ProjectBrowser: cannot checkIn unloaded class: ' , clsName).
+            anyBad := true.
         ] ifTrue:[
-            aClass isLoaded ifFalse:[
-                Transcript showCR:('ProjectBrowser: cannot checkIn unloaded class: ' , aClass name).
+            cls isLoaded ifFalse:[
+                Transcript showCR:('ProjectBrowser: cannot checkIn unloaded class: ' , clsName).
+                anyBad := true.
             ] ifTrue:[
-                aClass owningClass isNil ifTrue:[ "/ skip private classes
-                    Transcript showCR:('ProjectBrowser: checking in class: ' , aClass name).
-                    self checkInClass:aClass.
+                cls owningClass isNil ifTrue:[ "/ skip private classes
+                    Transcript showCR:('ProjectBrowser: checking in class: ' , clsName).
+                    classesToCheckIn add:cls.
                 ]
             ]
         ]
     ].
-
+    anyBad ifTrue:[^ self].
+
+    self checkInClasses:classesToCheckIn.
 
 !
 
@@ -5788,6 +5809,14 @@
 
 !
 
+loadClassesFromRepository
+    "load all classes as contained in the project from the source code
+     repository into the system"
+
+    self warn:'not yet implemented - please load from directory'
+
+!
+
 makeCurrentProject
     "make the selected Project the current project"