--- a/UIPainter.st Sat Jun 21 17:06:18 1997 +0200
+++ b/UIPainter.st Mon Jun 23 10:19:58 1997 +0200
@@ -602,21 +602,25 @@
#'level:' -1
#'adjust:' #left
)
- #(#ActionButtonSpec
- #'name:' 'raiseGallery'
- #'layout:' #(#LayoutFrame 322 0 1 0 421 0 23 0)
+ #(#ToggleSpec
+ #'name:' 'galleryLabel'
+ #'layout:' #(#LayoutFrame -162 1.0 1 0 -82 1.0 23 0)
#'flags:' 0
#'label:' 'Gallery'
- #'initiallyInvisible:' true
- #'model:' #raiseGallery
+ #'model:' #galleryShown
+ #'isTriggerOnDown:' true
+ #'showLamp:' true
+ #'lampColor:' #(#Color 100.0 100.0 0.0)
)
- #(#ActionButtonSpec
- #'name:' 'raisePainter'
- #'layout:' #(#LayoutFrame 424 0 1 0 524 0 23 0)
+ #(#ToggleSpec
+ #'name:' 'painterLabel'
+ #'layout:' #(#LayoutFrame -81 1.0 1 0 -1 1.0 23 0)
#'flags:' 0
#'label:' 'Painter'
- #'initiallyInvisible:' true
- #'model:' #raisePainter
+ #'model:' #painterShown
+ #'isTriggerOnDown:' true
+ #'showLamp:' true
+ #'lampColor:' #(#Color 100.0 100.0 0.0)
)
)
)
@@ -661,27 +665,6 @@
doubleClick
objectList selectGroup
-!
-
-raiseGallery
- |top|
-
- top := selectionPanel window.
- top map.
- top bePartner.
- (builder componentAt:#raiseGallery) beInvisible.
-
-!
-
-raisePainter
- |top|
-
- top := self painter topView.
- top map.
- top bePartner.
- (builder componentAt:#raisePainter) beInvisible.
-
-
! !
!UIPainter methodsFor:'active help'!
@@ -742,6 +725,17 @@
^ self painter enableChannel
!
+galleryShown
+ |holder|
+
+ (holder := builder bindingAt:#galleryShown) isNil ifTrue:[
+ builder aspectAt:#galleryShown put:(holder := true asValue).
+ holder addDependent:self
+ ].
+ ^ holder
+
+!
+
menuAlignment
|menu channel|
@@ -823,6 +817,17 @@
!
+painterShown
+ |holder|
+
+ (holder := builder bindingAt:#painterShown) isNil ifTrue:[
+ builder aspectAt:#painterShown put:(holder := true asValue).
+ holder addDependent:self
+ ].
+ ^ holder
+
+!
+
tabList
"automatically generated by UIPainter ..."
@@ -871,8 +876,27 @@
].
layoutTool update
].
- self modifiedChannel value:false
- ]
+ ^ self modifiedChannel value:false
+ ].
+
+ self galleryShown == someObject ifTrue:[
+ (self galleryShown value) ifTrue:[
+ self raiseUIView:(selectionPanel window)
+ ] ifFalse:[
+ self hideUIView:(selectionPanel window)
+ ].
+ ^ self
+ ].
+
+ self painterShown == someObject ifTrue:[
+ (self painterShown value) ifTrue:[
+ self raiseUIView:(self painter topView)
+ ] ifFalse:[
+ self hideUIView:(self painter topView)
+ ].
+ ^ self
+ ].
+
! !
!UIPainter methodsFor:'event handling'!
@@ -942,8 +966,18 @@
!UIPainter methodsFor:'private'!
+hideUIView:aView
+ aView beIndependent.
+ aView unmap.
+!
+
painter
^ objectList painter
+!
+
+raiseUIView:aView
+ aView map.
+ aView bePartner.
! !
!UIPainter methodsFor:'queries'!
@@ -1009,22 +1043,18 @@
closeRequestFor:aTopView
"handle a close request for a specific view
"
- |topView id|
+ |topView|
topView := self window.
topView == aTopView ifTrue:[
super closeRequestFor:aTopView
] ifFalse:[
- "/ aTopView beSlave.
- aTopView beIndependent.
-
- aTopView unmap.
-
- aTopView = selectionPanel window ifTrue:[id := #raiseGallery]
- ifFalse:[id := #raisePainter].
-
- (builder componentAt:id) beVisible.
+ aTopView = selectionPanel window ifTrue:[
+ self galleryShown value:false
+ ] ifFalse:[
+ self painterShown value:false
+ ].
topView raise.
].
!
@@ -1433,13 +1463,13 @@
top := self painter topView.
top realized ifFalse:[
- self raisePainter
+ self painterShown value:true
].
top raise.
top := selectionPanel window.
top realized ifFalse:[
- self raiseGallery
+ self galleryShown value:true
].
top raise.
!