Widget Encyclopedia : WkRadioButton

WkRadioButton
WkRadioButton provides a customizable version of a standard radio button. It has a boolean value that is set to true when the box is checked and false when the box is unchecked. The value is toggled on and off by clicking on the radio button. The state of a checkbox can be queried and changed using the #getState and #setState:notify: messages, respectively. Radiobuttons call their valueChanged callback when their state is changed. The textual label that appears to the right of the check box can be changed at runtime with the #labelString: message.
Protocol
alignment: resourceValue
Sets the horizontal alignment for the widget's image.
check
Set the receiver's state to checked (true).
click
Programatically click the button.
drawPolicy: anInteger
Specifies the drawing policy used in rendering buttons. The drawing policy determines two things for a button:
1. how the button draws itself so it looks like a button;
2. how the button animates when pressed.
Default: XmFLATDRAWPOLICY (Flat)
Valid resource values:
XmSHADOWEDTWOSTATEDRAWPOLICY (Shadowed Two State) - Buttons are drawn with a 3D shadowed outline and exhibit a simple 2-state (OFF and ON) state rendering.
XmSHADOWEDTHREESTATEDRAWPOLICY (Shadowed Three State) - Buttons are drawn with a 3D shadowed outline and exhibit a 3-state (OFF, ON, and PRESSED) state rendering.
XmOUTLINEDRAWPOLICY (Outlined) - Buttons are drawn with a simple etched (non-shadowed) outline and exhibit a 2-state (OFF and ON) state rendering.
XmFLATDRAWPOLICY (Flat) - Buttons are drawn flat without a 3D shadow.
 
getState
Answer the state of the checkbox.
 
horizontalAlignment: anInteger
Specifies the horizontal alignment for the widget's image.
Default: XmALIGNMENTBEGINNING (Left)
Valid resource values:
XmALIGNMENTBEGINNING (Left) - Causes the center of the image to be horizontally aligned with the left edge of the widget's window.
XmALIGNMENTCENTER (Center) - Causes the center of the image to be horizontally aligned in the center of the widget's window.
XmALIGNMENTEND (Right) - Causes the center of the image to be horizontally aligned with the right edge of the widget's window.
 
labelCheckedString: aString
Specifies the renderable object (string) which draws on the face of the widget when it is checked.
 
labelInsensitiveString: aString
Specifies the renderable object (string) which draws on the face of the widget when it is disabled.
 
labelPressedString: aString
Specifies the renderable object (string) which draws on the face of the widget when it is pressed.
 
labelString: aString
Specifies the renderable object (string) which draws on the face of the widget.
 
mnemonic: aCharacter
Provides the user with alternate means for selecting a button.
 
orientation: anInteger
Specifies whether the image and label are displayed vertically or horizontally.
Default: XmHORIZONTAL (Horizontal)
Valid resource values:
XmVERTICAL (Vertical) - Displays the image and label vertically.
XmHORIZONTAL (Horizontal) - Displays the image and label horizontally.
 
set: aBoolean
Displays the button in its selected state if set to true.
 
setState: newState notify: notify
Sets or changes the EwToggleButton's current state.
newState - Specifies a Boolean value that indicates whether the checkbox state is selected or unselected. If true, the button state is selected; if false, button state is unselected. notify - Indicates whether valueChangedCallback is it can be either true or false.
 
turnOff
Set the receiver's state to off (false).
 
turnOn
Set the receiver's state to on (true).
 
uncheck
Set the receiver's state to unchecked (false).
 
verticalAlignment: anInteger
Specifies the vertical alignment for the widget's image.
Default: XmALIGNMENTCENTER (Center)
Valid resource values:
XmALIGNMENTCENTER (Center) - Causes the center of the image to be vertically aligned in the center of the widget's window.
XmALIGNMENTTOP (Top) - Causes the top edge of the image to be vertically aligned with the top edge of the widget's window.
XmALIGNMENTBOTTOM (Bottom) - Causes the center of the image to be vertically aligned in the center of the widget's window.
Callbacks & Events
Arm Callback
These callbacks are triggered when the button is armed. Buttons are armed and appear pressed whenever the moused is pressed within the button and not yet released. If the mouse is moved outside of the button while still pressed, the button will be disarmed and appear unpressed. If the mouse is released while still in the button, the button is activated
 
Default Action Callback
These callbacks are triggered when the widget is double clicked.
 
Disarm Callback
These callbacks are triggered when the button is disarmed. Buttons are disarmed whenever the mouse is moved outside of the button after it has been armed. Moving the mouse back over the button while the mouse button is still down will cause the button to become rearmed.
 
Value Changed Callback
These callbacks are triggered when the checkbox value is changed.
Call data arguments:
set - a Boolean value indicating if the checkbox is toggle on (true) or off (false).
Editor
Border Width
Specifies the width of the border that surrounds the widget’s window on all four sides. The width is specified in pixels. A width of zero means that no border will show.
Border - Causes the widget to have a border.
No Border - Causes the widget to have no border.
 
Draw Policy
Specifies the drawing policy used in rendering buttons. The drawing policy determines two things for a button:
1. how the button draws itself so it looks like a button;
2. how the button animates when pressed.
Shadowed Two State - Buttons are drawn with a 3D shadowed outline and exhibit a simple 2-state (OFF and ON) state rendering.
Shadowed Three State - Buttons are drawn with a 3D shadowed outline and exhibit a 3-state (OFF, ON, and PRESSED) state rendering.
Outlined - Buttons are drawn with a simple etched (non-shadowed) outline and exhibit a 2-state (OFF and ON) state rendering.
Flat - Buttons are drawn flat without a 3D shadow.
 
Enabled
Determines whether a widget will react to input events. Disabled (insensitive) widgets do not react to input events.
 
Horizontal Alignment
Specifies the horizontal alignment for the widget's image.
Left - Causes the center of the image to be horizontally aligned with the left edge of the widget's window.
Center - Causes the center of the image to be horizontally aligned in the center of the widget's window.
Right - Causes the center of the image to be horizontally aligned with the right edge of the widget's window.
 
Label - Default
Specifies the default label string.
 
Label - Pressed
Specifies the label string when the widget is pressed.
 
Label - Disabled
Specifies the label string when the widget is disabled.
 
Label - Checked
Specifies the label string when the widget is checked.
 
Mnemonic
Provides the user with alternate means for selecting a button.
 
Orientation
Specifies whether the image and label are displayed vertically or horizontally.
Vertical - Displays the image and label vertically.
Horizontal - Displays the image and label horizontally.
 
Set
Displays the button in its selected state if set to true.
 
Vertical Alignment
Specifies the vertical alignment for the widget's image.
Center - Causes the center of the image to be vertically aligned in the center of the widget's window.
Top - Causes the top edge of the image to be vertically aligned with the top edge of the widget's window.
Bottom - Causes the center of the image to be vertically aligned in the center of the widget's window.
 
Visible
Maps the widget (makes visible) as soon as it is both realized and managed, if set to True. If set to False, the client is responsible for mapping and unmapping the widget.
Example
The following example code creates a blue WkRadioButton that is oriented vertically (e.g., checkbox above the label) and centered horizontally within its bounds.
aWkRadioButton := WkRadioButton
createWidget: 'aWkRadioButton'
parent: self form
argBlock: [:w | w
x: 50;
y: 54;
width: 88;
height: 28;
foregroundColor: (CgRGBColor
red: 16r0
green: 16r0
blue: 16rFF00);
horizontalAlignment: XmALIGNMENTCENTER;
labelString: 'RadioButton';
orientation: XmVERTICAL;
scale].