resource release on display shutDown
authorClaus Gittinger <cg@exept.de>
Thu, 16 Jan 1997 19:34:48 +0100
changeset 1230 279016623d5a
parent 1229 249c0d78fd34
child 1231 75e038ced9d7
resource release on display shutDown
Image.st
--- a/Image.st	Thu Jan 16 18:14:25 1997 +0100
+++ b/Image.st	Thu Jan 16 19:34:48 1997 +0100
@@ -860,6 +860,26 @@
     "Created: 7.1.1997 / 16:04:49 / cg"
 ! !
 
+!Image class methodsFor:'cleanup'!
+
+releaseResourcesOnDevice:aDevice
+    "this is sent when a display connection is closed,
+     to release all cached Images from that device"
+
+    Lobby 
+        unregisterAllForWhich:[:anImage | 
+                |ok|
+                ok := anImage graphicsDevice == aDevice.
+                ok ifTrue:[
+                    anImage quickRelease
+                ].
+                ok
+        ]
+
+    "Created: 16.1.1997 / 19:30:44 / cg"
+    "Modified: 16.1.1997 / 19:33:49 / cg"
+! !
+
 !Image class methodsFor:'file reading'!
 
 fromFile:aFileName
@@ -7435,6 +7455,17 @@
     "some Image has been collected - nothing to do"
 !
 
+quickRelease
+    "release device resources"
+
+    device := nil.
+    deviceForm := nil.
+    monoDeviceForm := nil.
+    fullColorDeviceForm := nil.
+
+    "Modified: 16.1.1997 / 19:33:01 / cg"
+!
+
 release
     "release device resources"
 
@@ -8729,6 +8760,6 @@
 !Image class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/Image.st,v 1.135 1997-01-10 17:59:11 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/Image.st,v 1.136 1997-01-16 18:34:48 cg Exp $'
 ! !
 Image initialize!