Tools__NewSystemBrowser.st
changeset 15604 f1eec14ef278
parent 15595 607776c155bd
child 15605 96f27c4eec05
--- a/Tools__NewSystemBrowser.st	Fri May 01 11:00:55 2015 +0200
+++ b/Tools__NewSystemBrowser.st	Fri May 01 11:07:50 2015 +0200
@@ -10500,7 +10500,7 @@
             enabled: hasUnloadedProjectSelectedHolder
           )
          (MenuItem
-            enabled: hasProjectSelectedHolder
+            enabled: hasRenamableProjectSelectedHolder
             label: 'Rename...'
             itemValue: projectMenuRename
           )
@@ -10605,6 +10605,11 @@
                   itemValue: projectMenuCleanUpChangeSet
                 )
                (MenuItem
+                  enabled: hasPseudoProjectChangedSelectedHolder
+                  label: 'Move Unassigned Methods to their Class''s Project'
+                  itemValue: projectMenuMoveUnassignedMethodsToClassProject
+                )
+               (MenuItem
                   label: '-'
                   isVisible: false
                 )
@@ -22506,6 +22511,14 @@
     "Created: / 4.2.2000 / 22:09:02 / cg"
 !
 
+hasPseudoProjectChangedSelected
+    ^ self selectedProjects value includes:(PackageId noProjectID)
+!
+
+hasPseudoProjectChangedSelectedHolder
+    ^ [ self hasPseudoProjectChangedSelected ]
+!
+
 hasRealExtensionMethodSelected
     ^ self hasAnyMethodSelectedForWhich:[:aMethod |
                     |mPackage|
@@ -22551,6 +22564,18 @@
     ^ manager hasRedoableOperations
 !
 
+hasRenamableProjectSelected
+    ^ self selectedProjects value contains:[:p |
+            (p ~= PackageId noProjectID)
+            and:[ (BrowserList isPseudoProject:p) not ]]
+!
+
+hasRenamableProjectSelectedHolder
+    ^ [ self hasRenamableProjectSelected ]
+
+    "Created: / 4.2.2000 / 22:09:02 / cg"
+!
+
 hasSCMSupportFor:aManagerClassName
     "is there support for the perforce source code manager?"
 
@@ -42621,6 +42646,24 @@
     navigationState realModifiedState:false.
 !
 
+projectMenuMoveUnassignedMethodsToClassProject
+    |noProjectID|
+
+    noProjectID := PackageId noProjectID.
+    Method 
+        allInstancesForWhich:[:m | m package == noProjectID]
+        do:[:m |
+            |mclass classPackage|
+
+            (mclass := m mclass) notNil ifTrue:[
+                (classPackage := mclass package) ~= noProjectID ifTrue:[
+                    Transcript show:'move '; show:m; show:' to '; showCR:classPackage.
+                    "/ m package:classPackage
+                ].
+            ].
+        ].
+!
+
 projectMenuNew
     |projectDefinitionClass appClassName theCode appClass package category
      defaultStartupClassName startupClassName startupClass change|
@@ -62418,11 +62461,11 @@
 !NewSystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.2217 2015-04-22 18:08:52 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.2218 2015-05-01 09:07:50 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.2217 2015-04-22 18:08:52 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.2218 2015-05-01 09:07:50 cg Exp $'
 !
 
 version_HG
@@ -62431,7 +62474,7 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__NewSystemBrowser.st,v 1.2217 2015-04-22 18:08:52 stefan Exp $'
+    ^ '$Id: Tools__NewSystemBrowser.st,v 1.2218 2015-05-01 09:07:50 cg Exp $'
 ! !