some corrections for button press indication
authortz
Tue, 03 Feb 1998 18:50:47 +0100
changeset 720 7187e69c300b
parent 719 3a833ca1c54a
child 721 c33e43c9fe66
some corrections for button press indication
MenuPanel.st
--- a/MenuPanel.st	Tue Feb 03 18:46:39 1998 +0100
+++ b/MenuPanel.st	Tue Feb 03 18:50:47 1998 +0100
@@ -3253,7 +3253,7 @@
 
     (indicator := self indicator) notNil ifTrue:[
         indicator = rawLabel icon ifFalse:[
-            rawLabel icon:indicator.
+            self isButton ifFalse: [rawLabel icon:indicator].
           ^ self redraw.
         ]
     ].
@@ -3428,15 +3428,15 @@
     self isButton
     ifTrue:
     [   
-        self hasIndication ifTrue: [img icon: nil].
-        self isSelected 
+        (self hasIndication and: [img icon notNil]) ifTrue: [img icon: nil. menuPanel mustRearrange].
+        (self isSelected or: [self hasIndication and: [self indicationValue]])
+        ifTrue:
+        [   
+            img displayOn:menuPanel x:(l + hrzInset) + 1 y: y + 1.
+        ]
         ifFalse:
-        [   
+        [        
             img displayOn:menuPanel x:(l + hrzInset) y:y.
-        ]
-        ifTrue:
-        [
-            img displayOn:menuPanel x:(l + hrzInset) + 1 y: y + 1.
         ].
         self drawButtonFrame.
     ]
@@ -3478,7 +3478,6 @@
         menuPanel paint:cLb.
         menuPanel displayForm:img x:x y:y.
     ]
-
 !
 
 redraw
@@ -3681,7 +3680,7 @@
             ifTrue:  [rawLabel := rawLabel onDevice:(menuPanel device)]
             ifFalse: [rawLabel := LabelAndIcon form:self indicator image:rawLabel]
     ] ifFalse:[
-        rawLabel class == LabelAndIcon ifTrue:[
+        (rawLabel class == LabelAndIcon and: [self isButton not]) ifTrue:[
             img := rawLabel icon onDevice:(menuPanel device).
             rawLabel icon:img.
         ]
@@ -4169,8 +4168,8 @@
         ].
       ^ self
     ].
-    menuPanel shown ifFalse:[^ self].
-    self redraw.
+    menuPanel shown ifFalse:[^ self].  
+    (self hasIndication not or: [self isButton not]) ifTrue: [self redraw].
 
     subMenu isNil ifTrue:[
         menuPanel isPopUpView ifTrue:[
@@ -4242,6 +4241,6 @@
 !MenuPanel class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/MenuPanel.st,v 1.61 1998-02-03 15:58:46 tz Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/MenuPanel.st,v 1.62 1998-02-03 17:50:47 tz Exp $'
 ! !
 MenuPanel initialize!