added:12 methods
authorClaus Gittinger <cg@exept.de>
Tue, 28 Feb 2012 22:59:38 +0100
changeset 11294 0a066924ae13
parent 11293 65f343e4dc19
child 11295 92ce4ff0f0f9
added:12 methods comment/format in:5 methods changed:197 methods refactorings; new function: browse common superclass
Tools__NewSystemBrowser.st
--- a/Tools__NewSystemBrowser.st	Tue Feb 28 21:45:20 2012 +0100
+++ b/Tools__NewSystemBrowser.st	Tue Feb 28 22:59:38 2012 +0100
@@ -7649,6 +7649,12 @@
                   translateLabel: true
                 )
                (MenuItem
+                  enabled: hasMultipleClassesSelectedHolder
+                  label: 'Buffer with Common Superclass'
+                  itemValue: classMenuSpawnBufferWithCommonSuperclass
+                  translateLabel: true
+                )
+               (MenuItem
                   enabled: hasClassSelectedHolder
                   label: 'Buffer with Projects'
                   itemValue: classMenuSpawnBufferWithClassProjects
@@ -7690,6 +7696,12 @@
                   translateLabel: true
                 )
                (MenuItem
+                  enabled: hasMultipleClassesSelectedHolder
+                  label: 'Browser on Common Superclass'
+                  itemValue: classMenuSpawnWithCommonSuperclass
+                  translateLabel: true
+                )
+               (MenuItem
                   enabled: hasClassSelectedHolder
                   label: 'Browser on Projects'
                   itemValue: classMenuSpawnClassProjects
@@ -7985,7 +7997,7 @@
         nil
       )
 
-    "Modified: / 17-02-2012 / 22:20:34 / cg"
+    "Modified: / 28-02-2012 / 08:57:35 / cg"
 !
 
 classNewHaskellClassSlice
@@ -9097,7 +9109,7 @@
           )
          (MenuItem
             enabled: anyBreakOrTracePointsAreSetHolder
-            label: 'Remove all Break && Tracepoints'
+            label: 'Remove all Break- && Tracepoints'
             itemValue: debugMenuRemoveAllBreakpoints
             translateLabel: true
           )
@@ -9106,31 +9118,31 @@
           )
          (MenuItem
             enabled: hasMethodSelectedHolder
-            label: 'BreakPoint'
+            label: 'Breakpoint'
             itemValue: debugMenuBreakPoint
             translateLabel: true
           )
          (MenuItem
             enabled: hasMethodSelectedHolder
-            label: 'BreakPoint in Process...'
+            label: 'Breakpoint in Process...'
             itemValue: debugMenuBreakPointIn
             translateLabel: true
           )
          (MenuItem
             enabled: hasMethodSelectedHolder
-            label: 'BreakPoint for Instances Of...'
+            label: 'Breakpoint for Instances Of...'
             itemValue: debugMenuBreakPointFor
             translateLabel: true
           )
          (MenuItem
             enabled: hasMethodSelectedHolder
-            label: 'BreakPoint After...'
+            label: 'Breakpoint After...'
             itemValue: debugMenuBreakPointAfter
             translateLabel: true
           )
          (MenuItem
             enabled: hasMethodSelectedHolder
-            label: 'BreakPoint If...'
+            label: 'Breakpoint If...'
             itemValue: debugMenuBreakPointIf
             translateLabel: true
           )
@@ -9269,6 +9281,8 @@
         nil
         nil
       )
+
+    "Modified: / 28-02-2012 / 11:31:30 / cg"
 !
 
 methodListMenu
@@ -11300,6 +11314,12 @@
                   translateLabel: true
                 )
                (MenuItem
+                  enabled: hasMultipleMethodsSelectedHolder
+                  label: 'Buffer with Common Superclass'
+                  itemValue: methodListMenuSpawnBufferWithCommonSuperclass
+                  translateLabel: true
+                )
+               (MenuItem
                   enabled: hasMethodSelectedHolder
                   label: 'Buffer'
                   itemValue: selectorMenuSpawnMethodBuffer
@@ -11370,6 +11390,12 @@
                   translateLabel: true
                 )
                (MenuItem
+                  enabled: hasMultipleMethodsSelectedHolder
+                  label: 'Browser on Common Superclass'
+                  itemValue: methodListMenuSpawnCommonSuperclass
+                  translateLabel: true
+                )
+               (MenuItem
                   enabled: hasMethodSelectedHolder
                   label: 'Browser'
                   itemValue: selectorMenuSpawnMethod
@@ -11426,7 +11452,7 @@
         nil
       )
 
-    "Modified: / 24-11-2011 / 19:34:53 / cg"
+    "Modified: / 28-02-2012 / 09:06:15 / cg"
 !
 
 selectorSmallTeamMenu
@@ -16904,7 +16930,8 @@
 !
 
 openWithSelectedClasses:aCollectionOfClasses label:titleOrNil
-    "launch a multi class browser."
+    "launch a full browser with multiple classes initially selected.
+     (also selects the corresponding categories)"
 
     |browser|
 
@@ -17351,13 +17378,13 @@
     "/ a q&d hack...
     SelectorEnvironment isNil ifTrue:[ Smalltalk loadPackage:'stx:goodies/refactoryBrowser/browser' ].
 
-    methods := self selectedMethods value.
+    methods := self selectedMethodsValue.
     env := SelectorEnvironment onEnvironment: BrowserEnvironment new.
     methods do:[:mthd|env addClass: mthd mclass selector: mthd selector].
     ^env
 
     "Created: / 16-07-2010 / 09:25:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 03-08-2011 / 22:49:46 / cg"
+    "Modified: / 28-02-2012 / 16:28:38 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'aspects-kludges'!
@@ -17682,11 +17709,17 @@
 !
 
 selectedMethodsClasses
-    ^ (self selectedMethods value collect:[:m | m mclass]) asSet
+    ^ (self selectedMethodsValue collect:[:m | m mclass]) asSet
 
     "Created: / 07-08-2006 / 12:13:37 / cg"
 !
 
+selectedMethodsValue
+    ^ self selectedMethods value ? #()
+
+    "Created: / 28-02-2012 / 16:13:43 / cg"
+!
+
 selectedNamespaces
     ^ self navigationState selectedNamespaces
 
@@ -18775,8 +18808,10 @@
 canInsertSuperclass
     |selected|
 
-    ^ (selected := self selectedClasses value) size > 0
+    ^ (selected := self selectedClassesValue) size > 0
       and:[ (selected collect:[:each | each superclass ]) asSet size == 1].
+
+    "Modified: / 28-02-2012 / 16:45:12 / cg"
 !
 
 canInsertSuperclassHolder
@@ -18839,17 +18874,17 @@
             ^ prj
         ]
     ].
