7105 |
7105 |
7106 selectionChangedFrom:oldSelection |
7106 selectionChangedFrom:oldSelection |
7107 "selection has changed. update master selection and raise notification |
7107 "selection has changed. update master selection and raise notification |
7108 to canvas in case of enabled cvs events |
7108 to canvas in case of enabled cvs events |
7109 " |
7109 " |
7110 |sel size| |
7110 |sel numSelected| |
7111 |
7111 |
7112 super selectionChangedFrom:oldSelection. |
7112 super selectionChangedFrom:oldSelection. |
7113 size := selection size. |
7113 numSelected := selection size. |
7114 |
7114 |
7115 canvasEventsDisabled ifFalse:[ |
7115 canvasEventsDisabled ifFalse:[ |
7116 (size ~~ 0 and:[size ~~ 1 or:[selection first ~~ 1]]) ifTrue:[ |
7116 (numSelected ~~ 0 and:[numSelected ~~ 1 or:[selection first ~~ 1]]) ifTrue:[ |
7117 sel := OrderedCollection new. |
7117 sel := OrderedCollection new. |
7118 |
7118 |
7119 selection do:[:i| |
7119 selection do:[:i| |
7120 i ~~ 1 ifTrue:[sel add:(listOfNodes at:i) contents view] |
7120 i ~~ 1 ifTrue:[sel add:(listOfNodes at:i) contents view] |
7121 ] |
7121 ] |
7122 ]. |
7122 ]. |
7123 self canvas updateSelectionFromModel:sel |
7123 self canvas updateSelectionFromModel:sel |
7124 ]. |
7124 ]. |
7125 size = 1 ifTrue:[ |
7125 numSelected == 1 ifTrue:[ |
7126 oldSelection size > 1 ifTrue: [ |
7126 oldSelection size > 1 ifTrue: [ |
7127 (listOfNodes at:lastDrawnMaster) retrieveLabel. |
7127 (listOfNodes at:lastDrawnMaster) retrieveLabel. |
7128 self redrawLine: lastDrawnMaster. |
7128 self redrawLine: lastDrawnMaster. |
7129 lastDrawnMaster := selection first |
7129 lastDrawnMaster := selection first |
7130 ] |
7130 ] |
7131 ]. |
7131 ]. |
7132 size > 1 ifTrue:[ |
7132 numSelected > 1 ifTrue:[ |
7133 selection first ~~ lastDrawnMaster ifTrue: [ |
7133 selection first ~~ lastDrawnMaster ifTrue: [ |
7134 (listOfNodes at:selection first) retrieveLabel. |
7134 (listOfNodes at:selection first) retrieveLabel. |
7135 lastDrawnMaster notNil ifTrue: [(listOfNodes at:lastDrawnMaster) retrieveLabel]. |
7135 lastDrawnMaster notNil ifTrue: [(listOfNodes at:lastDrawnMaster) retrieveLabel]. |
7136 self redrawLine: lastDrawnMaster. |
7136 self redrawLine: lastDrawnMaster. |
7137 self redrawLine: (lastDrawnMaster := selection first) |
7137 self redrawLine: (lastDrawnMaster := selection first) |