[squeak-dev] The Trunk: Morphic-mt.1621.mcz
commits at source.squeak.org
commits at source.squeak.org
Fri Feb 14 14:26:28 UTC 2020
Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.1621.mcz
==================== Summary ====================
Name: Morphic-mt.1621
Author: mt
Time: 14 February 2020, 3:26:18.528667 pm
UUID: 91109cc7-fdb9-df40-97c8-4c1041902725
Ancestors: Morphic-mt.1620
Fixes demo mode / high-dpi scaling bugs in check boxes and radio buttons.
(Note that #scaleIconToDisplay is the best we have at the moment. The overhead in regular (low dpi, no demo mode) images is minimal.)
=============== Diff against Morphic-mt.1620 ===============
Item was changed:
----- Method: MenuItemMorph>>contents:withMarkers:inverse: (in category 'accessing') -----
contents: aString withMarkers: aBool inverse: inverse
"Set the menu item entry. If aBool is true, parse aString for embedded markers."
| markerIndex marker |
self contentString: nil. "get rid of old"
aBool ifFalse: [^super contents: aString].
self removeAllMorphs. "get rid of old markers if updating"
self hasIcon ifTrue: [ self icon: nil ].
(aString notEmpty and: [aString first = $<])
ifFalse: [^super contents: aString].
markerIndex := aString indexOf: $>.
markerIndex = 0 ifTrue: [^super contents: aString].
marker := (aString copyFrom: 1 to: markerIndex) asLowercase.
(#('<on>' '<off>' '<yes>' '<no>') includes: marker)
ifFalse: [^super contents: aString].
self contentString: aString. "remember actual string"
marker := (marker = '<on>' or: [marker = '<yes>']) ~= inverse
ifTrue: [self onImage]
ifFalse: [self offImage].
super contents: (aString copyFrom: markerIndex + 1 to: aString size).
"And set the marker"
+ marker := ImageMorph new image: marker scaleIconToDisplay.
- marker := ImageMorph new image: marker.
marker position: self left @ (self top + 2).
self addMorphFront: marker!
Item was changed:
----- Method: ThreePhaseButtonMorph class>>checkBox (in category 'instance creation') -----
checkBox
"Answer a button pre-initialized with checkbox images."
| f |
^self new
+ onImage: (f := (MenuIcons checkBoxOn dyed: Color red) scaleIconToDisplay);
+ pressedImage: (MenuIcons checkBoxPressed dyed: Color black) scaleIconToDisplay;
+ offImage: (MenuIcons checkBoxOff dyed: Color black) scaleIconToDisplay;
- onImage: (f := MenuIcons checkBoxOn dyed: Color red);
- pressedImage: (MenuIcons checkBoxPressed dyed: Color black);
- offImage: (MenuIcons checkBoxOff dyed: Color black);
extent: f extent + (2 at 0);
setDefaultParameters;
yourself
!
Item was changed:
----- Method: ThreePhaseButtonMorph class>>radioButton (in category 'instance creation') -----
radioButton
"Answer a button pre-initialized with radiobutton images."
| f |
^self new
+ onImage: (f := (MenuIcons radioButtonOn dyed: Color black) scaleIconToDisplay);
+ pressedImage: (MenuIcons radioButtonPressed dyed: Color black) scaleIconToDisplay;
+ offImage: (MenuIcons radioButtonOff dyed: Color black) scaleIconToDisplay;
- onImage: (f := MenuIcons radioButtonOn dyed: Color black);
- pressedImage: (MenuIcons radioButtonPressed dyed: Color black);
- offImage: (MenuIcons radioButtonOff dyed: Color black);
extent: f extent + (2 at 0);
setDefaultParameters;
yourself
!
More information about the Squeak-dev
mailing list
|