Class DefaultButtonModel
- java.lang.Object
-
- javax.swing.DefaultButtonModel
- All Implemented Interfaces:
- ItemSelectable, Serializable, ButtonModel
- Direct Known Subclasses:
- JToggleButton.ToggleButtonModel
public class DefaultButtonModel extends Object implements ButtonModel, Serializable
The default implementation of a Button component's data model.
Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the java.beans package. Please see XMLEncoder.
Fields
| Modifier and Type | Field and Description |
|---|---|
protected String |
actionCommand The action command string fired by the button. |
static int |
ARMED Identifies the "armed" bit in the bitmask, which indicates partial commitment towards choosing/triggering the button. |
protected ChangeEvent |
changeEvent Only one |
static int |
ENABLED Identifies the "enabled" bit in the bitmask, which indicates that the button can be selected by an input device (such as a mouse pointer). |
protected ButtonGroup |
group The button group that the button belongs to. |
protected EventListenerList |
listenerList Stores the listeners on this model. |
protected int |
mnemonic The button's mnemonic. |
static int |
PRESSED Identifies the "pressed" bit in the bitmask, which indicates that the button is pressed. |
static int |
ROLLOVER Identifies the "rollover" bit in the bitmask, which indicates that the mouse is over the button. |
static int |
SELECTED Identifies the "selected" bit in the bitmask, which indicates that the button has been selected. |
protected int |
stateMask The bitmask used to store the state of the button. |
Constructors
| Constructor and Description |
|---|
DefaultButtonModel() Constructs a |
Methods
| Modifier and Type | Method and Description |
|---|---|
void |
addActionListener(ActionListener l) Adds an |
void |
addChangeListener(ChangeListener l) Adds a |
void |
addItemListener(ItemListener l) Adds an |
protected void |
fireActionPerformed(ActionEvent e) Notifies all listeners that have registered interest for notification on this event type. |
protected void |
fireItemStateChanged(ItemEvent e) Notifies all listeners that have registered interest for notification on this event type. |
protected void |
fireStateChanged() Notifies all listeners that have registered interest for notification on this event type. |
String |
getActionCommand() Returns the action command string for the button. |
ActionListener[] |
getActionListeners() Returns an array of all the action listeners registered on this |
ChangeListener[] |
getChangeListeners() Returns an array of all the change listeners registered on this |
ButtonGroup |
getGroup() Returns the group that the button belongs to. |
ItemListener[] |
getItemListeners() Returns an array of all the item listeners registered on this |
<T extends EventListener> |
getListeners(Class<T> listenerType) Returns an array of all the objects currently registered as |
int |
getMnemonic() Gets the keyboard mnemonic for the button. |
Object[] |
getSelectedObjects() Overridden to return |
boolean |
isArmed() Indicates partial commitment towards triggering the button. |
boolean |
isEnabled() Indicates if the button can be selected or triggered by an input device, such as a mouse pointer. |
boolean |
isPressed() Indicates if the button is pressed. |
boolean |
isRollover() Indicates that the mouse is over the button. |
boolean |
isSelected() Indicates if the button has been selected. |
void |
removeActionListener(ActionListener l) Removes an |
void |
removeChangeListener(ChangeListener l) Removes a |
void |
removeItemListener(ItemListener l) Removes an |
void |
setActionCommand(String actionCommand) Sets the action command string that gets sent as part of the |
void |
setArmed(boolean b) Marks the button as armed or unarmed. |
void |
setEnabled(boolean b) Enables or disables the button. |
void |
setGroup(ButtonGroup group) Identifies the group the button belongs to -- needed for radio buttons, which are mutually exclusive within their group. |
void |
setMnemonic(int key) Sets the keyboard mnemonic (shortcut key or accelerator key) for the button. |
void |
setPressed(boolean b) Sets the button to pressed or unpressed. |
void |
setRollover(boolean b) Sets or clears the button's rollover state |
void |
setSelected(boolean b) Selects or deselects the button. |
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Fields
stateMask
protected int stateMask
The bitmask used to store the state of the button.
actionCommand
protected String actionCommand
The action command string fired by the button.
group
protected ButtonGroup group
The button group that the button belongs to.
mnemonic
protected int mnemonic
The button's mnemonic.
changeEvent
protected transient ChangeEvent changeEvent
Only one ChangeEvent is needed per button model instance since the event's only state is the source property. The source of events generated is always "this".
listenerList
protected EventListenerList listenerList
Stores the listeners on this model.
ARMED
public static final int ARMED
Identifies the "armed" bit in the bitmask, which indicates partial commitment towards choosing/triggering the button.
- See Also:
- Constant Field Values
SELECTED
public static final int SELECTED
Identifies the "selected" bit in the bitmask, which indicates that the button has been selected. Only needed for certain types of buttons - such as radio button or check box.
- See Also:
- Constant Field Values
PRESSED
public static final int PRESSED
Identifies the "pressed" bit in the bitmask, which indicates that the button is pressed.
- See Also:
- Constant Field Values
ENABLED
public static final int ENABLED
Identifies the "enabled" bit in the bitmask, which indicates that the button can be selected by an input device (such as a mouse pointer).
- See Also:
- Constant Field Values
ROLLOVER
public static final int ROLLOVER
Identifies the "rollover" bit in the bitmask, which indicates that the mouse is over the button.
- See Also:
- Constant Field Values
Constructors
DefaultButtonModel
public DefaultButtonModel()
Constructs a DefaultButtonModel.
Methods
setActionCommand
public void setActionCommand(String actionCommand)
Sets the action command string that gets sent as part of the ActionEvent when the button is triggered.
- Specified by:
-
setActionCommandin interfaceButtonModel - Parameters:
-
actionCommand- theStringthat identifies the generated event - See Also:
-
ButtonModel.getActionCommand(),ActionEvent.getActionCommand()
getActionCommand
public String getActionCommand()
Returns the action command string for the button.
- Specified by:
-
getActionCommandin interfaceButtonModel - Returns:
- the
Stringthat identifies the generated event - See Also:
ButtonModel.setActionCommand(java.lang.String)
isArmed
public boolean isArmed()
Indicates partial commitment towards triggering the button.
- Specified by:
-
isArmedin interfaceButtonModel - Returns:
-
trueif the button is armed, and ready to be triggered - See Also:
ButtonModel.setArmed(boolean)
isSelected
public boolean isSelected()
Indicates if the button has been selected. Only needed for certain types of buttons - such as radio buttons and check boxes.
- Specified by:
-
isSelectedin interfaceButtonModel - Returns:
-
trueif the button is selected
isEnabled
public boolean isEnabled()
Indicates if the button can be selected or triggered by an input device, such as a mouse pointer.
- Specified by:
-
isEnabledin interfaceButtonModel - Returns:
-
trueif the button is enabled
isPressed
public boolean isPressed()
Indicates if the button is pressed.
- Specified by:
-
isPressedin interfaceButtonModel - Returns:
-
trueif the button is pressed
isRollover
public boolean isRollover()
Indicates that the mouse is over the button.
- Specified by:
-
isRolloverin interfaceButtonModel - Returns:
-
trueif the mouse is over the button
setArmed
public void setArmed(boolean b)
Marks the button as armed or unarmed.
- Specified by:
-
setArmedin interfaceButtonModel - Parameters:
-
b- whether or not the button should be armed
setEnabled
public void setEnabled(boolean b)
Enables or disables the button.
- Specified by:
-
setEnabledin interfaceButtonModel - Parameters:
-
b- whether or not the button should be enabled - See Also:
ButtonModel.isEnabled()
setSelected
public void setSelected(boolean b)
Selects or deselects the button.
- Specified by:
-
setSelectedin interfaceButtonModel - Parameters:
-
b-trueselects the button,falsedeselects the button
setPressed
public void setPressed(boolean b)
Sets the button to pressed or unpressed.
- Specified by:
-
setPressedin interfaceButtonModel - Parameters:
-
b- whether or not the button should be pressed - See Also:
ButtonModel.isPressed()
setRollover
public void setRollover(boolean b)
Sets or clears the button's rollover state
- Specified by:
-
setRolloverin interfaceButtonModel - Parameters:
-
b- whether or not the button is in the rollover state - See Also:
ButtonModel.isRollover()
setMnemonic
public void setMnemonic(int key)
Sets the keyboard mnemonic (shortcut key or accelerator key) for the button.
- Specified by:
-
setMnemonicin interfaceButtonModel - Parameters:
-
key- an int specifying the accelerator key
getMnemonic
public int getMnemonic()
Gets the keyboard mnemonic for the button.
- Specified by:
-
getMnemonicin interfaceButtonModel - Returns:
- an int specifying the accelerator key
- See Also:
ButtonModel.setMnemonic(int)
addChangeListener
public void addChangeListener(ChangeListener l)
Adds a ChangeListener to the model.
- Specified by:
-
addChangeListenerin interfaceButtonModel - Parameters:
-
l- the listener to add
removeChangeListener
public void removeChangeListener(ChangeListener l)
Removes a ChangeListener from the model.
- Specified by:
-
removeChangeListenerin interfaceButtonModel - Parameters:
-
l- the listener to remove
getChangeListeners
public ChangeListener[] getChangeListeners()
Returns an array of all the change listeners registered on this DefaultButtonModel.
- Returns:
- all of this model's
ChangeListeners or an empty array if no change listeners are currently registered - Since:
- 1.4
- See Also:
-
addChangeListener(javax.swing.event.ChangeListener),removeChangeListener(javax.swing.event.ChangeListener)
fireStateChanged
protected void fireStateChanged()
Notifies all listeners that have registered interest for notification on this event type. The event instance is created lazily.
- See Also:
EventListenerList
addActionListener
public void addActionListener(ActionListener l)
Adds an ActionListener to the model.
- Specified by:
-
addActionListenerin interfaceButtonModel - Parameters:
-
l- the listener to add
removeActionListener
public void removeActionListener(ActionListener l)
Removes an ActionListener from the model.
- Specified by:
-
removeActionListenerin interfaceButtonModel - Parameters:
-
l- the listener to remove
getActionListeners
public ActionListener[] getActionListeners()
Returns an array of all the action listeners registered on this DefaultButtonModel.
- Returns:
- all of this model's
ActionListeners or an empty array if no action listeners are currently registered - Since:
- 1.4
- See Also:
-
addActionListener(java.awt.event.ActionListener),removeActionListener(java.awt.event.ActionListener)
fireActionPerformed
protected void fireActionPerformed(ActionEvent e)
Notifies all listeners that have registered interest for notification on this event type.
- Parameters:
-
e- theActionEventto deliver to listeners - See Also:
EventListenerList
addItemListener
public void addItemListener(ItemListener l)
Adds an ItemListener to the model.
- Specified by:
-
addItemListenerin interfaceItemSelectable - Specified by:
-
addItemListenerin interfaceButtonModel - Parameters:
-
l- the listener to add - See Also:
ItemEvent
removeItemListener
public void removeItemListener(ItemListener l)
Removes an ItemListener from the model.
- Specified by:
-
removeItemListenerin interfaceItemSelectable - Specified by:
-
removeItemListenerin interfaceButtonModel - Parameters:
-
l- the listener to remove - See Also:
ItemEvent
getItemListeners
public ItemListener[] getItemListeners()
Returns an array of all the item listeners registered on this DefaultButtonModel.
- Returns:
- all of this model's
ItemListeners or an empty array if no item listeners are currently registered - Since:
- 1.4
- See Also:
-
addItemListener(java.awt.event.ItemListener),removeItemListener(java.awt.event.ItemListener)
fireItemStateChanged
protected void fireItemStateChanged(ItemEvent e)
Notifies all listeners that have registered interest for notification on this event type.
- Parameters:
-
e- theItemEventto deliver to listeners - See Also:
EventListenerList
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Returns an array of all the objects currently registered as FooListeners upon this model. FooListeners are registered using the addFooListener method.
You can specify the listenerType argument with a class literal, such as FooListener.class. For example, you can query a DefaultButtonModel instance m for its action listeners with the following code:
ActionListener[] als = (ActionListener[])(m.getListeners(ActionListener.class));If no such listeners exist, this method returns an empty array.
- Parameters:
-
listenerType- the type of listeners requested; this parameter should specify an interface that descends fromjava.util.EventListener - Returns:
- an array of all objects registered as
FooListeners on this model, or an empty array if no such listeners have been added - Throws:
-
ClassCastException- iflistenerTypedoesn't specify a class or interface that implementsjava.util.EventListener - Since:
- 1.3
- See Also:
-
getActionListeners(),getChangeListeners(),getItemListeners()
getSelectedObjects
public Object[] getSelectedObjects()
Overridden to return null.
- Specified by:
-
getSelectedObjectsin interfaceItemSelectable
setGroup
public void setGroup(ButtonGroup group)
Identifies the group the button belongs to -- needed for radio buttons, which are mutually exclusive within their group.
- Specified by:
-
setGroupin interfaceButtonModel - Parameters:
-
group- theButtonGroupthe button belongs to
getGroup
public ButtonGroup getGroup()
Returns the group that the button belongs to. Normally used with radio buttons, which are mutually exclusive within their group.
- Returns:
- the
ButtonGroupthat the button belongs to - Since:
- 1.3
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/javax/swing/DefaultButtonModel.html