DeviceWorkstation.st
changeset 6285 87e579c41b7a
parent 6253 a5426060b907
child 6293 ffbc09caad84
--- a/DeviceWorkstation.st	Fri Feb 28 12:17:54 2014 +0100
+++ b/DeviceWorkstation.st	Fri Feb 28 13:57:05 2014 +0100
@@ -5844,6 +5844,19 @@
 
 removeSelectionHandler:someone
     "ignored here"
+!
+
+withoutExitingOnLastCloseDo:aBlock
+    "evaluate a block, but do not exit when the last view is closed.
+     This is used when an operation is to be performed, which possibly
+     leads to a temporary no-more-windows-open situation.
+     Concrete: when reopening a launcher"
+
+    |sav|
+
+    sav := exitOnLastClose.
+    exitOnLastClose := false.
+    aBlock ensure:[ exitOnLastClose := sav ].
 ! !
 
 !DeviceWorkstation methodsFor:'initialization & release'!
@@ -8292,11 +8305,11 @@
 !DeviceWorkstation class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.601 2014-02-07 14:23:19 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.602 2014-02-28 12:57:05 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.601 2014-02-07 14:23:19 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/DeviceWorkstation.st,v 1.602 2014-02-28 12:57:05 cg Exp $'
 ! !