SimpleView.st
branchjv
changeset 7803 14d6df784ebb
parent 7765 b8189ae681df
parent 7790 0c9e3f0b79b7
child 7855 46203abe7d57
--- a/SimpleView.st	Thu Jan 19 11:54:19 2017 +0000
+++ b/SimpleView.st	Wed Jan 25 17:20:12 2017 +0000
@@ -1526,11 +1526,16 @@
 
     |newDevice|
 
+    (XWorkstation notNil and:[ XWorkstation isLoaded ]) ifFalse:[
+        self warn:'Could not open display (no XWorkstation class)'.
+        ^ self
+    ].    
+    
     [
-	newDevice := XWorkstation newDispatchingFor:aScreenName.
+        newDevice := XWorkstation newDispatchingFor:aScreenName.
     ] on:Screen deviceOpenErrorSignal do:[:ex|
-	self warn:'Could not open display: ' , aScreenName.
-	^ self
+        self warn:'Could not open display: ' , aScreenName.
+        ^ self
     ].
     ^ (self onDevice:newDevice) open.
 
@@ -4186,9 +4191,13 @@
 controller:aController
     "set the controller - that's the one handling user events"
 
-    controller := aController.
-    controller notNil ifTrue:[
-	controller view:self.
+    aController == self ifTrue:[
+        controller := nil
+    ] ifFalse:[    
+        controller := aController.
+        controller notNil ifTrue:[
+            controller view:self.
+        ]
     ]
 
     "Modified: / 31.10.1997 / 19:58:33 / cg"
@@ -10553,10 +10562,8 @@
     "redraw a part of the view immediately."
 
     self
-	redrawX:(aRectangle left)
-	      y:(aRectangle top)
-	  width:(aRectangle width)
-	 height:(aRectangle height)
+        redrawX:(aRectangle left) y:(aRectangle top)
+        width:(aRectangle width) height:(aRectangle height)
 
     "Modified: 19.4.1997 / 11:54:23 / cg"
 !