equal
deleted
inserted
replaced
13 Label subclass:#Button |
13 Label subclass:#Button |
14 instanceVariableNames:'activeLogo passiveLogo disabledLogo focusLogo onLevel offLevel |
14 instanceVariableNames:'activeLogo passiveLogo disabledLogo focusLogo onLevel offLevel |
15 disabledFgColor activeFgColor activeBgColor enteredFgColor |
15 disabledFgColor activeFgColor activeBgColor enteredFgColor |
16 enteredBgColor isReturnButton shadowForm lightForm formColor |
16 enteredBgColor isReturnButton shadowForm lightForm formColor |
17 formShadowColor formLightColor edgeStyle halfShadowColor |
17 formShadowColor formLightColor edgeStyle halfShadowColor |
18 halfLightColor defaultable' |
18 halfLightColor defaultable enterLevel leaveLevel' |
19 classVariableNames:'ReturnForm ReturnLightForm ReturnShadowForm DefaultActiveLevel |
19 classVariableNames:'ReturnForm ReturnLightForm ReturnShadowForm DefaultActiveLevel |
20 DefaultPassiveLevel DefaultEdgeStyle DefaultBorderWidth |
20 DefaultPassiveLevel DefaultEdgeStyle DefaultBorderWidth |
21 DefaultForegroundColor DefaultBackgroundColor |
21 DefaultForegroundColor DefaultBackgroundColor |
22 DefaultDisabledForegroundColor DefaultDisabledBackgroundColor |
22 DefaultDisabledForegroundColor DefaultDisabledBackgroundColor |
23 DefaultEnteredForegroundColor DefaultEnteredBackgroundColor |
23 DefaultEnteredForegroundColor DefaultEnteredBackgroundColor |
1280 "set the edgestyle - currently only #soft or nil" |
1280 "set the edgestyle - currently only #soft or nil" |
1281 |
1281 |
1282 edgeStyle := aSymbol |
1282 edgeStyle := aSymbol |
1283 ! |
1283 ! |
1284 |
1284 |
|
1285 enterLevel |
|
1286 "return the level to be used when the mouse |
|
1287 pointer enters the button area" |
|
1288 |
|
1289 ^ enterLevel |
|
1290 |
|
1291 "Created: 26.4.1997 / 20:48:53 / cg" |
|
1292 "Modified: 26.4.1997 / 20:49:29 / cg" |
|
1293 ! |
|
1294 |
|
1295 enterLevel:aNumber |
|
1296 "set the level to be used when the mouse |
|
1297 pointer enters the button area" |
|
1298 |
|
1299 enterLevel := aNumber |
|
1300 |
|
1301 "Created: 26.4.1997 / 20:49:10 / cg" |
|
1302 "Modified: 26.4.1997 / 20:49:35 / cg" |
|
1303 ! |
|
1304 |
1285 enteredBackgroundColor |
1305 enteredBackgroundColor |
1286 "return the background color to be used when the mouse |
1306 "return the background color to be used when the mouse |
1287 pointer enters the button area" |
1307 pointer enters the button area" |
1288 |
1308 |
1289 ^ enteredBgColor |
1309 ^ enteredBgColor |
1329 self borderWidth:(aBoolean ifTrue:[1] ifFalse:[0]) |
1349 self borderWidth:(aBoolean ifTrue:[1] ifFalse:[0]) |
1330 ]. |
1350 ]. |
1331 isReturnButton := aBoolean. |
1351 isReturnButton := aBoolean. |
1332 self newLayout |
1352 self newLayout |
1333 ] |
1353 ] |
|
1354 ! |
|
1355 |
|
1356 leaveLevel |
|
1357 "return the level to be used when the mouse |
|
1358 pointer leaves the button area" |
|
1359 |
|
1360 ^ leaveLevel |
|
1361 |
|
1362 "Created: 26.4.1997 / 20:48:26 / cg" |
|
1363 "Modified: 26.4.1997 / 20:49:47 / cg" |
|
1364 ! |
|
1365 |
|
1366 leaveLevel:aNumber |
|
1367 "set the level to be used when the mouse |
|
1368 pointer leaves the button area" |
|
1369 |
|
1370 leaveLevel := aNumber |
|
1371 |
|
1372 "Created: 26.4.1997 / 20:49:22 / cg" |
|
1373 "Modified: 26.4.1997 / 20:49:53 / cg" |
1334 ! |
1374 ! |
1335 |
1375 |
1336 loseDefault |
1376 loseDefault |
1337 "ST-80 compatibility - clear isReturnButton attribute" |
1377 "ST-80 compatibility - clear isReturnButton attribute" |
1338 |
1378 |
1746 shadowForm := self class returnFormOn:device. |
1786 shadowForm := self class returnFormOn:device. |
1747 formColor := Black |
1787 formColor := Black |
1748 ]. |
1788 ]. |
1749 ]. |
1789 ]. |
1750 |
1790 |
1751 "Modified: 17.1.1997 / 23:15:57 / cg" |
1791 "Modified: 26.4.1997 / 20:53:05 / cg" |
1752 ! |
1792 ! |
1753 |
1793 |
1754 initialize |
1794 initialize |
1755 super initialize. |
1795 super initialize. |
1756 |
1796 |
2008 redraw |
2048 redraw |
2009 "redraw the button. |
2049 "redraw the button. |
2010 Thats like redrawing a label, but use different colors when pressed |
2050 Thats like redrawing a label, but use different colors when pressed |
2011 or entered." |
2051 or entered." |
2012 |
2052 |
2013 |fg bg entered noFrame| |
2053 |fg bg entered noFrame lvl| |
2014 |
2054 |
2015 shown ifFalse:[^ self]. |
2055 shown ifFalse:[^ self]. |
2016 |
2056 |
2017 disabledLogo notNil ifTrue:[ |
2057 disabledLogo notNil ifTrue:[ |
2018 controller enabled ifFalse:[ |
2058 controller enabled ifFalse:[ |
2033 fg := disabledFgColor |
2073 fg := disabledFgColor |
2034 ] ifTrue:[ |
2074 ] ifTrue:[ |
2035 entered := controller entered. |
2075 entered := controller entered. |
2036 entered ifTrue:[ |
2076 entered ifTrue:[ |
2037 enteredFgColor notNil ifTrue:[fg := enteredFgColor]. |
2077 enteredFgColor notNil ifTrue:[fg := enteredFgColor]. |
2038 enteredBgColor notNil ifTrue:[bg := enteredBgColor] |
2078 enteredBgColor notNil ifTrue:[bg := enteredBgColor]. |
|
2079 lvl := enterLevel. |
|
2080 ] ifFalse:[ |
|
2081 lvl := leaveLevel |
|
2082 ]. |
|
2083 (enterLevel notNil and:[leaveLevel notNil]) ifTrue:[ |
|
2084 offLevel ~~ lvl ifTrue:[ |
|
2085 offLevel := lvl. |
|
2086 offLevel ~~ level ifTrue:[ |
|
2087 self level:offLevel |
|
2088 ] |
|
2089 ] |
2039 ]. |
2090 ]. |
2040 (controller pressed and:[entered or:[controller isTriggerOnDown]]) ifTrue:[ |
2091 (controller pressed and:[entered or:[controller isTriggerOnDown]]) ifTrue:[ |
2041 noFrame := false. |
2092 noFrame := false. |
2042 activeFgColor isNil ifTrue:[ |
2093 activeFgColor isNil ifTrue:[ |
2043 onLevel == offLevel ifTrue:[ |
2094 onLevel == offLevel ifTrue:[ |
2067 self paint:fg. |
2118 self paint:fg. |
2068 self displayRectangleX:0 y:0 width:width height:height. |
2119 self displayRectangleX:0 y:0 width:width height:height. |
2069 ^ self |
2120 ^ self |
2070 ]. |
2121 ]. |
2071 |
2122 |
2072 "Modified: 1.4.1997 / 13:26:16 / cg" |
2123 "Modified: 26.4.1997 / 20:59:05 / cg" |
2073 ! |
2124 ! |
2074 |
2125 |
2075 redrawIfPressed |
2126 redrawIfPressed |
2076 "redraw the button, but only if visible and currently being pressed" |
2127 "redraw the button, but only if visible and currently being pressed" |
2077 |
2128 |
2119 ! ! |
2170 ! ! |
2120 |
2171 |
2121 !Button class methodsFor:'documentation'! |
2172 !Button class methodsFor:'documentation'! |
2122 |
2173 |
2123 version |
2174 version |
2124 ^ '$Header: /cvs/stx/stx/libwidg/Button.st,v 1.84 1997-04-18 18:36:15 cg Exp $' |
2175 ^ '$Header: /cvs/stx/stx/libwidg/Button.st,v 1.85 1997-04-26 19:00:46 cg Exp $' |
2125 ! ! |
2176 ! ! |