use hideRequest to close via Escape key (allows redefinition);
handle hideRequest in normal views as well (in case a normal one is opened modal)
--- a/ModalBox.st Thu Feb 01 20:48:22 1996 +0100
+++ b/ModalBox.st Thu Feb 01 20:49:49 1996 +0100
@@ -461,6 +461,13 @@
].
!
+hideRequest
+ "hide request from windowGroup (i.e. via Escape key).
+ Can be redefined in subclasses which dont like this"
+
+ self hide
+!
+
mapped
"wait till visible for grabbing"
@@ -508,46 +515,46 @@
"
mainGroup := WindowGroup activeGroup.
mainGroup notNil ifTrue:[
- mainGroup := mainGroup mainGroup.
- mainGroup notNil ifTrue:[
- mainGroup showCursor:(Cursor stop).
- ]
+ mainGroup := mainGroup mainGroup.
+ mainGroup notNil ifTrue:[
+ mainGroup showCursor:(Cursor stop).
+ ]
].
mainGroup isNil ifTrue:[
- useTransient := false
+ useTransient := false
].
useTransient ifTrue:[
- mainGroup topViews notNil ifTrue:[
- mainView := mainGroup topViews first.
- ].
- mainView isNil ifTrue:[
- useTransient := false.
- ]
+ mainGroup topViews notNil ifTrue:[
+ mainView := mainGroup topViews first.
+ ].
+ mainView isNil ifTrue:[
+ useTransient := false.
+ ]
].
useTransient ifTrue:[
- shadowView := nil.
+ shadowView := nil.
] ifFalse:[
- shadowView notNil ifTrue:[shadowView realize].
+ shadowView notNil ifTrue:[shadowView realize].
].
self raise.
useTransient ifTrue:[
- device setTransient:drawableId for:(mainView id).
+ device setTransient:drawableId for:(mainView id).
].
[
- super openModal:aBlock inGroup:mainGroup.
+ super openModal:aBlock inGroup:mainGroup.
] valueNowOrOnUnwindDo:[
- "
- restore cursors in the main group
- "
- mainGroup notNil ifTrue:[
- mainGroup restoreCursors.
- mainGroup sensor flushUserEvents.
- ]
+ "
+ restore cursors in the main group
+ "
+ mainGroup notNil ifTrue:[
+ mainGroup restoreCursors.
+ mainGroup sensor flushUserEvents.
+ ]
].
"/ mainGroup notNil ifTrue:[
@@ -740,6 +747,6 @@
!ModalBox class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview/ModalBox.st,v 1.34 1996-01-17 12:02:48 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/ModalBox.st,v 1.35 1996-02-01 19:49:49 cg Exp $'
! !
ModalBox initialize!
--- a/SimpleView.st Thu Feb 01 20:48:22 1996 +0100
+++ b/SimpleView.st Thu Feb 01 20:49:49 1996 +0100
@@ -4642,6 +4642,20 @@
]
!
+hide
+ "for protocol compatibility with modal dialogs;
+ ignored here."
+
+ ^ self
+!
+
+hideRequest
+ "for protocol compatibility with modal dialogs;
+ ignored here."
+
+ ^ self
+!
+
map
"make the view visible on the screen"
@@ -5860,6 +5874,6 @@
!SimpleView class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview/SimpleView.st,v 1.47 1996-01-27 15:35:03 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/SimpleView.st,v 1.48 1996-02-01 19:49:45 cg Exp $'
! !
SimpleView initialize!
--- a/WGroup.st Thu Feb 01 20:48:22 1996 +0100
+++ b/WGroup.st Thu Feb 01 20:49:49 1996 +0100
@@ -798,7 +798,7 @@
].
key == #Escape ifTrue:[
isModal ifTrue:[
- topViews first hide
+ topViews first hideRequest
]
]
].
@@ -1162,6 +1162,6 @@
!WindowGroup class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview/Attic/WGroup.st,v 1.59 1996-01-31 01:50:48 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/Attic/WGroup.st,v 1.60 1996-02-01 19:49:40 cg Exp $'
! !
WindowGroup initialize!
--- a/WindowGroup.st Thu Feb 01 20:48:22 1996 +0100
+++ b/WindowGroup.st Thu Feb 01 20:49:49 1996 +0100
@@ -798,7 +798,7 @@
].
key == #Escape ifTrue:[
isModal ifTrue:[
- topViews first hide
+ topViews first hideRequest
]
]
].
@@ -1162,6 +1162,6 @@
!WindowGroup class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview/WindowGroup.st,v 1.59 1996-01-31 01:50:48 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/WindowGroup.st,v 1.60 1996-02-01 19:49:40 cg Exp $'
! !
WindowGroup initialize!