Merge jv
authorMerge Script
Thu, 26 Nov 2015 06:54:59 +0100
branchjv
changeset 15963 2dca933fab18
parent 15961 28a2666c445a (current diff)
parent 15962 e5eafcf1506c (diff)
child 15973 18139a360981
Merge
Tools__NewSystemBrowser.st
--- a/Tools__NewSystemBrowser.st	Sat Nov 21 06:50:01 2015 +0100
+++ b/Tools__NewSystemBrowser.st	Thu Nov 26 06:54:59 2015 +0100
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
 "
  COPYRIGHT (c) 2000 by eXept Software AG
               All Rights Reserved
@@ -18349,8 +18347,8 @@
      otherwise, a match pattern is allowed and a multi-class browser is opened.
      Moved from instance protocol for better reusability."
 
-    |box boxLabel title okText okText2 okText3 className canFind
-     button2 button3 doWhat doWhat2 doWhat3 classNameHolder updateList updateClassAndNameList
+    |box boxLabel title okText okText2 okText3 okText4 className canFind
+     button2 button3 button4 doWhat doWhat2 doWhat3 doWhat4 classNameHolder updateList updateClassAndNameList
      reallyAllClasses allClasses allClassesByFullName classNamesInChangeSet classesInChangeSet
      allNames allFullNames initialShortNames initialFullNames
      colorizedFullNames colorizedShortNames
@@ -18372,6 +18370,7 @@
         okText := 'OK'.
         okText2 := nil. doWhat2 := nil.
         okText3 := nil. doWhat3 := nil.
+        okText4 := nil. doWhat4 := nil.
     ] ifFalse:[
         title := (singleClass ifTrue:[ 'Class to browse' ] ifFalse:[ 'Class(es) to browse' ]).
         boxLabel := (resources string:'Browse or Search').
@@ -18383,16 +18382,19 @@
         doWhat == #newBrowser ifTrue:[
             okText := 'Open'.
             okText2 := 'Add Buffer'. doWhat2 := #newBuffer.
-            okText3 := 'Find'.       doWhat3 := nil.
+            okText3 := 'Open All'.   doWhat3 := #newBrowserForAll.
+            okText4 := 'Find'.       doWhat4 := nil.
         ] ifFalse:[ doWhat == #newBuffer ifTrue:[
             okText := 'Add Buffer'.
             okText2 := 'Open New'.   doWhat2 := #newBrowser.
-            okText3 := 'Find'.       doWhat3 := nil.
+            okText3 := 'Open All'.   doWhat3 := #newBrowserForAll.
+            okText4 := 'Find'.       doWhat4 := nil.
         ] ifFalse:[
             title := (singleClass ifTrue:[ 'Class to find' ] ifFalse:[ 'Class(es) to find' ]).
             okText := 'Find'.
             okText2 := 'Open New'.   doWhat2 := #newBrowser.
-            okText3 := 'Add Buffer'. doWhat3 := #newBuffer.
+            okText3 := 'Open All'.   doWhat3 := #newBrowserForAll.
+            okText4 := 'Add Buffer'. doWhat4 := #newBuffer.
         ]].
     ].
 
@@ -18467,10 +18469,12 @@
     doWhat notNil ifTrue:[
         button2 := Button label:(resources string:okText2).
         (navigationState notNil and:[navigationState isFullBrowser]) "singleClass" ifTrue:[
-            button3 := Button label:(resources string:okText3)
+            button3 := Button label:(resources string:okText3).
+            button4 := Button label:(resources string:okText4).
         ].
         box addButton:button2 after:(box okButton).
         button3 notNil ifTrue:[box addButton:button3 after:button2].
+        button4 notNil ifTrue:[box addButton:button4 after:button3].
 
         button2
             action:[
@@ -18484,6 +18488,13 @@
                     box doAccept; okPressed.
                 ].
         ].
+        button4 notNil ifTrue:[
+            button4
+                action:[
+                    doWhat := doWhat4.
+                    box doAccept; okPressed.
+                ].
+        ].
     ].
 
     reallyAllClasses := Smalltalk allClasses copyAsOrderedCollection.
@@ -34830,11 +34841,7 @@
 classMenuCheckInAllChangedClassesUsingManagerNamed:sourceCodeManagerClassName
     "check in all changed classes into the source repository (with checks)"
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^ self classMenuCheckInAllChangedClassesUsingManager:mgr
+    ^ self classMenuCheckInAllChangedClassesUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 20:04:27 / cg"
 !
@@ -34960,11 +34967,7 @@
 classMenuCheckInUsingManagerNamed:sourceCodeManagerClassName
     "check a class into the source repository (with checks)"
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCheckInUsingManager:mgr
+    self classMenuCheckInUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 20:03:01 / cg"
 !
@@ -35010,11 +35013,7 @@
      or merge-in the repository version.
      "
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCheckOutNewestUsingManager: mgr
+    self classMenuCheckOutNewestUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 !
 
 classMenuCheckOutUsingManager: manager
