class: CheckBox
authorClaus Gittinger <cg@exept.de>
Sun, 03 Aug 2014 14:30:57 +0200
changeset 4658 24bddb17e7f2
parent 4657 1cc679f1716d
child 4659 4c833dabb9f8
class: CheckBox comment/format in: #label #model: #resizeForChangedLabel changed: #initialize #label: category of: #nativeWindowType
CheckBox.st
--- 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 $'
 ! !