-    projects := ((self selectedClasses value ? #()) collect:[:cls | cls package]) asSet.
+    projects := ((self selectedClassesValue) collect:[:cls | cls package]) asSet.
     projects size == 1 ifTrue:[
         ^ projects first
     ].
-    projects := ((self selectedMethods value ? #()) collect:[:m | m package]) asSet.
+    projects := (self selectedMethodsValue collect:[:m | m package]) asSet.
     projects size == 1 ifTrue:[
         ^ projects first
     ].
     ^ nil
 
-    "Modified: / 28-08-2006 / 23:33:08 / cg"
+    "Modified: / 28-02-2012 / 16:49:07 / cg"
 !
 
 globalCoverageRecordingIsDisabled
@@ -18899,10 +18934,20 @@
     ^ [ self hasAnyCategoryWithAnyUnLoadedClassSelected ]
 !
 
+hasAnyClassSelectedForWhich:aBlock
+    |selectedClasses|
+
+    selectedClasses := self selectedClassesValue.
+    selectedClasses isEmptyOrNil ifTrue:[^ false].
+    ^ selectedClasses contains:aBlock
+
+    "Created: / 28-02-2012 / 16:50:16 / cg"
+!
+
 hasAnyClassWithCoverageInfoSelected
     |selected|
 
-    selected := self selectedClasses value.
+    selected := self selectedClassesValue.
     selected isEmptyOrNil ifTrue:[
         selected := self selectedCategoryClasses
     ].
@@ -18936,12 +18981,19 @@
     ^ [ self hasAnyLoadedClassSelected ]
 !
 
-hasAnyNonIgnoredMethodSelected
+hasAnyMethodSelectedForWhich:aBlock
     |sel|
 
-    sel := self selectedMethods value.
-    ^ (sel size > 0)
-      and:[  sel contains:[:m | m isIgnored not]  ]
+    sel := self selectedMethodsValue.
+    ^ (sel size > 0) and:[ sel contains:aBlock ]
+
+    "Created: / 28-02-2012 / 16:17:24 / cg"
+!
+
+hasAnyNonIgnoredMethodSelected
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isIgnored not]
+
+    "Modified: / 28-02-2012 / 16:17:56 / cg"
 !
 
 hasAnyNonIgnoredMethodSelectedHolder
@@ -18949,11 +19001,9 @@
 !
 
 hasAnyNonPrivateMethodSelected
-    |sel|
-
-    sel := self selectedMethods value.
-    ^ (sel size > 0)
-      and:[  sel contains:[:m | m isPrivate not]  ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isPrivate not]
+
+    "Modified: / 28-02-2012 / 16:18:29 / cg"
 !
 
 hasAnyNonPrivateMethodSelectedHolder
@@ -18961,11 +19011,9 @@
 !
 
 hasAnyNonProtectedMethodSelected
-    |sel|
-
-    sel := self selectedMethods value.
-    ^ (sel size > 0)
-      and:[  sel contains:[:m | m isProtected not]  ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isProtected not]
+
+    "Modified: / 28-02-2012 / 16:18:41 / cg"
 !
 
 hasAnyNonProtectedMethodSelectedHolder
@@ -18973,11 +19021,9 @@
 !
 
 hasAnyNonPublicMethodSelected
-    |sel|
-
-    sel := self selectedMethods value.
-    ^ (sel size > 0)
-      and:[  sel contains:[:m | m isPublic not]  ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isPublic not]
+
+    "Modified: / 28-02-2012 / 16:18:54 / cg"
 !
 
 hasAnyNonPublicMethodSelectedHolder
@@ -19000,7 +19046,7 @@
 hasAnyTestCaseSelected
     |selected|
 
-    selected := self selectedClasses value.
+    selected := self selectedClassesValue.
     selected isEmptyOrNil ifTrue:[
         selected := self selectedCategoryClasses
     ].
@@ -19013,7 +19059,7 @@
     ].
     ^ false.
 
-    "Modified: / 06-07-2011 / 14:07:33 / cg"
+    "Modified: / 28-02-2012 / 16:49:32 / cg"
 !
 
 hasAnyTestCaseSelectedHolder
@@ -19062,7 +19108,9 @@
 !
 
 hasAtMostOneClassesSelected
-    ^ self selectedClasses value size <= 1
+    ^ self selectedClassesValue size <= 1
+
+    "Modified: / 28-02-2012 / 16:49:36 / cg"
 !
 
 hasAtMostOneClassesSelectedHolder
@@ -19164,12 +19212,9 @@
 !
 
 hasClassMethodsSelected
-    |methods|
-
-    methods := self selectedMethods value.
-    methods size == 0 ifTrue:[ ^ false ].
-    ^ (methods conform:[:eachMethod | eachMethod mclass isMeta])
-
+    ^ self hasOnlyMethodsSelectedForWhich:[:eachMethod | eachMethod mclass isMeta]
+
+    "Modified: / 28-02-2012 / 16:42:20 / cg"
 !
 
 hasClassMethodsSelectedHolder
@@ -19183,10 +19228,10 @@
 !
 
 hasClassSelected
-    ^ self selectedClasses value size > 0
-
-    "Created: / 4.2.2000 / 22:02:25 / cg"
-    "Modified: / 6.2.2000 / 01:12:40 / cg"
+    ^ self selectedClassesValue size > 0
+
+    "Created: / 04-02-2000 / 22:02:25 / cg"
+    "Modified: / 28-02-2012 / 16:49:39 / cg"
 !
 
 hasClassSelectedAndCanFileOutBinaryHolder
@@ -19257,12 +19302,8 @@
 !
 
 hasClassSelectedWhichCanBeExcludedFromProject
-    |selectedClasses|
-
-    selectedClasses := self selectedClasses value.
-    selectedClasses isEmptyOrNil ifTrue:[^ false].
-    ^ selectedClasses
-        contains:[:cls |
+    ^ self hasAnyClassSelectedForWhich:
+        [:cls |
             |def|
 
             def := ProjectDefinition definitionClassForPackage:cls package.
@@ -19274,7 +19315,7 @@
         ]
 
     "Created: / 22-02-2007 / 13:55:03 / cg"
-    "Modified: / 30-08-2007 / 18:58:08 / cg"
+    "Modified: / 28-02-2012 / 16:51:10 / cg"
 !
 
 hasClassSelectedWhichCanBeExcludedFromProjectHolder
@@ -19284,12 +19325,8 @@
 !
 
 hasClassSelectedWhichCanBeIncludedInProject
-    |selectedClasses|
-
-    selectedClasses := self selectedClasses value.
-    selectedClasses isEmptyOrNil ifTrue:[^ false].
-    ^ selectedClasses
-        contains:[:cls |
+    ^ self hasAnyClassSelectedForWhich:
+        [:cls |
             |def|
 
             def := ProjectDefinition definitionClassForPackage:cls package.
@@ -19301,7 +19338,7 @@
         ]
 
     "Created: / 22-02-2007 / 13:54:16 / cg"
-    "Modified: / 28-03-2007 / 21:53:51 / cg"
+    "Modified: / 28-02-2012 / 16:50:59 / cg"
 !
 
 hasClassSelectedWhichCanBeIncludedInProjectHolder
@@ -19311,12 +19348,8 @@
 !
 
 hasClassSelectedWhichCanBeMadeAutoloadedInProject
-    |selectedClasses|
-
-    selectedClasses := self selectedClasses value.
-    selectedClasses isEmptyOrNil ifTrue:[^ false].
-    ^ selectedClasses
-        contains:[:cls |
+    ^ self hasAnyClassSelectedForWhich:
+        [:cls |
             |def|
 
             def := ProjectDefinition definitionClassForPackage:cls package.
@@ -19402,8 +19435,9 @@
 !
 
 hasClassWithExtensionsSelected
-    ^ (self selectedClasses value ? #())
-          contains:[:cls | cls hasExtensions].
+    ^ self hasAnyClassSelectedForWhich:[:cls | cls hasExtensions].
+
+    "Modified: / 28-02-2012 / 16:54:34 / cg"
 !
 
 hasClassWithExtensionsSelectedHolder
@@ -19416,7 +19450,7 @@
     ^ [
         | classes |
 
-        classes := self selectedClasses value.
+        classes := self selectedClassesValue.
         classes isEmptyOrNil ifTrue:[
             false
         ] ifFalse:[
@@ -19426,13 +19460,14 @@
 
     "Created: / 03-01-2012 / 15:48:46 / cg"
     "Modified: / 19-01-2012 / 10:44:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 16:54:43 / cg"
 !
 
 hasClassesSelectedAndFileBasedRepositoryExistsHolder
     ^ [
         | classes |
 
-        classes := self selectedClasses value.
+        classes := self selectedClassesValue.
         classes isEmptyOrNil ifTrue:[
             false
         ] ifFalse:[
@@ -19442,13 +19477,14 @@
 
     "Created: / 21-12-2011 / 17:05:28 / cg"
     "Modified: / 19-01-2012 / 10:44:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 16:54:49 / cg"
 !
 
 hasClassesSelectedAndMercurialRepositoryExistsHolder
     ^ [
         | classes |
 
-        classes := self selectedClasses value.
+        classes := self selectedClassesValue.
         classes isEmptyOrNil ifTrue:[
             false
         ] ifFalse:[
@@ -19465,7 +19501,7 @@
     ^ [
         | classes |
 
-        classes := self selectedClasses value.
+        classes := self selectedClassesValue.
         classes isEmptyOrNil ifTrue:[
             false
         ] ifFalse:[
@@ -19481,18 +19517,20 @@
 hasClassesSelectedAndSubversionRepositoryExists
     | classes |
 
-    classes := self selectedClasses value.
+    classes := self selectedClassesValue.
     classes size = 0 ifTrue:[^false].
     ^ classes
         allSatisfy:
             [:cls | self hasSubversionRepositoryFor: cls theNonMetaclass package]
+
+    "Modified: / 28-02-2012 / 16:55:03 / cg"
 !
 
 hasClassesSelectedAndSubversionRepositoryExistsHolder
     ^ [
         | classes |
 
-        classes := self selectedClasses value.
+        classes := self selectedClassesValue.
         classes isEmptyOrNil ifTrue:[
             false
         ] ifFalse:[
@@ -19501,6 +19539,8 @@
                     [:cls | self hasSubversionRepositoryFor: cls theNonMetaclass package]
         ]
     ]
+
+    "Modified: / 28-02-2012 / 16:55:12 / cg"
 !
 
 hasClassesSelectedWhichAreSubclassOf:aBaseClass
@@ -19525,14 +19565,14 @@
 hasClassesWithCommonSuperclassSelected
     |selectedClasses commonSuper|
 
-    selectedClasses := self selectedClasses value.
+    selectedClasses := self selectedClassesValue.
     selectedClasses isEmptyOrNil ifTrue:[^ false].
     selectedClasses size == 1 ifTrue:[^ true].
 
     commonSuper := Behavior commonSuperclassOf:(selectedClasses ? #()).
     ^ commonSuper notNil and:[ selectedClasses includes: commonSuper ].
 
-    "Modified: / 11-02-2007 / 13:47:14 / cg"
+    "Modified: / 28-02-2012 / 16:55:19 / cg"
 !
 
 hasDataBaseRepositoryFor: package
@@ -19576,15 +19616,13 @@
 !
 
 hasEnumTypeClassSelected
-    ^ self hasClassSelected
-      and:[self selectedClasses value
-                contains:[:cls |
+    ^ self hasAnyClassSelectedForWhich:[:cls |
                         cls isLoaded
                         and:[(cls theNonMetaclass askFor:#isAbstract) not
                         and:[ cls withAllSuperclasses contains:[:aSuperClass |
-                                 aSuperClass theNonMetaclass name includesString:'Enum']]] ]]
-
-    "Modified: / 07-09-2007 / 15:38:45 / cg"
+                                 aSuperClass theNonMetaclass name includesString:'Enum']]] ]
+
+    "Modified: / 28-02-2012 / 16:56:28 / cg"
 !
 
 hasEnumTypeClassSelectedHolder
@@ -19594,7 +19632,9 @@
 !
 
 hasExactlyTwoClassesSelected
-    ^ self selectedClasses value size == 2
+    ^ self selectedClassesValue size == 2
+
+    "Modified: / 28-02-2012 / 16:56:33 / cg"
 !
 
 hasExactlyTwoClassesSelectedHolder
@@ -19604,7 +19644,9 @@
 !
 
 hasExactlyTwoMethodsSelected
-    ^ self selectedMethods value size == 2
+    ^ self selectedMethodsValue size == 2
+
+    "Modified: / 28-02-2012 / 16:20:11 / cg"
 !
 
 hasExactlyTwoMethodsSelectedHolder
@@ -19614,10 +19656,12 @@
 !
 
 hasExtensionMethodSelected
-    ^ self selectedMethods value ? #()
-        contains:[:aMethod | aMethod containingClass isNil
-                             or:[ aMethod package ~= aMethod containingClass package ]
-                 ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | 
+                                            m containingClass isNil
+                                            or:[ m package ~= m containingClass package ]
+                                        ]
+
+    "Modified: / 28-02-2012 / 16:21:22 / cg"
 !
 
 hasExtensionMethodSelectedHolder
@@ -19656,12 +19700,9 @@
 !
 
 hasInstanceMethodsSelected
-    |methods|
-
-    methods := self selectedMethods value.
-    methods size == 0 ifTrue:[ ^ false ].
-    ^ (methods conform:[:eachMethod | eachMethod mclass isMeta not])
-
+    ^ self hasOnlyMethodsSelectedForWhich:[:m | m mclass isMeta not]
+
+    "Modified: / 28-02-2012 / 16:26:35 / cg"
 !
 
 hasInstanceMethodsSelectedHolder
@@ -19741,8 +19782,9 @@
 !
 
 hasLoadedClassSelected
-    ^ self hasClassSelected
-      and:[self selectedClasses value contains:[:aClass | aClass isLoaded]]
+    ^ self hasAnyClassSelectedForWhich:[:aClass | aClass isLoaded]
+
+    "Modified: / 28-02-2012 / 16:56:54 / cg"
 !
 
 hasLoadedClassSelectedHolder
@@ -19758,10 +19800,12 @@
     sel := self selectedSelectorInCodeViewOrNil.
     sel isNil ifTrue:[^ false].
 
-    (self selectedClasses value ? #()) contains:[:cls |
-        (cls canUnderstand:sel) ifTrue:[^ true].
-    ].
-    ^ true.
+    (self hasAnyClassSelectedForWhich:[:cls |
+        (cls canUnderstand:sel)]) ifTrue:[^ true].
+
+    ^ false "true".
+
+    "Modified: / 28-02-2012 / 16:57:56 / cg"
 !
 
 hasLocalVariableSelectedInCodeView
@@ -19822,10 +19866,10 @@
 !
 
 hasMethodSelected
-    ^ self selectedMethods value size > 0
-
-    "Created: / 4.2.2000 / 22:09:52 / cg"
-    "Modified: / 5.2.2000 / 23:06:44 / cg"
+    ^ self selectedMethodsValue size > 0
+
+    "Created: / 04-02-2000 / 22:09:52 / cg"
+    "Modified: / 28-02-2012 / 16:37:12 / cg"
 !
 
 hasMethodSelectedAndCanFileOutSIFHolder
@@ -19888,8 +19932,9 @@
 !
 
 hasMethodWithBreakPointSelected
-    ^ self selectedMethods value ? #()
-        contains:[:aMethod | aMethod isBreakpointed ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isBreakpointed ]
+
+    "Modified: / 28-02-2012 / 16:23:11 / cg"
 !
 
 hasMethodWithBreakPointSelectedHolder
@@ -19897,8 +19942,9 @@
 !
 
 hasMethodWithTracePointSelected
-    ^ self selectedMethods value ? #()
-        contains:[:aMethod | aMethod isWrapped and:[aMethod isBreakpointed not] ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isWrapped and:[m isBreakpointed not] ]
+
+    "Modified: / 28-02-2012 / 16:23:22 / cg"
 !
 
 hasMethodWithTracePointSelectedHolder
@@ -19906,8 +19952,9 @@
 !
 
 hasMethodWithWrapSelected
-    ^ self selectedMethods value ? #()
-        contains:[:aMethod | aMethod isWrapped ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isWrapped ]
+
+    "Modified: / 28-02-2012 / 16:23:39 / cg"
 !
 
 hasMethodWithWrapSelectedHolder
@@ -19915,8 +19962,9 @@
 !
 
 hasMethodWithoutBreakPointSelected
-    ^ self selectedMethods value ? #()
-        contains:[:aMethod | aMethod isBreakpointed not ]
+    ^ self hasAnyMethodSelectedForWhich:[:m | m isBreakpointed not ]
+
+    "Modified: / 28-02-2012 / 16:23:53 / cg"
 !
 
 hasMethodWithoutBreakPointSelectedHolder
@@ -19938,7 +19986,9 @@
 !
 
 hasMultipleClassesSelected
-    ^ self selectedClasses value size > 1
+    ^ self selectedClassesValue size > 1
+
+    "Modified: / 28-02-2012 / 16:58:02 / cg"
 !
 
 hasMultipleClassesSelectedHolder
@@ -19948,7 +19998,9 @@
 !
 
 hasMultipleMethodsSelected
-    ^ self selectedMethods value size > 1
+    ^ self selectedMethodsValue size > 1
+
+    "Modified: / 28-02-2012 / 16:24:51 / cg"
 !
 
 hasMultipleMethodsSelectedHolder
@@ -19958,7 +20010,9 @@
 !
 
 hasMultipleSelectorsSelected
-    ^ (self selectedMethods value collect:[:eachMethod | eachMethod selector]) size > 1
+    ^ (self selectedMethodsValue collect:[:eachMethod | eachMethod selector]) size > 1
+
+    "Modified: / 28-02-2012 / 16:24:58 / cg"
 !
 
 hasMultipleSelectorsSelectedHolder
@@ -20059,14 +20113,9 @@
 !
 
 hasNonPrivateClassSelected
-    |classes|
-
-    (classes := self selectedClasses value) size > 0 ifTrue:[
-        ^ classes contains:[:aClass | aClass owningClass isNil]
-    ].
-    ^ false
-
-    "Created: / 11.2.2000 / 11:07:54 / cg"
+    ^ self hasAnyClassSelectedForWhich:[:aClass | aClass owningClass isNil]
+
+    "Created: / 11-02-2000 / 11:07:54 / cg"
 !
 
 hasNonPrivateClassSelectedAndSourceCodeManagerHolder
@@ -20147,6 +20196,15 @@
     ^ [ self hasOOMPackageLoaded ]
 !
 
+hasOnlyMethodsSelectedForWhich:aBlock
+    |sel|
+
+    sel := self selectedMethodsValue.
+    ^ (sel size > 0) and:[ sel conform:aBlock ]
+
+    "Created: / 28-02-2012 / 16:26:17 / cg"
+!
+
 hasOnlyMethodsWithBreakPointSelected
         |anyBreak anyWrap|
 
@@ -20226,7 +20284,7 @@
 !
 
 hasProjectDefinitionWithAnyUnloadedClassSelected
-    ((self selectedClasses value) ? #()) do:[:cls |
+    (self selectedClassesValue) do:[:cls |
         cls isLoaded ifFalse:[^ true].
         cls isProjectDefinition ifTrue:[
             cls hasAllExtensionsLoaded ifFalse:[^ true].
@@ -20236,7 +20294,7 @@
     ^ true
 
     "Created: / 17-08-2006 / 00:49:24 / cg"
-    "Modified: / 12-10-2006 / 21:51:16 / cg"
+    "Modified: / 28-02-2012 / 16:58:59 / cg"
 !
 
 hasProjectDefinitionWithAnyUnloadedClassSelectedHolder
@@ -20323,14 +20381,16 @@
 !
 
 hasRealExtensionMethodSelected
-    ^ self selectedMethods value ? #()
-        contains:[:aMethod | |mPackage|
+    ^ self hasAnyMethodSelectedForWhich:[:aMethod | 
+                    |mPackage|
+
                     mPackage := aMethod package.
                     aMethod containingClass notNil
                     and:[mPackage ~= aMethod containingClass package
-                    and:[mPackage ~= PackageId noProjectID]] ]
-
-    "Modified: / 12-10-2006 / 20:51:30 / cg"
+                    and:[mPackage ~= PackageId noProjectID]] 
+                ]
+
+    "Modified: / 28-02-2012 / 16:24:22 / cg"
 !
 
 hasRealExtensionMethodSelectedHolder
@@ -20410,15 +20470,13 @@
 !
 
 hasSharedPoolClassSelected
-    ^ self hasClassSelected
-      and:[self selectedClasses value
-                contains:[:cls |    
+    ^ self hasAnyClassSelectedForWhich:[:cls |    
                         cls isLoaded  
                         and:[(cls theNonMetaclass askFor:#isAbstract) not
-                        and:[ cls inheritsFrom:SharedPool ]]] ]
+                        and:[ cls inheritsFrom:SharedPool ]]]
 
     "Created: / 25-10-2006 / 09:23:07 / cg"
-    "Modified: / 29-06-2011 / 21:03:43 / cg"
+    "Modified: / 28-02-2012 / 16:59:17 / cg"
 !
 
 hasSharedPoolClassSelectedHolder
@@ -20502,10 +20560,10 @@
 !
 
 hasSingleClassSelected
-    ^ self selectedClasses value size == 1
-
-    "Created: / 4.2.2000 / 22:03:24 / cg"
-    "Modified: / 6.2.2000 / 01:12:45 / cg"
+    ^ self selectedClassesValue size == 1
+
+    "Created: / 04-02-2000 / 22:03:24 / cg"
+    "Modified: / 28-02-2012 / 16:59:22 / cg"
 !
 
 hasSingleClassSelectedAndCanUseRefactoringSupportHolder
@@ -20594,10 +20652,10 @@
 !
 
 hasSingleMethodSelected
-    ^ self selectedMethods value size == 1
-
-    "Created: / 4.2.2000 / 22:10:05 / cg"
-    "Modified: / 5.2.2000 / 23:06:51 / cg"
+    ^ self selectedMethodsValue size == 1
+
+    "Created: / 04-02-2000 / 22:10:05 / cg"
+    "Modified: / 28-02-2012 / 16:25:03 / cg"
 !
 
 hasSingleMethodSelectedAndCanUseRefactoringSupportHolder
@@ -20891,8 +20949,7 @@
 !
 
 hasUnassignedExtensionMethodSelected
-    ^ self selectedMethods value ? #()
-        contains:[:aMethod |
+    ^ self hasAnyMethodSelectedForWhich:[:aMethod |
                     |mPackage mClass|
 
                     mPackage := aMethod package.
@@ -20902,7 +20959,7 @@
                         and:[mPackage = PackageId noProjectID]]
         ]
 
-    "Modified: / 12-10-2006 / 20:51:23 / cg"
+    "Modified: / 28-02-2012 / 16:24:32 / cg"
 !
 
 hasUnassignedExtensionMethodSelectedHolder
@@ -20941,12 +20998,13 @@
 
 hasUpdateMethodSelected
     ^ self hasMethodSelected
-      and:[self selectedMethods value
-               conform:[:eachMethod | #(
+      and:[self hasOnlyMethodsSelectedForWhich:[:eachMethod | #(
                                             #'update:'
                                             #'update:with:'
                                             #'update:with:from:'
                                        ) includes:eachMethod selector ]]
+
+    "Modified: / 28-02-2012 / 16:27:19 / cg"
 !
 
 hasUpdateMethodSelectedHolder
@@ -21041,9 +21099,9 @@
 
 isMethodListBrowserOrHasMultipleClassesSelectedHolder
     ^ [navigationState isMethodListBrowser
-        or:[self selectedClasses value size > 1] ]
-
-    "Created: / 4.2.2000 / 22:23:39 / cg"
+        or:[self selectedClassesValue size > 1] ]
+
+    "Created: / 04-02-2000 / 22:23:39 / cg"
 !
 
 isPlsqlMetaclassPresent
@@ -21292,7 +21350,7 @@
     "/ dont update codeView, as long as no protocol is selected
     ((codeAspect := self codeAspect) == #repositoryLog
     or:[codeAspect == #repositoryHistory]) ifTrue:[
-        self selectedMethods value size == 0 ifTrue:[
+        self selectedMethodsValue size == 0 ifTrue:[
             ^ self
         ]
     ].
@@ -21311,7 +21369,7 @@
     ].
     methodInfoProcess := [ self asyncShowMethodInfo. methodInfoProcess := nil. ] fork.
 
-    "Modified: / 18.8.2000 / 19:23:55 / cg"
+    "Modified: / 28-02-2012 / 16:15:54 / cg"
 !
 
 delayedProtocolSelectionChanged
@@ -21379,7 +21437,7 @@
 
     "/ show method, or class definition
 
-    methods := self selectedMethods value.
+    methods := self selectedMethodsValue.
     methods size == 1 ifTrue:[
         mthd := methods first.
     ].
@@ -21500,7 +21558,7 @@
     self updateProtocolSelectionForChangedMethodSelection.
 
     "Created: / 29-08-2006 / 13:59:06 / cg"
-    "Modified: / 12-02-2012 / 21:26:04 / cg"
+    "Modified: / 28-02-2012 / 16:15:58 / cg"
 !
 
 delayedVariableSelectionChanged
@@ -21898,7 +21956,7 @@
                              or:[ something == #primitiveVariables ]]]]]].
 
         isForAspect ifTrue:[
-            ((self selectedClasses value ? #()) contains:[:cls | cls name = aParameter name]) ifTrue:[
+            ((self selectedClassesValue) contains:[:cls | cls name = aParameter name]) ifTrue:[
                 self enqueueDelayedUpdateCode.
             ]
         ].
@@ -21928,8 +21986,8 @@
 
     super update:something with:aParameter from:changedObject
 
-    "Modified: / 20-11-2006 / 12:29:59 / cg"
     "Modified: / 15-11-2011 / 23:10:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 16:51:27 / cg"
 !
 
 updateBookmarkHolder
@@ -22193,7 +22251,7 @@
 browseImplementorsOfAny
     |selectors|
 
-    selectors := self selectedMethods value collect:[:each | each selector].
+    selectors := self selectedMethodsValue collect:[:each | each selector].
 
     ^ self
         askForMethodAndSpawnSearchTitle:'Browse Implementors of (any in selected):'
@@ -22215,6 +22273,8 @@
         withTextEntry:false
         withMethodList:false
         setSearchPattern:nil
+
+    "Modified: / 28-02-2012 / 16:14:55 / cg"
 !
 
 browseInheritanceOf
@@ -23263,9 +23323,7 @@
         whereDefault := SearchDialog lastStringSearchArea ? self defaultSearchArea.
 
         whereDefault == #classes ifTrue:[
-            ((self selectedMethods value ? #())
-            contains:[:anyMethod | anyMethod mclass notNil
-                                   and:[anyMethod mclass isPrivate]])
+            (self hasAnyMethodSelectedForWhich:[:m | m mclass notNil and:[m mclass isPrivate]])
             ifTrue:[
                 whereDefault := #ownersWithPrivateClasses
             ]
@@ -23285,7 +23343,7 @@
                             brwsr autoSearchPattern:string ignoreCase:ignoreCase.
                          ]
 
-    "Modified: / 22-12-2011 / 10:04:46 / cg"
+    "Modified: / 28-02-2012 / 16:40:11 / cg"
 !
 
 browseMenuMethodsWithStringInHelpSpec
@@ -23295,7 +23353,7 @@
 
     whereDefault := self defaultSearchArea.
     whereDefault == #classes ifTrue:[
-        ((self selectedMethods value ? #()) contains:[:anyMethod | anyMethod mclass isPrivate]) ifTrue:[
+        (self hasAnyMethodSelectedForWhich:[:m | m mclass isPrivate]) ifTrue:[
             whereDefault := #ownersWithPrivateClasses
         ]
     ].
@@ -23310,7 +23368,7 @@
                             brwsr autoSearchPattern:string ignoreCase:ignoreCase.
                          ]
 
-    "Modified: / 22-12-2011 / 10:04:52 / cg"
+    "Modified: / 28-02-2012 / 16:40:37 / cg"
 !
 
 browseMenuMethodsWithStringInMenuSpec
@@ -23320,7 +23378,7 @@
 
     whereDefault := self defaultSearchArea.
     whereDefault == #classes ifTrue:[
-        ((self selectedMethods value ? #()) contains:[:anyMethod | anyMethod mclass isPrivate]) ifTrue:[
+        (self hasAnyMethodSelectedForWhich:[:m | m mclass isPrivate]) ifTrue:[
             whereDefault := #ownersWithPrivateClasses
         ]
     ].
@@ -23335,7 +23393,7 @@
                             brwsr autoSearchPattern:string ignoreCase:ignoreCase.
                          ]
 
-    "Modified: / 22-12-2011 / 10:04:57 / cg"
+    "Modified: / 28-02-2012 / 16:40:54 / cg"
 !
 
 browseMenuMethodsWithStringLiteral
@@ -24084,7 +24142,7 @@
 browseSendersOfAny
     |selectors|
 
-    selectors := self selectedMethods value collect:[:each | each selector].
+    selectors := self selectedMethodsValue collect:[:each | each selector].
 
 false ifTrue:[
 self autoSearchSelector:selectors ignoreCase:false doMatch:true.
@@ -24107,7 +24165,7 @@
                             brwsr autoSearchSelector:selectors ignoreCase:ignoreCase doMatch:doMatch.
                          ]
 
-    "Modified: / 13.11.2001 / 11:18:02 / cg"
+    "Modified: / 28-02-2012 / 16:15:36 / cg"
 !
 
 defaultSearchArea
@@ -24381,6 +24439,14 @@
 !
 
 createBufferWithSpec:aSpec
+    ^ self createBufferWithSpec:aSpec setupFromCurrentState:true
+
+    "Modified: / 27-02-2008 / 08:43:21 / janfrog"
+    "Modified: / 02-06-2011 / 22:34:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 10:21:42 / cg"
+!
+
+createBufferWithSpec:aSpec setupFromCurrentState:doSetup
     |nr bNameList oldNavigationState|
 
     bNameList := self bufferNameList.  "/ for lazy setup
@@ -24404,7 +24470,7 @@
 
     navigationState := NavigationState new.
     navigationState canvasType:aSpec.
-    self setupNavigationStateFrom:oldNavigationState.
+    doSetup ifTrue:[self setupNavigationStateFrom:oldNavigationState ].
 
     navigationState canvas:(self newCanvasWithSpec:aSpec).
 
@@ -24422,6 +24488,7 @@
     "Modified: / 29-02-2000 / 10:40:04 / cg"
     "Modified: / 27-02-2008 / 08:43:21 / janfrog"
     "Modified: / 02-06-2011 / 22:34:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Created: / 28-02-2012 / 10:21:08 / cg"
 !
 
 destroyTab:tabIndex
@@ -24435,13 +24502,14 @@
         brwsr := self class openInClass:aClass selector:selector
     ] ifFalse:[
         brwsr := self.
-        brwsr createBuffer.
+        "/ brwsr createBuffer.
+        brwsr createBufferWithSpec:#fullBrowserSpec setupFromCurrentState:false.
         brwsr selectedCategories value:nil. "/ kludge workaround; classList needs a change to update.
         brwsr switchToClass:aClass selector:selector.
     ].
     ^ brwsr
 
-    "Modified: / 09-10-2006 / 12:03:24 / cg"
+    "Modified: / 28-02-2012 / 10:22:24 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'menu actions-category'!
@@ -24984,14 +25052,15 @@
 !
 
 categoryMenuRewrite
-
     | classes |
-    classes := self selectedClassesInCategories: self selectedCategories value.
+
+    classes := self selectedClassesInCategories: self selectedCategoriesValue.
     MethodRewriter new
         classes: classes;
         open
 
     "Created: / 21-07-2007 / 07:06:53 / janfrog"
+    "Modified: / 28-02-2012 / 17:01:34 / cg"
 !
 
 categoryMenuSpawnBrowser
@@ -25178,9 +25247,9 @@
     ].
 
     categoryList := categories copy.
-    selectedClasses := self selectedClasses value copy.
+    selectedClasses := self selectedClassesValue copy.
     selectedProtocols := self selectedProtocols value copy.
-    selectedMethods := self selectedMethods value copy.
+    selectedMethods := self selectedMethodsValue copy.
 
     self
         newBrowserOrBufferDependingOn:where
@@ -25207,7 +25276,7 @@
             brwsr immediateUpdate value:false.
         ]
 
-    "Modified: / 13-10-2006 / 11:55:53 / cg"
+    "Modified: / 28-02-2012 / 16:52:32 / cg"
 !
 
 spawnCategoryBrowserIn:where
@@ -25245,7 +25314,7 @@
 
     |classes theSingleClass lbl badMethodsGenerator badMethodInfoHolder badClassInfoHolder|
 
-    classes := self selectedClasses value.
+    classes := self selectedClassesValue.
     classes isEmptyOrNil ifTrue:[^ self].
 
     (theSingleClass := self theSingleSelectedClass) notNil ifTrue:[
@@ -25306,7 +25375,7 @@
         sortBy:#class
 
     "Created: / 18-08-2000 / 22:43:56 / cg"
-    "Modified: / 18-05-2010 / 15:13:52 / cg"
+    "Modified: / 28-02-2012 / 16:45:37 / cg"
 !
 
 classMenuCheckErrors
@@ -25622,7 +25691,7 @@
 
     list := supers.
 
-    self selectedClasses value size > 1 ifTrue:[
+    self selectedClassesValue size > 1 ifTrue:[
         reqString := 'Generate isXXX methods in which superclass ?'.
         title := 'Generate isXXX methods'.
     ] ifFalse:[
@@ -25651,7 +25720,7 @@
     LastMethodMoveOrCopyTargetClass := newClass theNonMetaclass name.
     ^ newClass.
 
-    "Modified: / 22.12.2001 / 03:04:48 / cg"
+    "Modified: / 28-02-2012 / 16:45:08 / cg"
 !
 
 checkCompilabilityOf:aClass errorsOnly:errorsOnly outputTo:outStream
@@ -25803,13 +25872,15 @@
     classList := self classListGenerator value.
     self assert:classList isOrderedCollection.
 
-    classesToHide := self selectedClasses value copy.
+    classesToHide := self selectedClassesValue copy.
     classesToHide do:[:classToHide |
         classList removeIdentical:classToHide
     ].
     classList sort:[:a :b | a name < b name].
 
     self classListGenerator changed.
+
+    "Modified: / 28-02-2012 / 16:45:26 / cg"
 !
 
 classMenuChangeAspect:aspect
@@ -26091,12 +26162,12 @@
 classMenuExcludeFromProject
     |projectDefinitionClasses|
 
-    projectDefinitionClasses := (self selectedClasses value collect:[:cls | cls projectDefinitionClass]) asSet.
+    projectDefinitionClasses := (self selectedClassesValue collect:[:cls | cls projectDefinitionClass]) asSet.
 
     projectDefinitionClasses do:[:eachDefinitionClass |
         |toExcludeForThis|
 
-        toExcludeForThis := self selectedClasses value select:[:cls | cls projectDefinitionClass == eachDefinitionClass].
+        toExcludeForThis := self selectedClassesValue select:[:cls | cls projectDefinitionClass == eachDefinitionClass].
 
         self
             generateUndoableChange:(resources string:'Exclude %1 class(es) from Project %2' with:toExcludeForThis size with:eachDefinitionClass name)
@@ -26107,7 +26178,7 @@
     ].
 
     "Created: / 19-02-2007 / 17:29:12 / cg"
-    "Modified: / 26-01-2012 / 14:05:59 / cg"
+    "Modified: / 28-02-2012 / 16:46:23 / cg"
 !
 
 classMenuFileOutAs
@@ -26141,7 +26212,7 @@
                self
                    fileOutClass:cls
                    askForFile:true
-                   withCancelAll:(self selectedClasses value size > 1)
+                   withCancelAll:(self selectedClassesValue size > 1)
                    format:aFormatSymbolOrNil
                    sourceMode:mode.
             ]
@@ -26153,12 +26224,14 @@
         ifPrivate:
             [:cls | |owner|
                 owner := cls owningClass.
-                (self selectedClasses value includes:owner) ifFalse:[
+                (self selectedClassesValue includes:owner) ifFalse:[
                     self warn:'Cannot fileOut private class: %1\\Please fileOut the owning class (%2).'
                         with:cls nameWithoutPrefix allBold
                         with:owner name.
                 ]
             ]
+
+    "Modified: / 28-02-2012 / 16:46:20 / cg"
 !
 
 classMenuFileOutBinaryAs
@@ -26367,9 +26440,9 @@
 classMenuGenerateApplicationCode
     "create application code methods"
 
-    self classMenuGenerateApplicationCodeForClasses:(self selectedClasses value ? #())
-
-    "Modified: / 21-01-2012 / 11:10:11 / cg"
+    self classMenuGenerateApplicationCodeForClasses:(self selectedClassesValue)
+
+    "Modified: / 28-02-2012 / 16:46:34 / cg"
 !
 
 classMenuGenerateApplicationCodeFor:cls using:generator
@@ -26651,7 +26724,9 @@
 !
 
 classMenuGenerateProjectDefinitions
-    self generateProjectDefinitionsIn:(self selectedClasses value ? #())
+    self generateProjectDefinitionsIn:(self selectedClassesValue)
+
+    "Modified: / 28-02-2012 / 16:46:49 / cg"
 !
 
 classMenuGenerateRedefinedInstanceCreationMethods
@@ -26823,12 +26898,12 @@
 
     |projectDefinitionClasses|
 
-    projectDefinitionClasses := (self selectedClasses value collect:[:cls | cls projectDefinitionClass]) asSet.
+    projectDefinitionClasses := (self selectedClassesValue collect:[:cls | cls projectDefinitionClass]) asSet.
 
     projectDefinitionClasses do:[:eachDefinitionClass |
         |toIncludeForThis|
 
-        toIncludeForThis := self selectedClasses value select:[:cls | cls projectDefinitionClass == eachDefinitionClass].
+        toIncludeForThis := self selectedClassesValue select:[:cls | cls projectDefinitionClass == eachDefinitionClass].
 
         self
             generateUndoableChange:(resources string:'Include %1 class(es) in Project %2 (Make Compiled Class)' with:toIncludeForThis size with:eachDefinitionClass name)
@@ -26839,7 +26914,7 @@
     ].
 
     "Created: / 19-02-2007 / 16:46:16 / cg"
-    "Modified: / 26-01-2012 / 14:05:25 / cg"
+    "Modified: / 28-02-2012 / 16:47:12 / cg"
 !
 
 classMenuInitialize
@@ -26859,7 +26934,7 @@
 
     |selectedClasses superClasses superClass name existingClass|
 
-    selectedClasses := self selectedClasses value.
+    selectedClasses := self selectedClassesValue.
     selectedClasses do:[:each | each autoload].
 
     superClasses := selectedClasses collect:[:c | c superclass].
@@ -26892,6 +26967,8 @@
     self switchToClassNamed:name.
 "/            meta: self isMeta
 "/            categories: self categories
+
+    "Modified: / 28-02-2012 / 16:47:15 / cg"
 !
 
 classMenuInspectClass
@@ -27028,21 +27105,21 @@
     "fileOut selected classes (chunk format) and eMail to someone"
 
     self
-        mailClasses:self selectedClasses value
+        mailClasses:self selectedClassesValue
         subject:'Class Source from Browser'
 
-    "Modified: / 20-09-2007 / 15:03:32 / cg"
+    "Modified: / 28-02-2012 / 16:47:18 / cg"
 !
 
 classMenuMakeAutoloadedInProject
     |projectDefinitionClasses|
 
-    projectDefinitionClasses := (self selectedClasses value collect:[:cls | cls theNonMetaclass projectDefinitionClass]) asSet.
+    projectDefinitionClasses := (self selectedClassesValue collect:[:cls | cls theNonMetaclass projectDefinitionClass]) asSet.
 
     projectDefinitionClasses do:[:eachDefinitionClass |
         |toMakeAutoloadedForThis|
 
-        toMakeAutoloadedForThis := self selectedClasses value select:[:cls | cls theNonMetaclass projectDefinitionClass == eachDefinitionClass].
+        toMakeAutoloadedForThis := self selectedClassesValue select:[:cls | cls theNonMetaclass projectDefinitionClass == eachDefinitionClass].
         self
             generateUndoableChange:(resources string:'Make %1 class(es) autoloaded in %2' with:toMakeAutoloadedForThis size with:eachDefinitionClass name)
             overClasses:(Array with: eachDefinitionClass)
@@ -27061,7 +27138,7 @@
 
     currentClass := self theSingleSelectedClass.
     currentClass isNil ifTrue:[
-        currentClass := self selectedClasses value first
+        currentClass := self selectedClassesValue first
     ].
     currentClass := currentClass theNonMetaclass.
     supers := (currentClass allSuperclasses reverse collect:[:cls | cls name]).
@@ -27119,7 +27196,7 @@
         eachClass theMetaclass setOwningClass:newOwner.
     ].
 
-    "Modified: / 12-09-2006 / 13:50:04 / cg"
+    "Modified: / 28-02-2012 / 16:47:28 / cg"
 !
 
 classMenuMakePublic
@@ -27302,7 +27379,7 @@
 
     |newProject packages msg|
 
-    packages := self selectedClasses value collect:[:each | each package].
+    packages := self selectedClassesValue collect:[:each | each package].
     packages size == 1 ifTrue:[
         msg := resources string:'Move class(es) from ''%1'' to which project:'
                            with:packages first allBold.
@@ -27316,8 +27393,8 @@
         ]
     ].
 
-    "Created: / 17.2.2000 / 22:50:07 / cg"
-    "Modified: / 17.2.2000 / 23:03:01 / cg"
+    "Created: / 17-02-2000 / 22:50:07 / cg"
+    "Modified: / 28-02-2012 / 16:47:31 / cg"
 !
 
 classMenuNewApplication
@@ -27753,7 +27830,7 @@
 !
 
 classMenuRegenerateProjectContentsDefinitions
-    self updateProjectContentsDefinitionsIn:(self selectedClasses value ? #()) regenerate:true
+    self updateProjectContentsDefinitionsIn:(self selectedClassesValue) regenerate:true
 
     "Created: / 12-10-2006 / 16:53:30 / cg"
 !
@@ -27784,8 +27861,8 @@
     |offerCancel offerYesToAll classesToRemove|
 
     classesToRemove := OrderedCollection new.
-    offerCancel := self selectedClasses value size > 1.
-    offerYesToAll := self selectedClasses value size > 1.
+    offerCancel := self selectedClassesValue size > 1.
+    offerYesToAll := self selectedClassesValue size > 1.
 
     YesToAllConfirmation handleConfirmationIn:[
         self
@@ -27862,7 +27939,7 @@
         ].
     ]
 
-    "Modified: / 04-09-2006 / 11:22:02 / cg"
+    "Modified: / 28-02-2012 / 16:47:47 / cg"
 !
 
 classMenuRename
@@ -28061,7 +28138,7 @@
 
 classMenuRewrite
     MethodRewriter new
-        classes: self selectedClasses value;
+        classes: self selectedClassesValue;
         open
 
     "Created: / 05-07-2011 / 14:48:32 / cg"
@@ -28110,53 +28187,73 @@
 classMenuSpawnBufferWithClassOrSubclassReferences
     "add a buffer showing references to any of the selected classes or any of its subclasses"
 
-    self spawnClassOrSubclassReferencesBrowserFor:(self selectedClasses value) in:#newBuffer
+    self spawnClassOrSubclassReferencesBrowserFor:(self selectedClassesValue) in:#newBuffer
+
+    "Modified: / 28-02-2012 / 16:48:06 / cg"
 !
 
 classMenuSpawnBufferWithClassProjects
     "add a new buffer showing the selected classes projects"
 
-    self spawnClassProjectsBrowserFor:(self selectedClasses value) in:#newBuffer
-
-    "Created: / 18.8.2000 / 19:12:33 / cg"
+    self spawnClassProjectsBrowserFor:(self selectedClassesValue) in:#newBuffer
+
+    "Created: / 18-08-2000 / 19:12:33 / cg"
 !
 
 classMenuSpawnBufferWithClassReferences
     "add a buffer showing references to any of the selected classes"
 
-    self spawnClassReferencesBrowserFor:(self selectedClasses value) in:#newBuffer
+    self spawnClassReferencesBrowserFor:(self selectedClassesValue) in:#newBuffer
+
+    "Modified: / 28-02-2012 / 16:48:11 / cg"
+!
+
+classMenuSpawnBufferWithCommonSuperclass
+    "open a new browser showing the selected classes' common superclass"
+
+    self spawnWithCommonSuperclassIn:#newBuffer
+
+    "Created: / 28-02-2012 / 08:58:56 / cg"
 !
 
 classMenuSpawnClass
     "open a new browser showing the selected classes only"
 
-    self spawnClassBrowserFor:(self selectedClasses value) in:#newBrowser
+    self spawnClassBrowserFor:(self selectedClassesValue) in:#newBrowser
+
+    "Modified: / 28-02-2012 / 16:48:14 / cg"
 !
 
 classMenuSpawnClassBuffer
     "add a buffer showing the selected classes only"
 
-    self spawnClassBrowserFor:(self selectedClasses value) in:#newBuffer
+    self spawnClassBrowserFor:(self selectedClassesValue) in:#newBuffer
+
+    "Modified: / 28-02-2012 / 16:48:16 / cg"
 !
 
 classMenuSpawnClassOrSubclassReferences
     "open a new browser showing references to the selected classes or any of its subclass"
 
-    self spawnClassOrSubclassReferencesBrowserFor:(self selectedClasses value) in:#newBrowser
+    self spawnClassOrSubclassReferencesBrowserFor:(self selectedClassesValue) in:#newBrowser
+
+    "Modified: / 28-02-2012 / 16:48:20 / cg"
 !
 
 classMenuSpawnClassProjects
     "open a new browser showing the selected classes projects"
 
-    self spawnClassProjectsBrowserFor:(self selectedClasses value) in:#newBrowser
-
-    "Created: / 18.8.2000 / 19:12:14 / cg"
+    self spawnClassProjectsBrowserFor:(self selectedClassesValue) in:#newBrowser
+
+    "Created: / 18-08-2000 / 19:12:14 / cg"
 !
 
 classMenuSpawnClassReferences
     "open a new browser showing references to the selected classes "
 
-    self spawnClassReferencesBrowserFor:(self selectedClasses value) in:#newBrowser
+    self spawnClassReferencesBrowserFor:(self selectedClassesValue) in:#newBrowser
+
+    "Modified: / 28-02-2012 / 16:48:26 / cg"
 !
 
 classMenuSpawnWithAllSubclasses
@@ -28171,12 +28268,20 @@
     self spawnWithAllSuperclassesIn:#newBrowser
 !
 
+classMenuSpawnWithCommonSuperclass
+    "open a new browser showing the selected classes' common superclass"
+
+    self spawnWithCommonSuperclassIn:#newBrowser
+
+    "Created: / 28-02-2012 / 08:58:10 / cg"
+!
+
 classMenuUpdate
     self classListApp forceUpdateList
 !
 
 classMenuUpdateProjectContentsDefinitions
-    self updateProjectContentsDefinitionsIn:(self selectedClasses value ? #()) regenerate:false
+    self updateProjectContentsDefinitionsIn:(self selectedClassesValue) regenerate:false
 
     "Created: / 10-10-2006 / 20:50:23 / cg"
 !
@@ -28814,7 +28919,7 @@
 
     self
         generateUndoableChange:nameOfOperation
-        overClasses:(self selectedClasses value ? #())
+        overClasses:(self selectedClassesValue)
         via:aBlock
 
     "Created: / 21-01-2012 / 10:22:19 / cg"
@@ -28825,8 +28930,10 @@
 
     self
         generateUndoableChange:nameOfOperation
-        overClasses:(self selectedClasses value ? #())
+        overClasses:(self selectedClassesValue)
         via:aBlock
+
+    "Modified: / 28-02-2012 / 16:49:22 / cg"
 !
 
 generateUndoableChangeOverSelectedMethods:nameOfOperation via:aBlock
@@ -28834,7 +28941,7 @@
 
     |selMethods generator count dict method methodName languageOfFirstMethod|
 
-    selMethods := self selectedMethods value.
+    selMethods := self selectedMethodsValue.
 
     languageOfFirstMethod := selMethods first mclass programmingLanguage.
     (selMethods conform:[:mthd | (mthd mclass programmingLanguage) = languageOfFirstMethod]) ifFalse:[
@@ -28861,7 +28968,7 @@
         dict at:#sForPlural put:'s'.
         dict at:#singleMethodNameOrNumberOfMethods put:(count printString allBold , ' methods').
     ] ifFalse:[
-        method := self selectedMethods value first.
+        method := self selectedMethodsValue first.
         methodName := method mclass nameWithoutPrefix , '>>' , method selector allBold.
         dict at:#numMethodsOrEmpty put:' '.
         dict at:#inSingleMethodOrEmpty put:' in ' , methodName.
@@ -28873,7 +28980,7 @@
     generator executeCollectedChangesNamed:(nameOfOperation expandPlaceholdersWith:dict)
 
     "Modified: / 06-12-2011 / 15:27:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 21-12-2011 / 15:46:19 / cg"
+    "Modified: / 28-02-2012 / 16:16:27 / cg"
 !
 
 launchSelectedApplication
@@ -28954,14 +29061,18 @@
 moveSelectedClassesToCategory:newCategory
     "change the class-category of the selected classes"
 
-    self moveClasses:(self selectedClasses value) toCategory:newCategory
+    self moveClasses:(self selectedClassesValue) toCategory:newCategory
+
+    "Modified: / 28-02-2012 / 16:59:32 / cg"
 !
 
 moveSelectedClassesToProject:newProject
     "change the packageID of the selected classes
      (and optionally the packageID of any methods (if they are from different packages)"
 
-    self moveClasses:(self selectedClasses value) toProject:newProject
+    self moveClasses:(self selectedClassesValue) toProject:newProject
+
+    "Modified: / 28-02-2012 / 16:59:35 / cg"
 !
 
 openClassDocumentationFor:aClass
@@ -29206,7 +29317,7 @@
         selectedClasses := classes copy.
         navigationState notNil ifTrue:[
             selectedProtocols := self selectedProtocols value copy.
-            selectedMethods := self selectedMethods value copy.
+            selectedMethods := self selectedMethodsValue copy.
             (selectedMethods size > 0
             and:[ selectedProtocols size == 0 ]) ifTrue:[
                 selectedProtocols := (selectedMethods collect:[:each | each category]) asSet asOrderedCollection
@@ -29235,7 +29346,7 @@
             brwsr meta onChangeEvaluate:[ brwsr classListGenerator changed ].
         ]
 
-    "Modified: / 26-10-2011 / 18:49:25 / cg"
+    "Modified: / 28-02-2012 / 16:30:36 / cg"
 !
 
 spawnClassBrowserForSearch:searchBlock sortBy:sortByWhat in:openHow label:lbl
@@ -29568,29 +29679,31 @@
 !
 
 spawnSingleClassBrowserFor:classes in:where
-    "browse selected class(es);
+    "browse selected class(es) in a single class (classlist) browser
         where is: #newBrowser - open a new browser showing the classes
         where is: #newBuffer  - add a new buffer showing the classes"
 
     ^ self spawnSingleClassBrowserFor:classes label:nil in:where
 
     "Created: / 22-07-2011 / 18:41:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified (comment): / 28-02-2012 / 09:22:57 / cg"
 !
 
 spawnSingleClassBrowserFor:class label:titleOrNil in:where
-    "browse selected class(es);
+    "browse selected class(es) in a single class (classlist) browser
         where is: #newBrowser - open a new browser showing the classes
         where is: #newBuffer  - add a new buffer showing the classes"
 
     ^ self spawnSingleClassBrowserFor:class label:titleOrNil in:where select:true
 
     "Created: / 22-07-2011 / 18:42:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified (comment): / 28-02-2012 / 09:23:05 / cg"
 !
 
 spawnSingleClassBrowserFor:class label:labelOrNil in:where select:doSelectIn
     "browse selected class(es);
-        where is: #newBrowser - open a new browser showing the classes
-        where is: #newBuffer  - add a new buffer showing the classes"
+        where is: #newBrowser - open a new browser showing the class
+        where is: #newBuffer  - add a new buffer showing the class"
 
     |spec meta allClasses selectedClasses selectedProtocols selectedMethods singleClass doSelect|
 
@@ -29607,7 +29720,7 @@
         selectedClasses := Array with: singleClass.
         navigationState notNil ifTrue:[
             selectedProtocols := self selectedProtocols value copy.
-            selectedMethods := self selectedMethods value copy.
+            selectedMethods := self selectedMethodsValue copy.
             (selectedMethods size > 0
             and:[ selectedProtocols size == 0 ]) ifTrue:[
                 selectedProtocols := (selectedMethods collect:[:each | each category]) asSet asOrderedCollection
@@ -29637,6 +29750,7 @@
         ]
 
     "Created: / 22-07-2011 / 18:37:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 16:36:30 / cg"
 !
 
 spawnWithAllSubclassesIn:how
@@ -29655,13 +29769,13 @@
         ]
     ].
 
-    (all removeAllFoundIn:self selectedClasses value; yourself) isEmpty ifTrue:[
+    (all removeAllFoundIn:self selectedClassesValue; yourself) isEmpty ifTrue:[
         self information:'No additional subclasses (same as selected).'.
         ^ self
     ].
     brwsr := self spawnMultipleClassBrowserFor:allOrdered sortBy:#doNotSort in:how.
 
-    "Modified: / 12-09-2006 / 13:43:19 / cg"
+    "Modified: / 28-02-2012 / 16:53:07 / cg"
 !
 
 spawnWithAllSuperclassesIn:how
@@ -29679,13 +29793,33 @@
             ]
         ]
     ].
-    (all removeAllFoundIn:(self selectedClasses value); yourself) isEmpty ifTrue:[
+    (all removeAllFoundIn:(self selectedClassesValue); yourself) isEmpty ifTrue:[
         self information:'No additional superclasses (same as selected).'.
         ^ self
     ].
     brwsr := self spawnMultipleClassBrowserFor:allOrdered sortBy:#doNotSort in:how.
 
-    "Modified: / 12-09-2006 / 13:43:11 / cg"
+    "Modified: / 28-02-2012 / 16:53:10 / cg"
+!
+
+spawnWithCommonSuperclassIn:how
+    "open a new browser showing the selected classes' common superclass"
+
+    ^ self spawnWithCommonSuperclassOf:(self selectedNonMetaclasses) in:how
+
+    "Created: / 28-02-2012 / 09:02:42 / cg"
+!
+
+spawnWithCommonSuperclassOf:classes in:how
+    "open a new browser showing the classes' common superclass"
+
+    |common|
+
+    common := Behavior commonSuperclassOf:classes.
+    "/ self spawnClassBrowserFor:{ common } label:'Common superclass' in:how.
+    self spawnFullBrowserInClass:common selector:nil in:how
+
+    "Created: / 28-02-2012 / 09:07:39 / cg"
 !
 
 variablesMenuGenerateMultiSetterMethod
@@ -30114,7 +30248,7 @@
 
                     owner := cls topOwningClass.
                     (alreadyCheckedOut includes:owner) ifFalse:[
-                        ((self selectedClasses value ? #()) includes:owner) ifFalse:[
+                        ((self selectedClassesValue ? #()) includes:owner) ifFalse:[
                             answer := Dialog
                                         confirmWithCancel:(resources string:'Cannot checkOut private class: %1\\Shall the owner ''%2'' be checked out ?'
                                                                           with:cls nameWithoutPrefix allBold
@@ -30238,7 +30372,7 @@
 
     ^ self
         classMenuCheckIn:doCheck
-        classes:(self selectedClasses value)
+        classes:(self selectedClassesValue)
         usingManager:aManagerOrNil
 
     "Created: / 21-12-2011 / 18:21:30 / cg"
@@ -30380,7 +30514,9 @@
      or merge-in the repository version.
      "
 
-    self checkOutClasses:(self selectedClasses value) askForRevision:true
+    self checkOutClasses:(self selectedClassesValue) askForRevision:true
+
+    "Modified: / 28-02-2012 / 16:45:43 / cg"
 !
 
 classMenuCheckOutNewest
@@ -30389,7 +30525,9 @@
      or merge-in the repository version.
      "
 
-    self checkOutClasses:(self selectedClasses value) askForRevision:false
+    self checkOutClasses:(self selectedClassesValue) askForRevision:false
+
+    "Modified: / 28-02-2012 / 16:45:46 / cg"
 !
 
 classMenuCheckOutNewestUsingManager: manager
@@ -30398,7 +30536,7 @@
      or merge-in the repository version.
      "
 
-    self checkOutClasses:(self selectedClasses value) askForRevision:false usingManager: manager
+    self checkOutClasses:(self selectedClassesValue) askForRevision:false usingManager: manager
 
     "Modified: / 11-10-2011 / 23:09:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Created: / 21-12-2011 / 20:16:21 / cg"
@@ -30411,7 +30549,7 @@
      or merge-in the repository version.
      "
 
-    self checkOutClasses:(self selectedClasses value) askForRevision:true usingManager: manager
+    self checkOutClasses:(self selectedClassesValue) askForRevision:true usingManager: manager
 
     "Modified: / 11-10-2011 / 23:10:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Created: / 21-12-2011 / 20:16:41 / cg"
@@ -30422,9 +30560,9 @@
      with the the newest version found in the repository.
      That is the most recent version."
 
-    self doCompareClassesWithRepository:(self selectedClasses value).
-
-    "Modified: / 13-10-2006 / 11:44:09 / cg"
+    self doCompareClassesWithRepository:(self selectedClassesValue).
+
+    "Modified: / 28-02-2012 / 16:45:55 / cg"
 !
 
 classMenuCompareAgainstNewestInRepositoryUsingManager:aManagerOrNil
@@ -30432,9 +30570,8 @@
      with the the newest version found in the repository.
      That is the most recent version."
 
-    self doCompareClassesWithRepository:(self selectedClasses value) usingManager:aManagerOrNil.
-
-    "Modified: / 13-10-2006 / 11:44:09 / cg"
+    self doCompareClassesWithRepository:(self selectedClassesValue) usingManager:aManagerOrNil.
+
     "Created: / 21-12-2011 / 19:55:56 / cg"
 !
 
@@ -30537,12 +30674,12 @@
         ].
 
         revString := rev.
-        "/ this takes some time ... is it worth ?
-        (newestRev := mgr newestRevisionOf:currentClass) notNil ifTrue:[
-            newestRev ~= rev ifTrue:[
-                revString := rev , ' (newest is ' , newestRev , ')'
-            ]
-        ].
+"/        "/ this takes some time ... is it worth ?
+"/        (newestRev := mgr newestRevisionOf:currentClass) notNil ifTrue:[
+"/            newestRev ~= rev ifTrue:[
+"/                revString := rev , ' (newest is ' , newestRev , ')'
+"/            ]
+"/        ].
 
         self busyLabel:'comparing  ...' with:nil.
 
@@ -30881,7 +31018,7 @@
 
     |collectionOfClasses classes classesToUnload current fileName fileVersion remote diffs allDiffs title|
 
-    collectionOfClasses := self selectedClasses value.
+    collectionOfClasses := self selectedClassesValue.
 
     collectionOfClasses do:[:eachClass |
         |className metaclassName|
@@ -31192,7 +31329,7 @@
     |collectionOfClasses classes classesToUnload current remote diffs allDiffs
      title|
 
-    collectionOfClasses := self selectedClasses value.
+    collectionOfClasses := self selectedClassesValue.
 
     classesToUnload := IdentitySet new.
     classes :=
@@ -31254,7 +31391,7 @@
 
     "Modified: / 18-10-2006 / 13:08:21 / User"
     "Created: / 11-11-2006 / 15:36:43 / cg"
-    "Modified: / 12-09-2011 / 11:55:16 / cg"
+    "Modified: / 28-02-2012 / 16:46:07 / cg"
 !
 
 classMenuEditVersionInRepository
@@ -31338,7 +31475,7 @@
                self 
                 showRepositoryLogOf:cls short:shortOrNot
                 beforeLogDo:[:s |
-                    self selectedClasses value size > 1 ifTrue:[
+                    self selectedClassesValue size > 1 ifTrue:[
                         s nextPutLine:'-----------------------------------------------------------'. 
                         s nextPutLine:('%1 log for %2:' 
                                             bindWith:(shortOrNot ifTrue:['Short'] ifFalse:['Full']) 
@@ -31356,13 +31493,15 @@
             [:cls | 
                 |owner|
                 owner := cls owningClass.
-                (self selectedClasses value includes:owner) ifFalse:[
+                (self selectedClassesValue includes:owner) ifFalse:[
                     self warn:'cannot show log of private class: %1\\Please see the log of the owning class (%2).'
                         with:cls nameWithoutPrefix allBold
                         with:owner name.
                 ]
             ].
     self normalLabel.
+
+    "Modified: / 28-02-2012 / 16:47:53 / cg"
 !
 
 classMenuRevisionLog:shortOrNot usingManager: manager
@@ -31388,7 +31527,7 @@
                self 
                 showRepositoryLogOf:cls short:shortOrNot usingManager: manager
                 beforeLogDo:[:s |
-                    self selectedClasses value size > 1 ifTrue:[
+                    self selectedClassesValue size > 1 ifTrue:[
                         s nextPutLine:'-----------------------------------------------------------'. 
                         s nextPutLine:('%1 log for %2:' 
                                             bindWith:(shortOrNot ifTrue:['Short'] ifFalse:['Full']) 
@@ -31406,7 +31545,7 @@
             [:cls | 
                 |owner|
                 owner := cls owningClass.
-                (self selectedClasses value includes:owner) ifFalse:[
+                (self selectedClassesValue includes:owner) ifFalse:[
                     self warn:'cannot show log of private class: %1\\Please see the log of the owning class (%2).'
                         with:cls nameWithoutPrefix allBold
                         with:owner name.
@@ -34395,7 +34534,7 @@
 debugMenuOpenCallGraphForClasses
     "open an OOM CallGraph view on the selected class(es)"
 
-    self debugMenuOpenCallGraphForClasses:(self selectedClasses value).
+    self debugMenuOpenCallGraphForClasses:(self selectedClassesValue).
 
     "Created: / 27-04-2010 / 14:07:58 / cg"
 !
@@ -34674,7 +34813,7 @@
 
     |selectedClasses|
 
-    selectedClasses := self selectedClasses value.
+    selectedClasses := self selectedClassesValue.
     selectedClasses isEmptyOrNil ifTrue:[
         selectedClasses := self selectedCategoryClasses
     ].
@@ -34692,7 +34831,7 @@
         ]
     ].
 
-    "Modified: / 06-07-2011 / 14:08:06 / cg"
+    "Modified: / 28-02-2012 / 16:52:45 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'menu actions-help'!
@@ -34747,14 +34886,14 @@
 
     |classes|
 
-    classes := self selectedMethods value collect:[:each | each mclass].
-    classes := classes asIdentitySet.
+    classes := self selectedMethodsClasses asOrderedCollection.
 
     ^ self
         classMenuCheckIn:true
-        classes:(classes asOrderedCollection)
+        classes:classes
 
     "Modified: / 18-11-2011 / 18:49:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 09:12:37 / cg"
 !
 
 methodListMenuCheckInClassUsingManager: manager
@@ -34762,12 +34901,11 @@
 
     |classes|
 
-    classes := self selectedMethods value collect:[:each | each mclass].
-    classes := classes asIdentitySet.
+    classes := self selectedMethodsClasses asOrderedCollection.
 
     ^ self
         classMenuCheckIn:true
-        classes:(classes asOrderedCollection)
+        classes:classes
         usingManager: manager.
 
     "Created: / 18-11-2011 / 18:49:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -34857,6 +34995,14 @@
     "Created: / 07-08-2006 / 12:12:47 / cg"
 !
 
+methodListMenuSpawnBufferWithCommonSuperclass
+    "add a buffer/open a browser showing the selected methods' common superclass"
+
+    ^ self spawnWithCommonSuperclassOf:(self selectedMethodsClasses) in:#newBuffer
+
+    "Created: / 28-02-2012 / 10:18:01 / cg"
+!
+
 methodListMenuSpawnClassOrSubclassReferences
     "open a new browser showing references to the selected classes or any of its subclass"
 
@@ -34884,8 +35030,10 @@
 
     |classes|
 
-    classes := (self selectedMethods value collect:[:each | each mclass]) asIdentitySet asOrderedCollection.
+    classes := self selectedMethodsClasses asOrderedCollection.
     ^ self spawnClassBrowserFor:classes in:where select:false
+
+    "Modified: / 28-02-2012 / 09:09:44 / cg"
 !
 
 methodListMenuSpawnClassesBuffer
@@ -34894,6 +35042,14 @@
     ^ self methodListMenuSpawnClasses:#newBuffer
 !
 
+methodListMenuSpawnCommonSuperclass
+    "add a buffer/open a browser showing the selected methods' common superclass"
+
+    ^ self spawnWithCommonSuperclassOf:(self selectedMethodsClasses) in:#newBrowser
+
+    "Created: / 28-02-2012 / 10:15:54 / cg"
+!
+
 methodListMenuSpawnFullBrowser
     "add a buffer showing the selected methodss classes"
 
@@ -34911,8 +35067,8 @@
 
     |methods classes brwsr anyMeta anyNonMeta|
 
-    methods := self selectedMethods value.
-    classes := (methods collect:[:each | each mclass]) asIdentitySet asOrderedCollection.
+    methods := self selectedMethodsValue.
+    classes := self selectedMethodsClasses asOrderedCollection.
     brwsr := self spawnFullBrowserInClass:nil selector:nil in:where.
 
     classes size > 0 ifTrue:[
@@ -34935,6 +35091,8 @@
         brwsr immediateUpdate value:false.
     ].
     ^ brwsr
+
+    "Modified: / 28-02-2012 / 16:27:44 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'menu actions-namespace'!
@@ -35043,7 +35201,7 @@
     ].
 
     namespaceList := namespaces copy.
-    selectedClasses := self selectedClasses value.
+    selectedClasses := self selectedClassesValue.
 
     self
         newBrowserOrBufferDependingOn:where
@@ -35059,7 +35217,7 @@
             "/ brwsr immediateUpdate value:false.
         ]
 
-    "Modified: / 18.8.2000 / 16:13:15 / cg"
+    "Modified: / 28-02-2012 / 16:53:04 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'menu actions-other'!
@@ -35161,11 +35319,13 @@
     |stream|
 
     stream := '' writeStream.
-    self selectedClasses value do:[:cls |
+    self selectedClassesValue do:[:cls |
         cls theNonMetaclass fileOutOn:stream.
     ].
 
     self window setClipboardText:stream contents
+
+    "Modified: / 28-02-2012 / 16:46:11 / cg"
 !
 
 classMenuFileOutBuildSupportFiles
@@ -38245,7 +38405,7 @@
 
     printStream := Printer new.
 
-    (self selectedClasses value) do:[:eachClass |
+    (self selectedClassesValue) do:[:eachClass |
         (self selectedProtocols value sort) do:[:eachProtocol |
             (eachClass methodDictionary contains:[:m | m category = eachProtocol])
             ifTrue:[
@@ -38255,6 +38415,8 @@
     ].
 
     printStream close
+
+    "Modified: / 28-02-2012 / 16:59:38 / cg"
 !
 
 protocolCheckMenuSmalllintCheck: what
@@ -38667,13 +38829,13 @@
     someCategories := Set new.
 
     "/ offer the current classes's protocols in the dialog
-    (selClasses := self selectedClasses value) notNil ifTrue:[
+    (selClasses := self selectedClassesValue) notEmptyOrNil ifTrue:[
         selClasses do:[:eachClass |
             someCategories addAll:(eachClass categories).
         ]
     ] ifFalse:[
         "/ offer the current method-classes' protocols in the dialog
-        (selMethods := self selectedMethods value) notNil ifTrue:[
+        (selMethods := self selectedMethodsValue) notNil ifTrue:[
             selMethods do:[:eachMethod | |cls|
                 (cls := eachMethod mclass) notNil ifTrue:[
                     someCategories addAll:cls categories
@@ -38726,7 +38888,7 @@
             ]
         ].
         methodCategoryListApp notNil ifTrue:[
-            (self selectedClasses value ? #()) do:[:cls |
+            (self selectedClassesValue) do:[:cls |
                 "/ kludge - must also rename in addedProtocols
                 methodCategoryListApp renameAdditionalProtocol:currentMethodCategory to:newCategory forClass:cls.
             ].
@@ -38739,25 +38901,29 @@
         self immediateUpdate value:false.
     ]
 
-    "Modified: / 06-02-2007 / 10:21:34 / cg"
+    "Modified: / 28-02-2012 / 17:00:47 / cg"
 !
 
 protocolMenuSpawn
     "open a new browser showing the selected category only"
 
     ^ self
-        spawnProtocolBrowserFor:(self selectedClasses value)
+        spawnProtocolBrowserFor:(self selectedClassesValue)
         and:(self selectedProtocols value)
         in:#newBrowser
+
+    "Modified: / 28-02-2012 / 17:00:28 / cg"
 !
 
 protocolMenuSpawnBuffer
     "add a new buffer showing the selected category only"
 
     ^ self
-        spawnProtocolBrowserFor:(self selectedClasses value)
+        spawnProtocolBrowserFor:(self selectedClassesValue)
         and:(self selectedProtocols value)
         in:#newBuffer
+
+    "Modified: / 28-02-2012 / 16:54:00 / cg"
 !
 
 protocolMenuSpawnFullCategory
@@ -38814,11 +38980,13 @@
     |methodCategoryListApp|
 
     (methodCategoryListApp := self methodCategoryListApp) notNil ifTrue:[
-        (self selectedClasses value ? #()) do:[:aClass |
+        (self selectedClassesValue) do:[:aClass |
             methodCategoryListApp removeAllAdditionalProtocolForClass:aClass
         ].
         methodCategoryListApp forceUpdateList
     ]
+
+    "Modified: / 28-02-2012 / 16:53:56 / cg"
 !
 
 spawnFullProtocolBrowserFor:protocols in:where
@@ -38892,7 +39060,7 @@
     ] ifFalse:[
         spec := #multipleProtocolBrowserSpec.
     ].
-    selectedMethods := self selectedMethods value copy.
+    selectedMethods := self selectedMethodsValue copy.
 
     ^ self
         newBrowserOrBufferDependingOn:where
@@ -38942,6 +39110,8 @@
 
             brwsr immediateUpdate value:false.
         ]
+
+    "Modified: / 28-02-2012 / 16:34:54 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'menu actions-searching'!
@@ -39949,7 +40119,9 @@
 !
 
 doMoveSelectedMethodsToProject:newProject
-    self moveMethods:(self selectedMethods value) toProject:newProject
+    self moveMethods:(self selectedMethodsValue) toProject:newProject
+
+    "Modified: / 28-02-2012 / 16:16:12 / cg"
 !
 
 doRemoveMethodsConfirmed:methodsToRemove
@@ -40059,7 +40231,9 @@
 doRemoveSelectedMethodsUnconfirmed
     "remove selected methods without asking questions"
 
-    self doRemoveMethodsUnconfirmed:self selectedMethods value copy
+    self doRemoveMethodsUnconfirmed:self selectedMethodsValue copy
+
+    "Modified: / 28-02-2012 / 16:16:16 / cg"
 !
 
 fileOutMethods:aCollectionOfMethods format:formatSymbolOrNil fileNameTemplate:nameOrNil boxTitle:boxTitleOrNil
@@ -40169,7 +40343,7 @@
 
     cls := self theSingleSelectedClass.
     cls isNil ifTrue:[
-        classes := self selectedClasses value.
+        classes := self selectedClassesValue.
         classes notEmptyOrNil ifTrue:[
             cls := classes first.
         ]
@@ -40178,6 +40352,8 @@
         ^ cls programmingLanguage methodTemplate
     ].
     ^ SystemBrowser methodTemplate
+
+    "Modified: / 28-02-2012 / 16:59:30 / cg"
 !
 
 methodsPreviousVersionCode
@@ -40484,12 +40660,12 @@
     ].
 
     renameSelectedMethodsOnly ifTrue:[
-        (self selectedMethods value collect:[:m | m selector]) asSet size == 1 ifFalse:[
+        (self selectedMethodsValue collect:[:m | m selector]) asSet size == 1 ifFalse:[
             Dialog warn:'Multiple different selectors selected'.
             ^ self.
         ].
 
-        classesOfSelectedMethods := self selectedMethods value collect:[:m|m mclass].
+        classesOfSelectedMethods := self selectedMethodsValue collect:[:m|m mclass].
 "/        classesOfSelectedMethods := classesOfSelectedMethods 
 "/                collect:[:cls | 
 "/                    |className rbClass|
@@ -40523,7 +40699,7 @@
         self spawnMethodImplementorsBrowserFor:(Array with:newSelector) match:false in:#newBrowser
     ].
 
-    "Modified: / 13-02-2012 / 13:16:15 / cg"
+    "Modified: / 28-02-2012 / 16:28:12 / cg"
 !
 
 selectVariableForMoveMethod
@@ -41047,7 +41223,7 @@
 selectorMenuCheckInProjectExtensions
     |projects|
 
-    projects := ((self selectedMethods value) collect:[:each | each package]) asSet.
+    projects := ((self selectedMethodsValue) collect:[:each | each package]) asSet.
     projects do:[:packageToCheckIn |
         self
             projectMenuCheckInProject:packageToCheckIn
@@ -41055,6 +41231,8 @@
             extensions:true
             buildSupport:false
     ].
+
+    "Modified: / 28-02-2012 / 16:28:43 / cg"
 !
 
 selectorMenuCleanUpChangeSet
@@ -41064,7 +41242,7 @@
         ifFalse:[ ^ self].
 
     self withWaitCursorDo:[
-        self selectedMethods value do:[:eachMethod |
+        self selectedMethodsValue do:[:eachMethod |
             ChangeSet current condenseChangesForClass:eachMethod mclass selector:eachMethod selector
         ]
     ]
@@ -41079,9 +41257,10 @@
 
     <resource: #obsolete> "use ...Using:manager variant"
 
-    self doCompareMethodsWithRepository:(self selectedMethods value).
+    self doCompareMethodsWithRepository:(self selectedMethodsValue).
 
     "Modified: / 18-11-2011 / 18:43:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 16:28:53 / cg"
 !
 
 selectorMenuCompareAgainstNewestInRepositoryUsingManager: manager
@@ -41089,7 +41268,7 @@
      with the the newest version found in the repository.
      That is the most recent version."
 
-    self doCompareMethodsWithRepository:(self selectedMethods value) usingManager: manager.
+    self doCompareMethodsWithRepository:(self selectedMethodsValue) usingManager: manager.
 
     "Created: / 18-11-2011 / 18:44:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Created: / 21-12-2011 / 20:20:20 / cg"
@@ -41111,11 +41290,12 @@
 
     |classes|
 
-    classes := (self selectedMethods value collect:[:m | m mclass theNonMetaclass]) asSet.
+    classes := (self selectedMethodsValue collect:[:m | m mclass theNonMetaclass]) asSet.
     self doCompareClassesWithRepository:classes.
 
     "Created: / 13-10-2006 / 11:40:23 / cg"
     "Modified (format): / 18-11-2011 / 18:47:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 28-02-2012 / 16:28:59 / cg"
 !
 
 selectorMenuCompareClassAgainstNewestInRepositoryUsingManager: manager
@@ -41125,7 +41305,7 @@
 
     |classes|
 
-    classes := (self selectedMethods value collect:[:m | m mclass theNonMetaclass]) asSet.
+    classes := (self selectedMethodsValue collect:[:m | m mclass theNonMetaclass]) asSet.
     self doCompareClassesWithRepository:classes usingManager: manager
 
     "Created: / 18-11-2011 / 18:47:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -41148,12 +41328,14 @@
 
     |selectedMethods|
 
-    selectedMethods := self selectedMethods value.
+    selectedMethods := self selectedMethodsValue.
 
     self
         doCompareMethod:(selectedMethods first)
         against:(selectedMethods second)
         label:(resources string:'Comparing methods')
+
+    "Modified: / 28-02-2012 / 16:29:05 / cg"
 !
 
 selectorMenuCompareWithInherited
@@ -41161,12 +41343,14 @@
 
     |m1 m2|
 
-    m1 := self selectedMethods value first.
+    m1 := self selectedMethodsValue first.
     m2 := m1 mclass superclass lookupMethodFor:(m1 selector).
     self
         doCompareMethod:m1
         against:m2
         label:(resources string:'Comparing against inherited')
+
+    "Modified: / 28-02-2012 / 16:29:11 / cg"
 !
 
 selectorMenuCompareWithMethod
@@ -41201,7 +41385,7 @@
 selectorMenuCompareWithSmallTeamVersionOnHost:hostName
     "compare the codeViews contents against a SmallTeam version"
 
-    self selectedMethods value do:[:eachMethod |
+    self selectedMethodsValue do:[:eachMethod |
         |v changeList change|
 
         changeList := SmallTeam changesOnHost:hostName.
@@ -41221,7 +41405,7 @@
     ].
 
     "Created: / 11-11-2006 / 15:15:26 / cg"
-    "Modified: / 12-11-2006 / 15:50:02 / cg"
+    "Modified: / 28-02-2012 / 16:29:13 / cg"
 !
 
 selectorMenuCompileWithSTC
@@ -41307,7 +41491,7 @@
 
     |methods fileNameTemplate m|
 
-    methods := self selectedMethods value.
+    methods := self selectedMethodsValue.
     methods size > 1 ifTrue:[
         fileNameTemplate := 'someMethods'.
     ] ifFalse:[
@@ -41320,7 +41504,7 @@
         fileNameTemplate:fileNameTemplate
         boxTitle:'FileOut selected method(s) as:'
 
-    "Modified: / 15.11.2001 / 17:57:52 / cg"
+    "Modified: / 28-02-2012 / 16:29:16 / cg"
 !
 
 selectorMenuFileOutSIFAs
@@ -41534,7 +41718,7 @@
 selectorMenuLoadSmallTeamVersionFromHost:hostName
     "load a smallTeam version"
 
-    self selectedMethods value do:[:eachMethod |
+    self selectedMethodsValue do:[:eachMethod |
         |changeList change|
 
         changeList := SmallTeam changesOnHost:hostName.
@@ -41576,7 +41760,7 @@
 selectorMenuMakeClassOrInstanceMethodWithForwarder:withForwarder
     "move the selected methods from inst to their class side or vice versa"
 
-    self selectedMethods value copy do:[:methodToMove |
+    self selectedMethodsValue copy do:[:methodToMove |
         |mclass question msg selectorToMove dontDoIt newMethod dstClass|
 
         mclass := methodToMove mclass.
@@ -41621,6 +41805,8 @@
 "/            ]
 "/        ]
     ]
+
+    "Modified: / 28-02-2012 / 16:29:23 / cg"
 !
 
 selectorMenuMakeIgnored
@@ -41756,11 +41942,11 @@
         ].
     ].
 
-    methods := self selectedMethods value.
+    methods := self selectedMethodsValue.
 
     self moveOrCopyMethods:methods toClass:newClass moveOrCopy:doWhat
 
-    "Modified: / 24-11-2006 / 12:22:23 / cg"
+    "Modified: / 28-02-2012 / 16:29:26 / cg"
 !
 
 selectorMenuMoveToClass
@@ -41775,7 +41961,7 @@
     |perPackageMethods|
 
     perPackageMethods := Dictionary new.
-    self selectedMethods value do:[:eachMethod |
+    self selectedMethodsValue do:[:eachMethod |
         |methodsPackage classPackage set|
 
         methodsPackage := eachMethod package.
@@ -41804,7 +41990,7 @@
 
     |newProject classProjects offered affectedMethods msg|
 
-    affectedMethods := self selectedMethods value.
+    affectedMethods := self selectedMethodsValue.
     classProjects := (affectedMethods collect:[:eachMethod | eachMethod mclass package]) asSet.
 
     LastProjectMoves size > 0 ifTrue:[
@@ -41834,7 +42020,7 @@
     ].
 
     "Created: / 17-02-2000 / 23:02:49 / cg"
-    "Modified: / 11-08-2006 / 13:40:58 / cg"
+    "Modified: / 28-02-2012 / 16:29:32 / cg"
 !
 
 selectorMenuMoveToProtocol
@@ -41843,13 +42029,13 @@
     |mthd superClass inherited someCategories goodCandidates newCategory selClasses
      initialAnswer methodSelection selectors subclassCategories gotInherited|
 
-    methodSelection := self selectedMethods value copy.
+    methodSelection := self selectedMethodsValue copy.
 
     someCategories := Set new.
     goodCandidates := Set new.
 
     "/ offer the current classes's protocols in the dialog
-    (selClasses := self selectedClasses value) notNil ifTrue:[
+    (selClasses := self selectedClassesValue) notNil ifTrue:[
         selClasses do:[:eachClass |
             someCategories addAll:(eachClass categories).
         ]
@@ -41987,7 +42173,7 @@
 
     self moveMethods:methodSelection toProtocol:newCategory
 
-    "Modified: / 16-02-2012 / 15:34:37 / cg"
+    "Modified: / 28-02-2012 / 16:52:19 / cg"
 !
 
 selectorMenuNewImageSpec
@@ -42154,7 +42340,7 @@
     (self askIfModified:'Code was modified.\\Push method(s) anyway ?')
     ifFalse:[^ self].
 
-    selectedMethods := self selectedMethods value.
+    selectedMethods := self selectedMethodsValue.
 
     (selectedMethods collect:[:m | m mclass]) asIdentitySet do:[:eachClass |
         |methods selectors nm|
@@ -42178,6 +42364,8 @@
         refactoring model name:nm.
         self performRefactoring:refactoring.
     ].
+
+    "Modified: / 28-02-2012 / 16:29:38 / cg"
 !
 
 selectorMenuPushUpMethod
@@ -42189,16 +42377,20 @@
 selectorMenuRecompile
     "recompile the selected methods (for Debug only)"
 
-    self selectedMethods value do:[:eachMethod |
+    self selectedMethodsValue do:[:eachMethod |
         eachMethod mclass recompile:eachMethod selector
     ]
+
+    "Modified: / 28-02-2012 / 16:29:42 / cg"
 !
 
 selectorMenuRemove
     "confirm removal of the selected methods (but does not search for senders),
      then remove them."
 
-    self doRemoveMethodsConfirmed:(self selectedMethods value)
+    self doRemoveMethodsConfirmed:(self selectedMethodsValue)
+
+    "Modified: / 28-02-2012 / 16:29:45 / cg"
 !
 
 selectorMenuRemoveParameter
@@ -42239,7 +42431,7 @@
 
     mthd := self theSingleSelectedMethod.
     mthd isNil ifTrue:[
-        methods := self selectedMethods value ? #().
+        methods := self selectedMethodsValue.
         (methods asSet collect:[:eachMethod | eachMethod selector]) size == 1 ifTrue:[
             mthd := methods first.
         ]
@@ -42264,11 +42456,13 @@
 "/
 "/    mthd := self theSingleSelectedMethod.
 "/    self renameMethod:mthd selector in:mthd mclass.
+
+    "Modified: / 28-02-2012 / 16:43:57 / cg"
 !
 
 selectorMenuRewrite
     MethodRewriter new
-        methods: self selectedMethods value;
+        methods: self selectedMethodsValue;
         open
 
     "Created: / 05-07-2011 / 14:49:06 / cg"
@@ -42319,7 +42513,7 @@
                 selectorsToRemove do:[:eachSelectorToRemove |
                     sent := mthd messagesSent.
                    (sent includes:eachSelectorToRemove) ifTrue:[
-                       (self selectedMethods value includesIdentical:mthd) ifFalse:[
+                       (self selectedMethodsValue includesIdentical:mthd) ifFalse:[
                            possiblyInvoked add:mthd.
                        ]
                    ]
@@ -42329,7 +42523,7 @@
                 newFound := IdentitySet new.
                 selectorsToRemove do:[:eachSelectorToRemove |
                     (mthd refersToLiteral:eachSelectorToRemove) ifTrue:[
-                        (self selectedMethods value includesIdentical:mthd) ifFalse:[
+                        (self selectedMethodsValue includesIdentical:mthd) ifFalse:[
                             possiblyUsedAsSelector add:mthd.
                         ]
                     ].
@@ -42398,6 +42592,8 @@
      ].
 
      self doRemoveSelectedMethodsUnconfirmed
+
+    "Modified: / 28-02-2012 / 16:30:03 / cg"
 !
 
 selectorMenuSelectMethodsWithString
@@ -42413,10 +42609,12 @@
 
     |projects|
 
-    projects := (self selectedMethods value collect:[:m | m package]) asSet asSortedCollection.
+    projects := (self selectedMethodsValue collect:[:m | m package]) asSet asSortedCollection.
     ^ self
         spawnProjectBrowserFor:projects
         in:#newBrowser
+
+    "Modified: / 28-02-2012 / 16:30:06 / cg"
 !
 
 selectorMenuSpawnExtensionsProjectBuffer
@@ -42424,10 +42622,12 @@
 
     |projects|
 
-    projects := (self selectedMethods value collect:[:m | m package]) asSet asSortedCollection.
+    projects := (self selectedMethodsValue collect:[:m | m package]) asSet asSortedCollection.
     ^ self
         spawnProjectBrowserFor:projects
         in:#newBuffer
+
+    "Modified: / 28-02-2012 / 16:30:08 / cg"
 !
 
 selectorMenuSpawnImplementors
@@ -42474,18 +42674,22 @@
     "open a new browser showing the selected methods only"
 
     ^ self
-        spawnMethodBrowserFor:(self selectedMethods value)
+        spawnMethodBrowserFor:(self selectedMethodsValue)
         in:#newBrowser
         label:nil
+
+    "Modified: / 28-02-2012 / 16:30:11 / cg"
 !
 
 selectorMenuSpawnMethodBuffer
     "add a new buffer showing the selected methods only"
 
     ^ self
-        spawnMethodBrowserFor:(self selectedMethods value)
+        spawnMethodBrowserFor:(self selectedMethodsValue)
         in:#newBuffer
         label:nil
+
+    "Modified: / 28-02-2012 / 16:30:14 / cg"
 !
 
 selectorMenuSpawnProjectExtensions
@@ -42493,8 +42697,10 @@
      selected methods project(s)"
 
     ^ self
-        spawnProjectExtensionsBrowserFor:(self selectedMethods value)
+        spawnProjectExtensionsBrowserFor:(self selectedMethodsValue)
         in:#newBrowser
+
+    "Modified: / 28-02-2012 / 16:30:16 / cg"
 !
 
 selectorMenuSpawnProjectExtensionsBuffer
@@ -42502,8 +42708,10 @@
      selected methods project(s)"
 
     ^ self
-        spawnProjectExtensionsBrowserFor:(self selectedMethods value)
+        spawnProjectExtensionsBrowserFor:(self selectedMethodsValue)
         in:#newBuffer
+
+    "Modified: / 28-02-2012 / 16:30:19 / cg"
 !
 
 selectorMenuSpawnSenders
@@ -42604,7 +42812,7 @@
 spawnCallersIn:openHow 
     "open a new browser or add a buffer showing the selected method's callers"
 
-    self spawnCallersBrowserFor:(self selectedMethods value) in:openHow
+    self spawnCallersBrowserFor:(self selectedMethodsValue) in:openHow
 
     "Created: / 27-04-2010 / 15:17:33 / cg"
 !
@@ -42630,9 +42838,9 @@
     |searchBlock "must be first local in block (see #methodsSelectionChangedAt:index, which fetches this value)"
      spec aMethod multipleMethods methods lbl|
 
-    multipleMethods := self selectedMethods value size > 1.
+    multipleMethods := self selectedMethodsValue size > 1.
     multipleMethods ifTrue:[
-        methods := self selectedMethods value copy.
+        methods := self selectedMethodsValue copy.
         lbl := resources string:'implementor chains'.
     ] ifFalse:[
         aMethod := self theSingleSelectedMethod.
@@ -42697,7 +42905,7 @@
             ].
         ]
 
-    "Modified: / 1.3.2000 / 21:03:34 / cg"
+    "Modified: / 28-02-2012 / 16:37:04 / cg"
 !
 
 spawnLocalImplementorsBuffer
@@ -43145,7 +43353,7 @@
         |selectedMethods classes list newBrowser label searchBlock
          initialList anyRedefined|
 
-        (selectedMethods := self selectedMethods value) size == 0 ifTrue:[
+        (selectedMethods := self selectedMethodsValue) size == 0 ifTrue:[
             self warn:'No method selected.'.
             ^ self
         ].
@@ -43214,6 +43422,8 @@
         newBrowser selectMethods:(selectedMethods copy).
         newBrowser sortBy value:false.
     ]
+
+    "Modified: / 28-02-2012 / 16:30:45 / cg"
 !
 
 spawnMethodLocalImplementorsBrowserFor:aSelectorCollection in:openHow
@@ -43401,9 +43611,9 @@
     |searchBlock "must be first local in block (see #methodsSelectionChangedAt:index, which fetches this value)"
      spec aMethod multipleMethods methods lbl|
 
-    multipleMethods := self selectedMethods value size > 1.
+    multipleMethods := self selectedMethodsValue size > 1.
     multipleMethods ifTrue:[
-        methods := self selectedMethods value copy.
+        methods := self selectedMethodsValue copy.
         lbl := resources string:'Sender chains'.
     ] ifFalse:[
         aMethod := self theSingleSelectedMethod.
@@ -43470,7 +43680,7 @@
             ].
         ]
 
-    "Modified: / 1.3.2000 / 21:03:34 / cg"
+    "Modified: / 28-02-2012 / 16:36:22 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'menu actions-subversion'!
@@ -43487,7 +43697,7 @@
 classMenuSubversionShowRevisionLog
     | pkg classes branch path |
 
-    classes := self selectedClasses value.
+    classes := self selectedClassesValue.
     pkg := self theSingleSelectedProjectFromClasses.
     path := classes size == 1 
                 ifTrue: [SVN::Repository containerNameForClass: classes anyOne]
@@ -43499,7 +43709,7 @@
         open
 
     "Modified: / 25-06-2010 / 10:08:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified (format): / 12-02-2012 / 21:28:07 / cg"
+    "Modified: / 28-02-2012 / 16:48:38 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'menu actions-variables'!
@@ -44298,7 +44508,7 @@
     ].
 
 "/    cls := self theSingleSelectedClass.
-    cls := Behavior commonSuperclassOf:(self selectedClasses value).
+    cls := Behavior commonSuperclassOf:(self selectedClassesValue).
     variablesToRemove do:[:variableToRemove |
         classVar ifTrue:[
             self codeMenuRemoveClassVariable:variableToRemove inClass:(cls theNonMetaclass)
@@ -44307,7 +44517,7 @@
         ]
     ].
 
-    "Modified: / 12-10-2006 / 21:55:29 / cg"
+    "Modified: / 28-02-2012 / 16:51:57 / cg"
 !
 
 variablesMenuRemoveClassVariable
@@ -45207,7 +45417,7 @@
 
         m := Menu new.
         hosts := Set new.
-        self selectedClasses value do:[:cls |
+        self selectedClassesValue do:[:cls |
             hosts addAll:(SmallTeam hostsWithChangeForClassOrMetaclass:cls theNonMetaclass).
         ].
         hosts := hosts asOrderedCollection sort.
@@ -45237,7 +45447,7 @@
         SmallTeam notNil ifTrue:[
             m := Menu new.
             hosts := Set new.
-            self selectedMethods value do:[:m |
+            self selectedMethodsValue do:[:m |
                 hosts addAll:(SmallTeam hostsWithChangeForClass:(m mclass) selector:(m selector)).
             ].
             hosts := hosts asOrderedCollection sort.
@@ -45265,7 +45475,7 @@
 
         m := Menu new.
         hosts := Set new.
-        self selectedMethods value do:[:m |
+        self selectedMethodsValue do:[:m |
             hosts addAll:(SmallTeam hostsWithChangeForClass:(m mclass) selector:(m selector)).
         ].
         hosts := hosts asOrderedCollection sort.
@@ -45452,7 +45662,7 @@
 
         m := Menu new.
         hosts := Set new.
-        self selectedMethods value do:[:m |
+        self selectedMethodsValue do:[:m |
             hosts addAll:(SmallTeam hostsWithChangeForClass:(m mclass) selector:(m selector)).
         ].
         hosts := hosts asOrderedCollection sort.
@@ -45649,7 +45859,7 @@
 
         "/ not exactly one method selected;
         "/ generate a menu for all selected method's implementors and sent messages.
-        methods := self selectedMethods value.
+        methods := self selectedMethodsValue.
         methods isEmptyOrNil ifTrue:[
             methods := OrderedCollection new.
             self selectedClassesDo:[:cls |
@@ -45687,7 +45897,7 @@
     ^ m
 
     "Created: / 27-04-2010 / 15:05:52 / cg"
-    "Modified: / 07-05-2010 / 20:00:20 / cg"
+    "Modified: / 28-02-2012 / 16:27:41 / cg"
 !
 
 operationsMenu
@@ -46762,11 +46972,10 @@
 !
 
 switchToClass:aClass selector:aSelector
-
-
-    ^self switchToClass: aClass selector: aSelector updateHistory: true
+    ^ self switchToClass: aClass selector: aSelector updateHistory: true
 
     "Modified: / 27-02-2008 / 16:34:46 / janfrog"
+    "Modified (format): / 28-02-2012 / 09:29:44 / cg"
 !
 
 switchToClass:aClass selector:aSelector updateHistory: updateHistory
@@ -46856,7 +47065,7 @@
                 self organizerMode value:(OrganizerCanvas organizerModeNamespace).
                 orgMode := self organizerMode value.
             ] ifFalse:[
-                ((self selectedClasses value ? #()) contains:[:cls | cls nameSpace == aClass]) ifTrue:[^ self ].
+                ((self selectedClassesValue) contains:[:cls | cls nameSpace == aClass]) ifTrue:[^ self ].
 
                 "/ select the first class of that namespace
                 classes := aClass allClasses.
@@ -46966,7 +47175,7 @@
 
     "Created: / 22-02-2008 / 09:05:51 / janfrog"
     "Modified: / 27-02-2008 / 16:45:21 / janfrog"
-    "Modified: / 05-10-2011 / 13:49:41 / cg"
+    "Modified: / 28-02-2012 / 16:53:17 / cg"
 !
 
 switchToClassNameMatching:aMatchString
@@ -47351,7 +47560,9 @@
 !
 
 hasOnlySmalltalkClassesSelected
-    ^ (self selectedClasses value ? #()) conform:[:cls | cls programmingLanguage isSmalltalk]
+    ^ (self selectedClassesValue) conform:[:cls | cls programmingLanguage isSmalltalk]
+
+    "Modified: / 28-02-2012 / 16:58:46 / cg"
 !
 
 javaMode
@@ -48626,7 +48837,7 @@
                         ].
                     ].
 
-                    (initialList asSet = (self selectedMethods value ? #()) asSet)
+                    (initialList asSet = self selectedMethodsValue asSet)
                     "/ (numFound == 1 and:[initialList first == self theSingleSelectedMethod])
                     ifTrue:[
                         answer := Dialog
@@ -48671,8 +48882,7 @@
             ].
         ].
 
-    "Modified: / 11-05-2010 / 16:51:50 / cg"
-    "Modified (comment): / 06-12-2011 / 11:44:27 / cg"
+    "Modified: / 28-02-2012 / 16:38:36 / cg"
 !
 
 askForMethodAndSpawnSearchTitle:title browserLabel:labelHolderOrBlock searchWith:aSelectorOrBlock searchWhat:searchWhat searchArea:whereDefault
@@ -48846,15 +49056,15 @@
 
     allProjects := Smalltalk allProjectIDs.
 
-    selectedClasses := self selectedClasses value.
+    selectedClasses := self selectedClassesValue.
     selectedClasses notNil ifTrue:[
         classesProjects := selectedClasses
                             collectAll:[:cls |
                                 (cls methodDictionary values
                                     collect:[:m | m package ]) asSet ].
     ] ifFalse:[
-        selectedMethods := self selectedMethods value.
-        selectedMethods notNil ifTrue:[
+        selectedMethods := self selectedMethodsValue.
+        selectedMethods notEmptyOrNil ifTrue:[
             classesProjects := selectedMethods
                                 collectAll:[:mthd |
                                     (mthd mclass methodDictionary values
@@ -48885,7 +49095,7 @@
         suggestions:offered
 
     "Created: / 11-08-2006 / 13:31:34 / cg"
-    "Modified: / 12-10-2006 / 20:51:57 / cg"
+    "Modified: / 28-02-2012 / 16:45:05 / cg"
 !
 
 askForSelector:title allowBuffer:allowBuffer allowBrowser:allowBrowser thenDo:aBlock
@@ -48898,8 +49108,8 @@
     openHow := nil.
 
     selectors := Set new.
-    methods := self selectedMethods value.
-    methods size > 0 ifTrue:[
+    methods := self selectedMethodsValue.
+    methods notEmptyOrNil ifTrue:[
         firstMethod := methods first.
         firstSelector := firstMethod selector.
     ].
@@ -48993,6 +49203,8 @@
         aBlock value:selector asSymbol value:openHow
     ].
     ^ selector
+
+    "Modified: / 28-02-2012 / 16:39:13 / cg"
 !
 
 askIfModified
@@ -49198,7 +49410,7 @@
         initialText := sel asString withoutSeparators
     ] ifFalse:[
         self codeAspect == #method ifTrue:[
-            methods := self selectedMethods value.
+            methods := self selectedMethodsValue.
             methods size > 0 ifTrue:[
                 someMethod := methods first.
                 usedGlobals := someMethod usedGlobals collect:[:eachVar | eachVar asSymbol].
@@ -49241,7 +49453,7 @@
     ^ box
 
     "Created: / 13-02-2000 / 20:56:18 / cg"
-    "Modified: / 11-07-2010 / 16:44:45 / cg"
+    "Modified: / 28-02-2012 / 16:16:21 / cg"
 !
 
 enterBoxForCodeSelectionTitle:title okText:okText
@@ -49403,9 +49615,11 @@
 
     |sel|
 
-    sel := self selectedClasses value.
+    sel := self selectedClassesValue.
     sel size > 0 ifTrue:[^ sel first].
     ^ nil
+
+    "Modified: / 28-02-2012 / 16:45:01 / cg"
 !
 
 anySelectedMethod
@@ -49413,9 +49627,11 @@
 
     |sel|
 
-    sel := self selectedMethods value.
+    sel := self selectedMethodsValue.
     sel size > 0 ifTrue:[^ sel anElement].
     ^ nil
+
+    "Modified: / 28-02-2012 / 16:14:38 / cg"
 !
 
 classIfValidNonMetaClassName:aClassName
@@ -49513,14 +49729,16 @@
 
     |classes|
 
-    classes := self selectedClasses value copy.
+    classes := self selectedClassesValue copy.
     classes size == 0 ifTrue:[
         self isMethodListBrowser ifTrue:[
-            classes := ((self selectedMethods value collect:[:m | m mclass])
+            classes := ((self selectedMethodsClasses)
                             collect:[:each| each theNonMetaclass]) asIdentitySet.
         ]
     ].
     ^ classes
+
+    "Modified: / 28-02-2012 / 16:48:58 / cg"
 !
 
 codePaneAndPluginView
@@ -49652,7 +49870,7 @@
         ].
     ].
     "/ take selected classes name as default
-    (classes := self selectedClasses value) notEmptyOrNil ifTrue:[
+    (classes := self selectedClassesValue) notEmptyOrNil ifTrue:[
         sel := (classes collect:[:cls | cls theNonMetaclass name]) asSortedCollection asStringWith:$|
     ].
     sel isNil ifTrue:[
@@ -49666,6 +49884,8 @@
 "/    ].
 
     ^ sel
+
+    "Modified: / 28-02-2012 / 16:49:25 / cg"
 !
 
 listOfAllNamespaces
@@ -49917,7 +50137,9 @@
 selectedClassesDo:aBlock
     "evaluate aBlock for each selected class."
 
-    (self selectedClasses value ? #()) do:aBlock
+    (self selectedClassesValue) do:aBlock
+
+    "Modified: / 28-02-2012 / 16:53:49 / cg"
 !
 
 selectedClassesInCategories:aCollectionOfCategories
@@ -49961,10 +50183,12 @@
      for private classes, evaluate privateBlock."
 
     self
-        classes:(self selectedClasses value)
+        classes:(self selectedClassesValue)
         nonMetaDo:aBlock
         ifUnloaded:unloadedBlock
         ifPrivate:privateBlock
+
+    "Modified: / 28-02-2012 / 16:53:41 / cg"
 !
 
 selectedClassesWithWaitCursorDo:aBlock
@@ -50070,11 +50294,13 @@
 selectedMethodsDo:aBlock
     "evaluate aBlock for each selected method."
 
-    (self selectedMethods value ? #()) do:aBlock
+    self selectedMethodsValue do:aBlock
+
+    "Modified: / 28-02-2012 / 16:43:14 / cg"
 !
 
 selectedNonMetaclasses
-    ^ (self selectedClasses value ? #()) collect:[:cls | cls theNonMetaclass].
+    ^ (self selectedClassesValue) collect:[:cls | cls theNonMetaclass].
 
     "Created: / 12-09-2006 / 13:40:25 / cg"
 !
@@ -50128,7 +50354,7 @@
     navigationState isFullProtocolBrowser ifTrue:[
         targets := Smalltalk allClassesAndMetaclasses
     ] ifFalse:[
-        targets := self selectedClasses value
+        targets := self selectedClassesValue
     ].
     targets isEmptyOrNil ifTrue:[^self].
     
@@ -50149,7 +50375,7 @@
     ].
 
     "Modified: / 01-08-2010 / 14:39:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 04-08-2011 / 19:05:33 / cg"
+    "Modified: / 28-02-2012 / 16:52:57 / cg"
 !
 
 selectedProtocolsDo:aBlock
@@ -50163,7 +50389,7 @@
     navigationState isFullProtocolBrowser ifTrue:[
         targets := Smalltalk allClassesAndMetaclasses
     ] ifFalse:[
-        targets := self selectedClasses value
+        targets := self selectedClassesValue
     ].
     allIncluded := protocols includes:(BrowserList nameListEntryForALL).
 
@@ -50183,6 +50409,8 @@
             ]
         ]
     ].
+
+    "Modified: / 28-02-2012 / 16:53:00 / cg"
 !
 
 selectedSelectorInCodeViewOrNil
@@ -50212,9 +50440,9 @@
 !
 
 selectedSelectors
-    ^ (self selectedMethods value ? #()) collect:[:mthd | mthd selector]
-
-    "Created: / 11.2.2000 / 10:29:30 / cg"
+    ^ self selectedMethodsValue collect:[:mthd | mthd selector]
+
+    "Created: / 11-02-2000 / 10:29:30 / cg"
 !
 
 selectedTemporaryVariableInCodeViewOrNil
@@ -50600,7 +50828,7 @@
 
     self codeInfoVisible value ifFalse:[^ nil].
 
-    selectedClasses := self selectedClasses value.
+    selectedClasses := self selectedClassesValue.
     selectedClasses isEmptyOrNil ifTrue:[^ nil].
     categories := (selectedClasses collect:[:each|each category]) asSet.
     categories size ~~ 1 ifTrue:[^ nil].
@@ -50616,6 +50844,8 @@
                 with:selectedClasses first name
                 with:selectedClasses size
                 with:category
+
+    "Modified: / 28-02-2012 / 16:45:20 / cg"
 !
 
 classInheritanceInfo
@@ -50867,7 +51097,7 @@
 
     self codeInfoVisible value ifFalse:[^ nil].
 
-    selectedMethods := self selectedMethods value.
+    selectedMethods := self selectedMethodsValue.
     selectedMethods isEmptyOrNil ifTrue:[^ nil].
 
     firstMethod := selectedMethods first.
@@ -50900,6 +51130,8 @@
         ^ prefix.
     ].
     ^ prefix,' - ' , msg.
+
+    "Modified: / 28-02-2012 / 16:16:33 / cg"
 !
 
 getMethodInfoForMethod:aMethod
@@ -51177,7 +51409,7 @@
 updateCategorySelectionForChangedClassSelection
     |classes selectedCategories oldSelectedCategories nameListEntryForALL|
 
-    classes := self selectedClasses value.
+    classes := self selectedClassesValue.
     classes size > 0 ifTrue:[
         "/ category-selection feedBack:
         "/ update the category-selection, if '* all *' is in its selection
@@ -51196,7 +51428,7 @@
     ].
 
     "Created: / 24-02-2000 / 14:10:09 / cg"
-    "Modified: / 12-09-2006 / 13:57:50 / cg"
+    "Modified: / 28-02-2012 / 16:51:33 / cg"
 !
 
 updateInfoForChangedClassSelection
@@ -51211,8 +51443,8 @@
                                   with:singleSelectedClass category allBold).
             ] ifFalse:[
 
-                selectedClasses := self selectedClasses value.
-                categories := ((selectedClasses ? #()) collect:[:cls | cls category]) asSet.
+                selectedClasses := self selectedClassesValue.
+                categories := (selectedClasses collect:[:cls | cls category]) asSet.
                 categories size == 1 ifTrue:[
                     msg := (resources string:'Category: %1'
                                       with:categories anElement allBold).
@@ -51229,12 +51461,14 @@
         ^ self.
     ].
     self clearInfo.
+
+    "Modified: / 28-02-2012 / 16:51:46 / cg"
 !
 
 updateProtocolSelectionForChangedMethodSelection
     |methods selectedProtocolsHolder selectedProtocols oldSelectedProtocols|
 
-    methods := self selectedMethods value.
+    methods := self selectedMethodsValue.
     methods size > 0 ifTrue:[
         "/ protocol-selection feedBack:
         "/ update the protocol-selection, if '* all *' is in its selection
@@ -51251,6 +51485,8 @@
             ].
         ].
     ].
+
+    "Modified: / 28-02-2012 / 16:36:38 / cg"
 !
 
 withActivityNotificationsRedirectedToInfoLabelDo:aBlock
@@ -52725,8 +52961,8 @@
         aMethod isNil ifTrue:[
             "/ no method selected
             aClassOrNil isNil ifTrue:[
-                (self selectedClasses value isEmptyOrNil
-                and:[ self selectedCategories value isEmptyOrNil
+                (self selectedClassesValue isEmptyOrNil
+                and:[ self selectedCategoriesValue isEmptyOrNil
                 and:[ self selectedProjects value isEmptyOrNil
                 and:[ navigationState isNameSpaceBrowser not
                       or:[ self selectedNamespaces value isEmptyOrNil ] ]]]) ifTrue:[
@@ -52757,10 +52993,10 @@
 "/            tabList add:'Lint'.            actionList add:[ self updateCodeEditorVisibilityForLintOfMethod:aMethod ].
         ].
 
-        self selectedMethods value size == 2 ifTrue:[
+        self selectedMethodsValue size == 2 ifTrue:[
             tabList add:'Diff'.
-            actionList add:[ self updateDiffViewerVisibilityFor:(self selectedMethods value first source)
-                                                            and:(self selectedMethods value second source) ].
+            actionList add:[ self updateDiffViewerVisibilityFor:(self selectedMethodsValue first source)
+                                                            and:(self selectedMethodsValue second source) ].
         ].
     ] ifFalse:[
         tabList add:'Source'.               actionList add:[ self updateCodeEditorVisibilityForSource ].
@@ -52805,7 +53041,7 @@
     ].
 
     "Created: / 17-08-2006 / 16:44:51 / cg"
-    "Modified: / 06-09-2006 / 19:22:45 / cg"
+    "Modified: / 28-02-2012 / 17:02:07 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'startup & release'!
@@ -54040,9 +54276,11 @@
 
     self
         browseVarRefsToAny:names
-        classes:self selectedClasses value
+        classes:self selectedClassesValue
         variables:type access:#readOrWrite all:true
         title:title  in:#newBuffer
+
+    "Modified: / 28-02-2012 / 16:51:54 / cg"
 ! !
 
 !NewSystemBrowser methodsFor:'user actions-accepting'!
@@ -54059,7 +54297,7 @@
     language := languageOrNil 
                     ifNotNil: [languageOrNil]
                     ifNil: [self hasMethodSelected
-                            ifTrue:[self selectedMethods value first programmingLanguage]
+                            ifTrue:[self selectedMethodsValue first programmingLanguage]
                             ifFalse:[cls programmingLanguage]].
 
     "/ a quick parse for the selector ...
@@ -54306,8 +54544,7 @@
     ^ returnValue.
 
     "Created: / 30-12-2009 / 20:01:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 12-09-2011 / 11:10:26 / cg"
-    "Modified (format): / 06-12-2011 / 11:50:34 / cg"
+    "Modified: / 28-02-2012 / 16:14:33 / cg"
 !
 
 askForInitialApplicationCodeFor:aClass
@@ -54380,7 +54617,7 @@
         ]
     ].
     cls isNil ifTrue:[
-        classes := self selectedClasses value.
+        classes := self selectedClassesValue.
         classes isEmptyOrNil ifTrue:[
             self warn:'oops class is gone; reselect and try again'.
             ^ nil
@@ -54415,7 +54652,7 @@
     ].
     ^ cls
 
-    "Modified: / 12-10-2006 / 21:53:50 / cg"
+    "Modified: / 28-02-2012 / 16:48:55 / cg"
 !
 
 doAcceptClassAspect:aspect get:getSelector set:setSelector code:theCode
@@ -54785,7 +55022,7 @@
     mthd notNil ifTrue:[
         cat := mthd category
     ] ifFalse:[
-        protocols := ((self selectedMethods value ? #()) collect:[:m | m category]) asSet.
+        protocols := (self selectedMethodsValue collect:[:m | m category]) asSet.
         protocols size == 1 ifTrue:[
             cat := protocols first
         ] ifFalse:[
@@ -54802,6 +55039,8 @@
         ]
     ].
     ^ cat
+
+    "Modified: / 28-02-2012 / 16:42:53 / cg"
 !
 
 selectorAndNameOfMethodFromCode:someCode in:aClass
@@ -55087,11 +55326,13 @@
     "load an autoloaded class.
      Invoked on doubleClick on a class or via the menu"
 
-    self loadClasses:self selectedClasses value.
+    self loadClasses:self selectedClassesValue.
 
     "/ to force update.
     "/ (I guess, this is not needed)
-    self selectedClasses value:(self selectedClasses value copy).
+    self selectedClasses value:(self selectedClassesValue copy).
+
+    "Modified: / 28-02-2012 / 16:45:33 / cg"
 !
 
 classMenuUnload
@@ -55100,9 +55341,9 @@
     self unloadClasses:self selectedNonMetaclasses.
     "/ to force update.
     "/ (I guess, this is not needed)
-    self selectedClasses value:(self selectedClasses value copy).
-
-    "Modified: / 12-09-2006 / 13:48:12 / cg"
+    self selectedClasses value:(self selectedClassesValue copy).
+
+    "Modified: / 28-02-2012 / 16:48:42 / cg"
 !
 
 classReload
@@ -55110,14 +55351,14 @@
 
     |classes names|
 
-    classes := self selectedClasses value.
+    classes := self selectedClassesValue.
     names := classes collect:[:cls | cls name].
     self unloadClasses:classes.
     self loadClasses:(names collect:[:nm | Smalltalk classNamed:nm]).
 
     "/ to force update.
     "/ (I guess, this is not needed)
-    self selectedClasses value:(self selectedClasses value copy).
+    self selectedClasses value:(self selectedClassesValue copy).
 
     "Created: / 04-07-2011 / 18:10:08 / cg"
 !
@@ -55788,11 +56029,11 @@
 !NewSystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1716 2012-02-27 12:52:39 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1717 2012-02-28 21:59:38 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1716 2012-02-27 12:52:39 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1717 2012-02-28 21:59:38 cg Exp $'
 !
 
 version_SVN