class: CheckBox
comment/format in:
#label
#model:
#resizeForChangedLabel
changed:
#initialize
#label:
category of: #nativeWindowType
--- a/CheckBox.st Mon Jul 21 16:15:34 2014 +0200
+++ b/CheckBox.st Sun Aug 03 14:30:57 2014 +0200
@@ -545,7 +545,7 @@
!
label
- "return the labels logo"
+ "return the label's logo"
^ labelView label
@@ -558,6 +558,11 @@
|xlatedLabel|
xlatedLabel := self defineShortcutAndTranslateLabelStringFrom:aStringOrImageOrForm.
+ self isNativeWidget ifTrue:[
+ drawableId notNil ifTrue:[
+ device changeLabel:xlatedLabel in:drawableId
+ ]
+ ].
labelView label:xlatedLabel.
self resizeForChangedLabel.
!
@@ -784,45 +789,50 @@
super initialize.
self borderWidth:0.
- checkToggleClass := self defaultCheckToggleClass.
-
hLayout := #fixLeftSpace.
vLayout := #center.
- CheckToggleLeft ~~ false ifTrue:[
- "/ toggle first ...
- toggleView := checkToggleClass in:self.
+ checkToggleClass := self defaultCheckToggleClass.
+
+ self isNativeWidget ifTrue:[
+ toggleView := checkToggleClass new. "/ but not in self - never realized
+ labelView := CheckLabel new. "/ but not in self - never realized
+ ] ifFalse:[
+ CheckToggleLeft ~~ false ifTrue:[
+ "/ toggle first ...
+ toggleView := checkToggleClass in:self.
+ ].
+
+ labelView := CheckLabel in:self.
+ "/ a kludge
+ styleSheet name ~~ #motif ifTrue:[
+ labelView label:'check'; borderWidth:0.
+ ].
+ labelView forceResize.
+ labelView adjust:#left.
+ self initialHeight:labelView preferredHeight + ViewSpacing.
+
+ CheckToggleLeft == false ifTrue:[
+ "/ toggle last ...
+ toggleView := checkToggleClass in:self.
+ ].
+
+ (styleSheet at:'checkBoxStyle' default:styleSheet name) == #motif ifTrue:[
+ toggleView activeLogo:nil.
+ toggleView passiveLogo:nil.
+ toggleView activeLevel:-2.
+ toggleView passiveLevel:2.
+ toggleView extent:10@10.
+ toggleView sizeFixed:true.
+ ].
+
+ "/ my controller handles both components
+ labelView setController:controller.
+ toggleView setController:controller.
+ "/ the label can be clicked as well
+ labelView cursor:Cursor hand.
].
- labelView := CheckLabel in:self.
- "/ a kludge
- styleSheet name ~~ #motif ifTrue:[
- labelView label:'check'; borderWidth:0.
- ].
- labelView forceResize.
- labelView adjust:#left.
- self initialHeight:labelView preferredHeight + ViewSpacing.
-
- CheckToggleLeft == false ifTrue:[
- "/ toggle last ...
- toggleView := checkToggleClass in:self.
- ].
-
- (styleSheet at:'checkBoxStyle' default:styleSheet name) == #motif ifTrue:[
- toggleView activeLogo:nil.
- toggleView passiveLogo:nil.
- toggleView activeLevel:-2.
- toggleView passiveLevel:2.
- toggleView extent:10@10.
- toggleView sizeFixed:true.
- ].
-
- "/ my controller handles both components
- labelView setController:controller.
- toggleView setController:controller.
-
- "/ the label can be clicked as well
- labelView cursor:Cursor hand.
self cursor:Cursor hand.
"
@@ -871,6 +881,15 @@
toggleView notNil ifTrue:[
toggleView beInvisible.
].
+!
+
+nativeWindowType
+ "return a symbol describing my native window type
+ (may be used internally by the device as a native window creation hint)"
+
+ ^ #CheckBox
+
+ "Created: 2.5.1997 / 14:41:00 / cg"
! !
!CheckBox methodsFor:'private'!
@@ -922,24 +941,13 @@
"Modified: / 12-01-2008 / 23:27:45 / cg"
! !
-!CheckBox methodsFor:'queries-internal'!
-
-nativeWindowType
- "return a symbol describing my native window type
- (may be used internally by the device as a native window creation hint)"
-
- ^ #CheckBox
-
- "Created: 2.5.1997 / 14:41:00 / cg"
-! !
-
!CheckBox class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libwidg2/CheckBox.st,v 1.88 2014-02-18 14:26:23 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg2/CheckBox.st,v 1.89 2014-08-03 12:30:57 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libwidg2/CheckBox.st,v 1.88 2014-02-18 14:26:23 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libwidg2/CheckBox.st,v 1.89 2014-08-03 12:30:57 cg Exp $'
! !