--- a/Button.st Sat Apr 26 14:02:26 1997 +0200
+++ b/Button.st Sat Apr 26 21:00:46 1997 +0200
@@ -15,7 +15,7 @@
disabledFgColor activeFgColor activeBgColor enteredFgColor
enteredBgColor isReturnButton shadowForm lightForm formColor
formShadowColor formLightColor edgeStyle halfShadowColor
- halfLightColor defaultable'
+ halfLightColor defaultable enterLevel leaveLevel'
classVariableNames:'ReturnForm ReturnLightForm ReturnShadowForm DefaultActiveLevel
DefaultPassiveLevel DefaultEdgeStyle DefaultBorderWidth
DefaultForegroundColor DefaultBackgroundColor
@@ -1282,6 +1282,26 @@
edgeStyle := aSymbol
!
+enterLevel
+ "return the level to be used when the mouse
+ pointer enters the button area"
+
+ ^ enterLevel
+
+ "Created: 26.4.1997 / 20:48:53 / cg"
+ "Modified: 26.4.1997 / 20:49:29 / cg"
+!
+
+enterLevel:aNumber
+ "set the level to be used when the mouse
+ pointer enters the button area"
+
+ enterLevel := aNumber
+
+ "Created: 26.4.1997 / 20:49:10 / cg"
+ "Modified: 26.4.1997 / 20:49:35 / cg"
+!
+
enteredBackgroundColor
"return the background color to be used when the mouse
pointer enters the button area"
@@ -1333,6 +1353,26 @@
]
!
+leaveLevel
+ "return the level to be used when the mouse
+ pointer leaves the button area"
+
+ ^ leaveLevel
+
+ "Created: 26.4.1997 / 20:48:26 / cg"
+ "Modified: 26.4.1997 / 20:49:47 / cg"
+!
+
+leaveLevel:aNumber
+ "set the level to be used when the mouse
+ pointer leaves the button area"
+
+ leaveLevel := aNumber
+
+ "Created: 26.4.1997 / 20:49:22 / cg"
+ "Modified: 26.4.1997 / 20:49:53 / cg"
+!
+
loseDefault
"ST-80 compatibility - clear isReturnButton attribute"
@@ -1748,7 +1788,7 @@
].
].
- "Modified: 17.1.1997 / 23:15:57 / cg"
+ "Modified: 26.4.1997 / 20:53:05 / cg"
!
initialize
@@ -2010,7 +2050,7 @@
Thats like redrawing a label, but use different colors when pressed
or entered."
- |fg bg entered noFrame|
+ |fg bg entered noFrame lvl|
shown ifFalse:[^ self].
@@ -2035,7 +2075,18 @@
entered := controller entered.
entered ifTrue:[
enteredFgColor notNil ifTrue:[fg := enteredFgColor].
- enteredBgColor notNil ifTrue:[bg := enteredBgColor]
+ enteredBgColor notNil ifTrue:[bg := enteredBgColor].
+ lvl := enterLevel.
+ ] ifFalse:[
+ lvl := leaveLevel
+ ].
+ (enterLevel notNil and:[leaveLevel notNil]) ifTrue:[
+ offLevel ~~ lvl ifTrue:[
+ offLevel := lvl.
+ offLevel ~~ level ifTrue:[
+ self level:offLevel
+ ]
+ ]
].
(controller pressed and:[entered or:[controller isTriggerOnDown]]) ifTrue:[
noFrame := false.
@@ -2069,7 +2120,7 @@
^ self
].
- "Modified: 1.4.1997 / 13:26:16 / cg"
+ "Modified: 26.4.1997 / 20:59:05 / cg"
!
redrawIfPressed
@@ -2121,5 +2172,5 @@
!Button class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libwidg/Button.st,v 1.84 1997-04-18 18:36:15 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg/Button.st,v 1.85 1997-04-26 19:00:46 cg Exp $'
! !