|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
|
+--net.rim.device.api.ui.Field
|
+--net.rim.device.api.ui.component.RadioButtonField
Field to provide a radio-button control.
Behaviour
Displays a circular button to the left of the text label. With the default
font, this button is either empty or contain a solid circle depending on the
state of the field. When this field has the focus, the button appears
inverted.
You group together Radio buttons fields using the
RadioButtonGroup class. At most one button within the group can be
selected at any one time. The group can be programmatically created or
changed so that no button is selected, but a user cannot
deselect all fields in the group.
If the control is EDITABLE (radio button fields are
created this way by default), pressing ENTER selects this field and deselects
the previously selected radio button field in the group.
| Field Summary |
| Fields inherited from class net.rim.device.api.ui.Field |
ACTION_INVOKE, EDITABLE, EDITABLE_MASK, FIELD_BOTTOM, FIELD_HALIGN_MASK, FIELD_HCENTER, FIELD_LEFT, FIELD_RIGHT, FIELD_TOP, FIELD_VALIGN_MASK, FIELD_VCENTER, FOCUSABLE, FOCUSABLE_MASK, HIGHLIGHT_FOCUS, HIGHLIGHT_SELECT, NON_FOCUSABLE, NON_SPELLCHECKABLE, READONLY, SPELLCHECKABLE, SPELLCHECKABLE_MASK, STATUS_MOVE_FOCUS_HORIZONTALLY, STATUS_MOVE_FOCUS_VERTICALLY, USE_ALL_HEIGHT, USE_ALL_WIDTH |
| Constructor Summary | ||
RadioButtonField()
Constructs a new RadioButtonField instance. |
||
RadioButtonField(String label)
Constructs a new RadioButtonField instance with label. |
||
RadioButtonField(String label,
RadioButtonGroup group,
boolean selected)
Constructs a new RadioButtonField instance for a group, with label and initial state. |
||
RadioButtonField(String label,
RadioButtonGroup group,
boolean selected,
long style)
Constructs a new RadioButtonField instance for a group, with label, initial state and style. |
||
| Method Summary | ||
protected void |
drawFocus(Graphics graphics,
boolean on)
Draws the focus indicator for this field. |
|
void |
getFocusRect(XYRect rect)
Retrieves this field's current focus region. |
|
RadioButtonGroup |
getGroup()
Retrieves this field's controlling group. |
|
String |
getLabel()
Retrieves this field's label. |
|
int |
getPreferredHeight()
Retrieves this field's preferred height. |
|
int |
getPreferredWidth()
Retrieves this field's preferred width. |
|
boolean |
isSelected()
Determines if this field's radio button is selected. |
|
protected boolean |
keyChar(char key,
int status,
int time)
Traps ENTER or SPACE key generation events. |
|
protected boolean |
keyDown(int keycode,
int time)
This method handles and consumes a key generation event, if it's the '5/GH' key (the 'Action' hotkey for Charm device) that's generated; otherwise, this method does nothing and does not consume the event. |
|
protected void |
layout(int width,
int height)
Lays out this field's contents. |
|
protected void |
makeContextMenu(ContextMenu contextMenu)
Builds this field's context menu. |
|
protected void |
onFocus(int direction)
Invoked when a field receives the focus. |
|
protected void |
onUnfocus()
Invoked when a field loses the focus. |
|
protected void |
paint(Graphics graphics)
Redraws this field. |
|
void |
setLabel(String label)
Sets the label for this field. |
|
void |
setSelected(boolean selected)
Sets the state of this field's radio button. |
|
|
protected boolean |
trackwheelClick(int status,
int time)
Indicates a trackwheel click event. |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public RadioButtonField()
This builds a new, unselected radio button field with no label, and no initial assigned group.
public RadioButtonField(String label)
Before you can use the newly built readio button field, you must add it to a valid radio button group.
label - Label for this field.public RadioButtonField(String label, RadioButtonGroup group, boolean selected)
label - Label for this field.group - RadioButtonGroup this button belongs to.selected - if true, the radio button begins as selected.public RadioButtonField(String label, RadioButtonGroup group, boolean selected, long style)
label - Label for this field.group - RadioButtonGroup this button belongs to.selected - if true, the radio button begins as selected.style - The style for this field.| Method Detail |
public void getFocusRect(XYRect rect)
The framework uses this method to retrieve the current focus region for this field (the extent of the 'radio button' part of the field, not including the label).
getFocusRect in class Fieldrect - To contain the focus rect for this field in local
coordinates.public RadioButtonGroup getGroup()
Invoke this method to retrieve the radio button group that controls this field.
public int getPreferredHeight()
Field.getPreferredHeight() for more information.
Managers may make use of this value during layout.
getPreferredHeight in class Fieldpublic int getPreferredWidth()
Field.getPreferredWidth() for more information.
Managers make use of this value during layout.
getPreferredWidth in class Fieldpublic boolean isSelected()
IllegalStateException - If the button is not a member of a group.
protected boolean keyChar(char key,
int status,
int time)
This method handles and consumes a key generation event, if it's the ENTER or SPACE key that's generated; otherwise, this method does nothing and does not consume the event.
If the ENTER or SPACE key was pressed, then this method selects this
field as if invoking setSelected(true).
key - Character generated by the event.status - Modifier key status (this parameter is ignored).time - Number of milliseconds since the device was turned on.
protected boolean keyDown(int keycode,
int time)
This method handles and consumes a key generation event, if it's the '5/GH' key (the 'Action' hotkey for Charm device) that's generated; otherwise, this method does nothing and does not consume the event.
If the '5/GH' key was pressed, then this method selects this
field as if invoking setSelected(true).
keycode - Character generated by the event.time - Number of milliseconds since the device was turned on.Field.keyDown(int, int).
protected void layout(int width,
int height)
This field's manager invokes this method during the layout process to instruct this field to arrange its contents, given an amount of available space.
width - Horizontal space available (note that radio button fields
always use all available horizontal space).height - Vertical space available.protected void makeContextMenu(ContextMenu contextMenu)
makeContextMenu in class FieldcontextMenu - Context menu to build.protected void onFocus(int direction)
Field The method will not be invoked if this field already has focus. Also,
it will not be invoked if this field returns false from
Field.isFocusable().
Managers should find a child field that accepts focus and cascade this method's call to it.
The direction value indicates how the focus came to enter the field:
Fielddirection - Indicates from which direction the focus enters the
field.protected void onUnfocus()
FieldThe method will not be invoked if this field does not already have the focus.
By default, this method clears the muddy bit and removes selection. If your custom field requires special handling upon losing the focus, you must override this method. Don't forget to call this method on the parent though, or the muddy bit won't get cleared.
public void setLabel(String label)
label - New label for this field.public void setSelected(boolean selected)
Invoke this method to change the selected state of this radio button
field. Notice that radio button selection is typically handled by the
RadioButtonGroup; using this method is a programmatic change
which can result in no buttons in a group being selected.
selected - True if this field should be selected (if another radio
button field in the group was selected, it is deselected); false if this
field should be deselected (if this radio button field was previously
selected, then no field in the group will be selected).IllegalStateException - If the button is not a member of a group.
protected boolean trackwheelClick(int status,
int time)
The system invokes this method when passing on a trackwheel click event.
The ALT-click combination will enter selection mode, or if in selection mode will copy.
trackwheelClick in class Fieldstatus - Bitfield of values defined by Keypad.time - Number of milliseconds since the device was turned on.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 1999-2007 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.