ButtonController.st
changeset 162 1c68705a8903
parent 160 0f356ac274e0
child 174 d80a6cc3f9b2
--- a/ButtonController.st	Sat Sep 16 01:52:06 1995 +0200
+++ b/ButtonController.st	Mon Sep 18 12:39:22 1995 +0200
@@ -40,7 +40,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libwidg/ButtonController.st,v 1.18 1995-09-14 17:43:23 claus Exp $
+$Header: /cvs/stx/stx/libwidg/ButtonController.st,v 1.19 1995-09-18 10:38:03 claus Exp $
 "
 !
 
@@ -154,14 +154,21 @@
 enableChannel:aValueHolder
     "set the valueHolder, which holds the enable boolean value"
 
+    |wasEnabled|
+
     enableChannel notNil ifTrue:[
+	wasEnabled := enableChannel value.
 	enableChannel retractInterrestFor:self. 
+    ] ifFalse:[
+	wasEnabled := true
     ].
     enableChannel := aValueHolder.
     aValueHolder onChangeSend:#enableStateChange to:self.
-    view notNil ifTrue:[
-	view redraw
+    enableChannel value ~~ wasEnabled ifTrue:[
+	self enableStateChange
     ]
+
+    "Modified: 17.9.1995 / 19:41:18 / claus"
 !
 
 pressChannel:aChannel
@@ -518,7 +525,9 @@
 enableStateChange
     "this is sent, whenever the enable value has changed"
 
-    view notNil ifTrue:[view redraw]
+    view notNil ifTrue:[view enableStateChangeRedraw]
+
+    "Modified: 17.9.1995 / 19:55:52 / claus"
 ! !
 
 !ButtonController methodsFor:'initialization'!