@@ -35037,11 +35036,7 @@
      or merge-in the repository version.
      "
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCheckOutUsingManager: mgr
+    self classMenuCheckOutUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 !
 
 classMenuCompareAgainstNewestInRepository
@@ -35069,11 +35064,7 @@
      with the the newest version found in the repository.
      That is the most recent version."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCompareAgainstNewestInRepositoryUsingManager:mgr
+    self classMenuCompareAgainstNewestInRepositoryUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 20:35:43 / cg"
 !
@@ -35137,11 +35128,7 @@
      with the the base version found in the repository.
      That is the version on which the class was based upon, not the most recent one."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCompareAgainstOriginalInRepositoryUsingManager:mgr
+    self classMenuCompareAgainstOriginalInRepositoryUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 22:50:51 / cg"
 !
@@ -35189,11 +35176,7 @@
     "open a diff-textView comparing the current (in-image) version
      with the stable version found in the repository."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCheckOutUsingManager: mgr
+    self classMenuCheckOutUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 !
 
 classMenuCompareAgainstVersionInRepository:rev usingManager: manager
@@ -35454,16 +35437,22 @@
     "Modified: / 21-12-2011 / 20:21:14 / cg"
 !
 
-classMenuCompareExtensionsWithRepositoryUsingManager: aManager
-    ^ Dialog warn: 'Not yet implemented'
-
-    "Created: / 21-12-2011 / 20:28:28 / cg"
-!
-
-classMenuCompareExtensionsWithRepositoryUsingManagerNamed: aManager
-    ^ Dialog warn: 'Not yet implemented'
-
-    "Created: / 21-12-2011 / 20:28:28 / cg"
+classMenuCompareExtensionsWithRepositoryUsingManager: manager
+    |allExtendingPackages|
+    
+    allExtendingPackages := Set new.
+    self selectedClassesDo:[:eachClass |
+        eachClass instAndClassSelectorsAndMethodsDo:[:sel :mthd |
+            mthd isExtension ifTrue:[
+                allExtendingPackages add:mthd package.
+            ]        
+        ].
+    ].
+    manager utilities comparePackages: allExtendingPackages askForRevision: false extensionsOnly:true.
+!
+
+classMenuCompareExtensionsWithRepositoryUsingManagerNamed: sourceCodeManagerClassName
+    self classMenuCompareExtensionsWithRepositoryUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName).
 !
 
 classMenuCompareTwoRepositoryVersions
@@ -35547,11 +35536,7 @@
 classMenuCompareTwoRepositoryVersionsUsingManagerNamed:sourceCodeManagerClassName
     "open a diff-textView comparing two versions found in the repository."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCompareTwoRepositoryVersionsUsingManager:mgr
+    self classMenuCompareTwoRepositoryVersionsUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 23:13:40 / cg"
 !
@@ -35659,11 +35644,7 @@
     "open a diff-textView comparing the current (in-image) version
      with the some version found in the repository."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCompareWithRepositoryUsingManager:mgr
+    self classMenuCompareWithRepositoryUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 22:51:56 / cg"
 !
@@ -35945,11 +35926,7 @@
 classMenuRevisionLogUsingManagerNamed:sourceCodeManagerClassName
     "show a classes revision log"
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuRevisionLog:false usingManager:mgr
+    self classMenuRevisionLog:false usingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Modified: / 11-10-2011 / 20:31:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Created: / 21-12-2011 / 23:02:10 / cg"
@@ -36009,11 +35986,7 @@
 classMenuShortRevisionLogUsingManagerNamed:sourceCodeManagerClassName
     "show a short (last 20 entries) classes repository log"
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuShortRevisionLogUsingManager:mgr
+    self classMenuShortRevisionLogUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 23:12:15 / cg"
 !
@@ -36911,6 +36884,14 @@
     "Created: / 21-12-2011 / 20:24:55 / cg"
 !
 
+sourceCodeManagerNamed:sourceCodeManagerClassName
+    |mgr|
+
+    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
+    self assert:(mgr notNil).
+    ^ mgr
+!
+
 sourceStreamForRepositorySourceOfClass:aClass
     "ask for a classes revision and return a stream on this revisions source; nil on error"
 
@@ -39691,11 +39672,7 @@
 methodListMenuCheckInClassUsingManagerNamed: sourceCodeManagerClassName
     "check the selected methods class(es) into the source repository."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^self methodListMenuCheckInClassUsingManager: mgr
+    ^self methodListMenuCheckInClassUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 !
 
 methodListMenuCopyList
@@ -40102,11 +40079,7 @@
 !
 
 classMenuCheckInBuildSupportFilesUsingManagerNamed:sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self classMenuCheckInBuildSupportFilesUsingManager:mgr
+    self classMenuCheckInBuildSupportFilesUsingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 22-12-2011 / 14:04:45 / cg"
 !
