--- a/ObjView.st Thu May 30 17:58:57 1996 +0200
+++ b/ObjView.st Thu May 30 18:47:01 1996 +0200
@@ -903,7 +903,14 @@
Extracted into a separate method to allow easier redefinition
(different lineWidth etc)"
- self xoring:[self lineWidth:0. self displayRectangle:dragObject].
+ self xoring:[
+ self lineWidth:0.
+ self lineStyle:#dashed.
+ self displayRectangle:dragObject.
+ self lineStyle:#solid.
+ ].
+
+ "Modified: 30.5.1996 / 18:27:48 / cg"
!
setRectangleDragActions
@@ -2417,11 +2424,18 @@
addToSelection:anObject
"add anObject to the selection"
+ self hideSelection.
+
selection isCollection ifFalse:[
- selection := OrderedCollection with:selection
+ selection := OrderedCollection with:selection
].
- selection add:anObject.
- self showSelected:anObject
+ (selection includes:anObject) ifFalse:[
+ selection add:anObject.
+"/ self showSelected:anObject
+ ].
+ self showSelection
+
+ "Modified: 30.5.1996 / 18:44:06 / cg"
!
hideSelection
@@ -2435,17 +2449,31 @@
removeFromSelection:anObject
"remove anObject from the selection"
+ |wasSelected|
+
+ wasSelected := true.
+ self hideSelection.
+
selection isCollection ifTrue:[
- selection remove:anObject ifAbsent:[nil].
- (selection size == 1) ifTrue:[
- selection := selection first
- ]
+ (selection remove:anObject ifAbsent:[nil]) isNil ifTrue:[
+ wasSelected := false
+ ].
+ (selection size == 1) ifTrue:[
+ selection := selection first
+ ]
] ifFalse:[
- (selection == anObject) ifTrue:[
- selection := nil
- ]
+ (selection == anObject) ifTrue:[
+ selection := nil
+ ] ifFalse:[
+ wasSelected := false
+ ]
].
- self showUnselected:anObject
+ wasSelected ifTrue:[
+"/ self showUnselected:anObject
+ ].
+ self showSelection.
+
+ "Modified: 30.5.1996 / 18:44:25 / cg"
!
select:something
@@ -2710,18 +2738,20 @@
anObject := self findObjectAt:aPoint.
anObject notNil ifTrue:[
- (self isSelected:anObject) ifTrue:[
- "remove from selection"
- self removeFromSelection:anObject
- ] ifFalse:[
- "add to selection"
- self addToSelection:anObject
- ].
- self startObjectMove:selection at:aPoint.
- ^ self
+ (self isSelected:anObject) ifTrue:[
+ "remove from selection"
+ self removeFromSelection:anObject
+ ] ifFalse:[
+ "add to selection"
+ self addToSelection:anObject
+ ].
+ self startObjectMove:selection at:aPoint.
+ ^ self
].
- self unselect.
- self startRectangleDrag:aPoint
+"/ self unselect.
+"/ self startRectangleDrag:aPoint
+
+ "Modified: 30.5.1996 / 18:45:54 / cg"
!
startSelectOrMove:aPoint
@@ -2839,5 +2869,5 @@
!ObjectView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libwidg/Attic/ObjView.st,v 1.42 1996-05-30 15:58:57 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg/Attic/ObjView.st,v 1.43 1996-05-30 16:47:01 cg Exp $'
! !
--- a/ObjectView.st Thu May 30 17:58:57 1996 +0200
+++ b/ObjectView.st Thu May 30 18:47:01 1996 +0200
@@ -903,7 +903,14 @@
Extracted into a separate method to allow easier redefinition
(different lineWidth etc)"
- self xoring:[self lineWidth:0. self displayRectangle:dragObject].
+ self xoring:[
+ self lineWidth:0.
+ self lineStyle:#dashed.
+ self displayRectangle:dragObject.
+ self lineStyle:#solid.
+ ].
+
+ "Modified: 30.5.1996 / 18:27:48 / cg"
!
setRectangleDragActions
@@ -2417,11 +2424,18 @@
addToSelection:anObject
"add anObject to the selection"
+ self hideSelection.
+
selection isCollection ifFalse:[
- selection := OrderedCollection with:selection
+ selection := OrderedCollection with:selection
].
- selection add:anObject.
- self showSelected:anObject
+ (selection includes:anObject) ifFalse:[
+ selection add:anObject.
+"/ self showSelected:anObject
+ ].
+ self showSelection
+
+ "Modified: 30.5.1996 / 18:44:06 / cg"
!
hideSelection
@@ -2435,17 +2449,31 @@
removeFromSelection:anObject
"remove anObject from the selection"
+ |wasSelected|
+
+ wasSelected := true.
+ self hideSelection.
+
selection isCollection ifTrue:[
- selection remove:anObject ifAbsent:[nil].
- (selection size == 1) ifTrue:[
- selection := selection first
- ]
+ (selection remove:anObject ifAbsent:[nil]) isNil ifTrue:[
+ wasSelected := false
+ ].
+ (selection size == 1) ifTrue:[
+ selection := selection first
+ ]
] ifFalse:[
- (selection == anObject) ifTrue:[
- selection := nil
- ]
+ (selection == anObject) ifTrue:[
+ selection := nil
+ ] ifFalse:[
+ wasSelected := false
+ ]
].
- self showUnselected:anObject
+ wasSelected ifTrue:[
+"/ self showUnselected:anObject
+ ].
+ self showSelection.
+
+ "Modified: 30.5.1996 / 18:44:25 / cg"
!
select:something
@@ -2710,18 +2738,20 @@
anObject := self findObjectAt:aPoint.
anObject notNil ifTrue:[
- (self isSelected:anObject) ifTrue:[
- "remove from selection"
- self removeFromSelection:anObject
- ] ifFalse:[
- "add to selection"
- self addToSelection:anObject
- ].
- self startObjectMove:selection at:aPoint.
- ^ self
+ (self isSelected:anObject) ifTrue:[
+ "remove from selection"
+ self removeFromSelection:anObject
+ ] ifFalse:[
+ "add to selection"
+ self addToSelection:anObject
+ ].
+ self startObjectMove:selection at:aPoint.
+ ^ self
].
- self unselect.
- self startRectangleDrag:aPoint
+"/ self unselect.
+"/ self startRectangleDrag:aPoint
+
+ "Modified: 30.5.1996 / 18:45:54 / cg"
!
startSelectOrMove:aPoint
@@ -2839,5 +2869,5 @@
!ObjectView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libwidg/ObjectView.st,v 1.42 1996-05-30 15:58:57 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg/ObjectView.st,v 1.43 1996-05-30 16:47:01 cg Exp $'
! !