--- a/SelTreeV.st Sat Feb 21 19:26:47 1998 +0100
+++ b/SelTreeV.st Sun Feb 22 14:36:02 1998 +0100
@@ -17,7 +17,7 @@
lineColor openIndicator computeResources closeIndicator showRoot
extentOpenIndicator extentCloseIndicator showDirectoryIndicator
showDirectoryIndicatorForRoot indicatorExtentDiv2 imageOpened
- imageClosed imageItem discardMotionEvents'
+ imageClosed imageItem discardMotionEvents registeredImages'
classVariableNames:'ImageOpened ImageClosed ImageItem OpenIndicator CloseIndicator'
poolDictionaries:''
category:'Views-Text'
@@ -946,14 +946,10 @@
"
super initialize.
self bitGravity:#NorthWest.
- showLines := true.
- showRoot := true.
- computeResources := true.
- showDirectoryIndicator := false.
- showDirectoryIndicatorForRoot := true.
- discardMotionEvents := false.
+ showRoot := showDirectoryIndicatorForRoot := showLines := computeResources := true.
+ showDirectoryIndicator := discardMotionEvents := false.
lineMask := Form width:2 height:2 fromArray:#[16rAA 16r55].
-
+ registeredImages := IdentityDictionary new.
textInset := 4.
imageInset := 0. "/ set during indication enabled
imageWidth := 8. "/ default: will change during startup
@@ -1270,18 +1266,19 @@
figureFor:aNode
"access figure for a node
"
- |icon|
- (icon := aNode icon) notNil
+ |unregisteredImage registeredImage|
+
+ (unregisteredImage := aNode icon) notNil
ifTrue:
[
- icon device ~= device
- ifTrue:
- [
- icon := icon onDevice: device.
- aNode icon: icon.
- icon clearMaskedPixels
+ (registeredImage := registeredImages at: unregisteredImage ifAbsent: nil) isNil
+ ifTrue:
+ [
+ registeredImage := unregisteredImage on: device.
+ registeredImage clearMaskedPixels.
+ registeredImages at: unregisteredImage put: registeredImage
].
- ^icon
+ ^registeredImage
].
aNode hasChildren ifTrue:[
@@ -1557,5 +1554,5 @@
!SelectionInTreeView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libwidg2/Attic/SelTreeV.st,v 1.42 1998-02-20 18:35:45 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg2/Attic/SelTreeV.st,v 1.43 1998-02-22 13:36:02 tz Exp $'
! !
--- a/SelectionInTreeView.st Sat Feb 21 19:26:47 1998 +0100
+++ b/SelectionInTreeView.st Sun Feb 22 14:36:02 1998 +0100
@@ -17,7 +17,7 @@
lineColor openIndicator computeResources closeIndicator showRoot
extentOpenIndicator extentCloseIndicator showDirectoryIndicator
showDirectoryIndicatorForRoot indicatorExtentDiv2 imageOpened
- imageClosed imageItem discardMotionEvents'
+ imageClosed imageItem discardMotionEvents registeredImages'
classVariableNames:'ImageOpened ImageClosed ImageItem OpenIndicator CloseIndicator'
poolDictionaries:''
category:'Views-Text'
@@ -946,14 +946,10 @@
"
super initialize.
self bitGravity:#NorthWest.
- showLines := true.
- showRoot := true.
- computeResources := true.
- showDirectoryIndicator := false.
- showDirectoryIndicatorForRoot := true.
- discardMotionEvents := false.
+ showRoot := showDirectoryIndicatorForRoot := showLines := computeResources := true.
+ showDirectoryIndicator := discardMotionEvents := false.
lineMask := Form width:2 height:2 fromArray:#[16rAA 16r55].
-
+ registeredImages := IdentityDictionary new.
textInset := 4.
imageInset := 0. "/ set during indication enabled
imageWidth := 8. "/ default: will change during startup
@@ -1270,18 +1266,19 @@
figureFor:aNode
"access figure for a node
"
- |icon|
- (icon := aNode icon) notNil
+ |unregisteredImage registeredImage|
+
+ (unregisteredImage := aNode icon) notNil
ifTrue:
[
- icon device ~= device
- ifTrue:
- [
- icon := icon onDevice: device.
- aNode icon: icon.
- icon clearMaskedPixels
+ (registeredImage := registeredImages at: unregisteredImage ifAbsent: nil) isNil
+ ifTrue:
+ [
+ registeredImage := unregisteredImage on: device.
+ registeredImage clearMaskedPixels.
+ registeredImages at: unregisteredImage put: registeredImage
].
- ^icon
+ ^registeredImage
].
aNode hasChildren ifTrue:[
@@ -1557,5 +1554,5 @@
!SelectionInTreeView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libwidg2/SelectionInTreeView.st,v 1.42 1998-02-20 18:35:45 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg2/SelectionInTreeView.st,v 1.43 1998-02-22 13:36:02 tz Exp $'
! !