@@ -40805,11 +40778,7 @@
 
 projectMenuCheckInAllUsingManagerNamed: sourceCodeManagerClassName
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^self projectMenuCheckInAllUsingManager: mgr
+    ^self projectMenuCheckInAllUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 23-12-2011 / 19:24:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 24-07-2012 / 18:00:30 / cg"
@@ -40890,11 +40859,7 @@
 !
 
 projectMenuCheckInBuildSupportFilesUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^self projectMenuCheckInBuildSupportFilesUsingManager: mgr
+    ^self projectMenuCheckInBuildSupportFilesUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 24-01-2012 / 13:02:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified (format): / 24-07-2012 / 18:00:46 / cg"
@@ -40930,11 +40895,7 @@
 !
 
 projectMenuCheckInClassesUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuCheckInClassesUsingManager: mgr
+    self projectMenuCheckInClassesUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 23-12-2011 / 19:29:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 24-07-2012 / 18:02:10 / cg"
@@ -40971,11 +40932,7 @@
 !
 
 projectMenuCheckInExtensionsUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuCheckInExtensionsUsingManager: mgr
+    self projectMenuCheckInExtensionsUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 23-12-2011 / 19:30:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 24-07-2012 / 18:02:06 / cg"
@@ -41510,11 +41467,7 @@
 !
 
 projectMenuCheckOutNewestUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuCheckOutNewestUsingManager: mgr
+    self projectMenuCheckOutNewestUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 01-04-2014 / 16:50:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
@@ -41547,11 +41500,7 @@
 !
 
 projectMenuCheckOutUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuCheckOutUsingManager: mgr
+    self projectMenuCheckOutUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 01-04-2014 / 16:51:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
@@ -41813,11 +41762,7 @@
     "Comparing the current (in-image) version of the project(s)
      against the the newest version found in the repository."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^self projectMenuCompareAgainstNewestInRepositoryUsingManager: mgr
+    ^self projectMenuCompareAgainstNewestInRepositoryUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 16-01-2012 / 18:45:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 24-07-2012 / 18:01:03 / cg"
@@ -42677,11 +42622,7 @@
 projectMenuImportAndLoadClassesUsingManagerNamed:sourceCodeManagerClassName
     "import packages AND load classes"
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuImport:true usingManager:mgr
+    self projectMenuImport:true usingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 27-07-2012 / 13:46:40 / cg"
 !
@@ -42689,11 +42630,7 @@
 projectMenuImportUsingManagerNamed:sourceCodeManagerClassName
     "import packages - but do not load classes"
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuImport:false usingManager:mgr
+    self projectMenuImport:false usingManager:(self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 27-07-2012 / 13:34:54 / cg"
 !
@@ -43131,11 +43068,7 @@
 !
 
 projectMenuRepositoryHistoryUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuRepositoryHistoryUsingManager: mgr
+    self projectMenuRepositoryHistoryUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 !
 
 projectMenuResources
@@ -43189,11 +43122,7 @@
 !
 
 projectMenuSetTagOfBuildSupportFilesUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuSetTagOfBuildSupportFilesUsingManager: mgr
+    self projectMenuSetTagOfBuildSupportFilesUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 !
 
 projectMenuSetTagUsingManager:aManager
@@ -43218,11 +43147,7 @@
 !
 
 projectMenuSetTagUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    self projectMenuSetTagUsingManager: mgr
+    self projectMenuSetTagUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 !
 
 projectMenuShowGeneratedBuildFile:whichFile
@@ -46652,11 +46577,7 @@
 !
 
 selectorMenuBrowseRepositoryVersionsUsingManagerNamed:sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^self selectorMenuBrowseRepositoryVersionsUsingManager: mgr
+    ^self selectorMenuBrowseRepositoryVersionsUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 02-01-2012 / 12:35:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 24-07-2012 / 18:01:29 / cg"
@@ -46736,11 +46657,7 @@
 !
 
 selectorMenuCompareAgainstNewestInRepositoryUsingManagerNamed: sourceCodeManagerClassName
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^ self selectorMenuCompareAgainstNewestInRepositoryUsingManager: mgr
+    ^ self selectorMenuCompareAgainstNewestInRepositoryUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 02-01-2012 / 12:37:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 24-07-2012 / 18:01:42 / cg"
@@ -46767,11 +46684,7 @@
      with the the newest version found in the repository.
      That is the most recent version."
 
-    |mgr|
-
-    mgr := Smalltalk classNamed:sourceCodeManagerClassName.
-    self assert:(mgr notNil).
-    ^ self selectorMenuCompareClassAgainstNewestInRepositoryUsingManager: mgr
+    ^ self selectorMenuCompareClassAgainstNewestInRepositoryUsingManager: (self sourceCodeManagerNamed:sourceCodeManagerClassName)
 
     "Created: / 21-12-2011 / 20:20:28 / cg"
     "Created: / 02-01-2012 / 12:37:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"