class: Tools::OrganizerCanvas
authorClaus Gittinger <cg@exept.de>
Tue, 26 Mar 2013 17:28:36 +0100
changeset 12531 8e8581d0c7b7
parent 12530 41e431093ed3
child 12532 f53e7351097d
class: Tools::OrganizerCanvas changed: #update:with:from: don't update project selection when current classes' is already in it (for project-list)
Tools_OrganizerCanvas.st
--- a/Tools_OrganizerCanvas.st	Tue Mar 26 15:21:47 2013 +0100
+++ b/Tools_OrganizerCanvas.st	Tue Mar 26 17:28:36 2013 +0100
@@ -4706,9 +4706,12 @@
     changedObject == selectedClasses ifTrue:[
         selectedClasses value size ~~ 0 ifTrue:[
             (orgMode ~~ OrganizerCanvas organizerModeClassHierarchy
-            and:[ true "orgMode ~~ OrganizerCanvas organizerModeProject"
-            and:[ orgMode ~~ OrganizerCanvas organizerModePackageDiagram ]]) ifTrue:[
-                self updateOrganizationFromChangedClass.
+            and:[ orgMode ~~ OrganizerCanvas organizerModePackageDiagram ]) ifTrue:[
+                "/ if the organizerMode is project, avoid clobbering the project selection
+                (orgMode ~~ OrganizerCanvas organizerModeProject
+                or:[ (self selectedProjects value includesAll:( selectedClasses value collect:[:each | each package] )) not ])  ifTrue:[
+                    self updateOrganizationFromChangedClass.
+                ].
             ].
         ]
     ].
@@ -5041,10 +5044,10 @@
 !OrganizerCanvas class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools_OrganizerCanvas.st,v 1.51 2013-02-08 13:28:53 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools_OrganizerCanvas.st,v 1.52 2013-03-26 16:28:36 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools_OrganizerCanvas.st,v 1.51 2013-02-08 13:28:53 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools_OrganizerCanvas.st,v 1.52 2013-03-26 16:28:36 cg Exp $'
 ! !