StandardSystemView.st
changeset 69 04d0949dc053
parent 54 29a6b2f8e042
child 72 3e84121988c3
--- a/StandardSystemView.st	Wed Aug 24 01:35:05 1994 +0200
+++ b/StandardSystemView.st	Wed Aug 24 01:35:20 1994 +0200
@@ -22,7 +22,7 @@
 COPYRIGHT (c) 1989 by Claus Gittinger
               All Rights Reserved
 
-$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.9 1994-08-05 01:15:06 claus Exp $
+$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.10 1994-08-23 23:34:43 claus Exp $
 '!
 
 !StandardSystemView class methodsFor:'documentation'!
@@ -43,7 +43,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.9 1994-08-05 01:15:06 claus Exp $
+$Header: /cvs/stx/stx/libview/StandardSystemView.st,v 1.10 1994-08-23 23:34:43 claus Exp $
 "
 !
 
@@ -194,10 +194,29 @@
     "add the receiver (a topview) to the current projects set-of-views.
      (If there is a current project)"
 
-    |p|
+    |project p|
+
+    "
+     avoid introducing a new global here
+    "
+    project := Smalltalk at:#Project ifAbsent:[].
+    (project notNil and:[(p := project current) notNil]) ifTrue:[
+        p addView: self
+    ]
+!
 
-    (Project notNil and:[(p := Project current) notNil]) ifTrue:[
-        p addView: self
+removeFromCurrentProject
+    "remove the receiver (a topview) from the current projects set-of-views.
+     (If there is a current project)"
+
+    |project p|
+
+    "
+     avoid introducing a new global here
+    "
+    project := Smalltalk at:#Project ifAbsent:[].
+    (project notNil and:[(p := project current) notNil]) ifTrue:[
+        p removeView:self
     ]
 !
 
@@ -284,9 +303,7 @@
 
 destroy
     super destroy.
-    Project current notNil ifTrue:[
-        Project current removeView:self
-    ].
+    self removeFromCurrentProject
 ! !
 
 !StandardSystemView methodsFor:'private'!
@@ -378,6 +395,20 @@
     self open
 ! !
 
+!StandardSystemView methodsFor:'misc'!
+
+withWaitCursorDo:aBlock
+    "evaluate aBlock while showing a waitCursor in all my views"
+
+    self withCursor:(Cursor wait) do:aBlock
+!
+
+withCursor:aCursor do:aBlock
+    "evaluate aBlock while showing aCursor in all my views"
+
+    windowGroup withCursor:aCursor do:aBlock
+! !
+
 !StandardSystemView methodsFor:'accessing'!
 
 heightIncludingBorder