Class AbstractAction
java.lang.Object
javax.swing.AbstractAction
- All Implemented Interfaces:
ActionListener, Serializable, Cloneable, EventListener, Action
- Direct Known Subclasses:
BasicDesktopPaneUI.CloseAction, BasicDesktopPaneUI.MaximizeAction, BasicDesktopPaneUI.MinimizeAction, BasicDesktopPaneUI.NavigateAction, BasicDesktopPaneUI.OpenAction, BasicFileChooserUI.ApproveSelectionAction, BasicFileChooserUI.CancelSelectionAction, BasicFileChooserUI.ChangeToParentDirectoryAction, BasicFileChooserUI.GoHomeAction, BasicFileChooserUI.NewFolderAction, BasicFileChooserUI.UpdateAction, BasicInternalFrameTitlePane.CloseAction, BasicInternalFrameTitlePane.IconifyAction, BasicInternalFrameTitlePane.MaximizeAction, BasicInternalFrameTitlePane.MoveAction, BasicInternalFrameTitlePane.RestoreAction, BasicInternalFrameTitlePane.SizeAction, BasicSliderUI.ActionScroller, BasicTreeUI.TreeCancelEditingAction, BasicTreeUI.TreeHomeAction, BasicTreeUI.TreeIncrementAction, BasicTreeUI.TreePageAction, BasicTreeUI.TreeToggleAction, BasicTreeUI.TreeTraverseAction, MetalFileChooserUI.DirectoryComboBoxAction, TextAction
This class provides default implementations for the JFC
Action
interface. Standard behaviors like the get and set methods for
Action object properties (icon, text, and enabled) are defined
here. The developer need only subclass this abstract class and
define the actionPerformed method.
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.
- Since:
- 1.2
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected SwingPropertyChangeSupportIf anyPropertyChangeListenershave been registered, thechangeSupportfield describes them.protected booleanSpecifies whether action is enabled; the default is true.Fields declared in interface Action
ACCELERATOR_KEY, ACTION_COMMAND_KEY, DEFAULT, DISPLAYED_MNEMONIC_INDEX_KEY, LARGE_ICON_KEY, LONG_DESCRIPTION, MNEMONIC_KEY, NAME, SELECTED_KEY, SHORT_DESCRIPTION, SMALL_ICONModifier and TypeFieldDescriptionstatic final StringThe key used for storing aKeyStroketo be used as the accelerator for the action.static final StringThe key used to determine the commandStringfor theActionEventthat will be created when anActionis going to be notified as the result of residing in aKeymapassociated with aJComponent.static final StringNot currently used.static final StringThe key used for storing anIntegerthat corresponds to the index in the text (identified by theNAMEproperty) that the decoration for a mnemonic should be rendered at.static final StringThe key used for storing anIcon.static final StringThe key used for storing a longerStringdescription for the action, could be used for context-sensitive help.static final StringThe key used for storing anIntegerthat corresponds to one of theKeyEventkey codes.static final StringThe key used for storing theStringname for the action, used for a menu or button.static final StringThe key used for storing aBooleanthat corresponds to the selected state.static final StringThe key used for storing a shortStringdescription for the action, used for tooltip text.static final StringThe key used for storing a smallIcon, such asImageIcon. -
Constructor Summary
ConstructorsConstructorDescriptionCreates anAction.AbstractAction(String name) Creates anActionwith the specified name.AbstractAction(String name, Icon icon) Creates anActionwith the specified name and small icon. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds aPropertyChangeListenerto the listener list.protected Objectclone()Clones the abstract action.protected voidfirePropertyChange(String propertyName, Object oldValue, Object newValue) Supports reporting bound property changes.Object[]getKeys()Returns an array ofObjects which are keys for which values have been set for thisAbstractAction, ornullif no keys have values set.Returns an array of all thePropertyChangeListeners added to this AbstractAction with addPropertyChangeListener().Gets theObjectassociated with the specified key.booleanReturns true if the action is enabled.voidSets theValueassociated with the specified key.voidRemoves aPropertyChangeListenerfrom the listener list.voidsetEnabled(boolean newValue) Sets whether theActionis enabled.Methods declared in class Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitModifier and TypeMethodDescriptionbooleanCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.inthashCode()Answers an integer hash code for the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.toString()Answers a string containing a concise, human-readable description of the receiver.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(long time) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.final voidwait(long time, int frac) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.Methods declared in interface ActionListener
actionPerformedModifier and TypeMethodDescriptionvoidInvoked when an action occurs.
-
Field Details
-
enabled
protected boolean enabledSpecifies whether action is enabled; the default is true. -
changeSupport
If anyPropertyChangeListenershave been registered, thechangeSupportfield describes them.
-
-
Constructor Details
-
AbstractAction
public AbstractAction()Creates anAction. -
AbstractAction
Creates anActionwith the specified name.- Parameters:
name- the name (Action.NAME) for the action; a value ofnullis ignored
-
AbstractAction
-
-
Method Details
-
getValue
-
putValue
-
isEnabled
-
setEnabled
public void setEnabled(boolean newValue) Sets whether theActionis enabled. The default istrue.- Specified by:
setEnabledin interfaceAction- Parameters:
newValue-trueto enable the action,falseto disable it- See Also:
-
getKeys
Returns an array ofObjects which are keys for which values have been set for thisAbstractAction, ornullif no keys have values set.- Returns:
- an array of key objects, or
nullif no keys have values set - Since:
- 1.3
-
firePropertyChange
Supports reporting bound property changes. This method can be called when a bound property has changed and it will send the appropriatePropertyChangeEventto any registeredPropertyChangeListeners.- Parameters:
propertyName- the name of the property that has changedoldValue- the old value of the propertynewValue- the new value of the property
-
addPropertyChangeListener
Adds aPropertyChangeListenerto the listener list. The listener is registered for all properties.A
PropertyChangeEventwill get fired in response to setting a bound property, e.g.setFont,setBackground, orsetForeground. Note that if the current component is inheriting its foreground, background, or font from its container, then no event will be fired in response to a change in the inherited property.- Specified by:
addPropertyChangeListenerin interfaceAction- Parameters:
listener- ThePropertyChangeListenerto be added- See Also:
-
removePropertyChangeListener
Removes aPropertyChangeListenerfrom the listener list. This removes aPropertyChangeListenerthat was registered for all properties.- Specified by:
removePropertyChangeListenerin interfaceAction- Parameters:
listener- thePropertyChangeListenerto be removed- See Also:
-
getPropertyChangeListeners
Returns an array of all thePropertyChangeListeners added to this AbstractAction with addPropertyChangeListener().- Returns:
- all of the
PropertyChangeListeners added or an empty array if no listeners have been added - Since:
- 1.4
-
clone
Clones the abstract action. This gives the clone its own copy of the key/value list, which is not handled for you byObject.clone().- Overrides:
clonein classObject- Returns:
- Object a shallow copy of this object.
- Throws:
CloneNotSupportedException- if the receiver's class does not implement the interface Cloneable.
-