|
JavaTM 2 Platform Standard Edition |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
The JFC Action interface provides a useful extension to the ActionListner interface in cases where the same functionality may be accessed by several controls.
In addition to the actionPerformed
method
defined by the ActionListener interface, this interface allows the
application to define, in a single place:
add
method. When an Action object is added to such a
container, the container:
Cut
action object. The text associated with the object is
specified as "Cut", and an image depicting a pair of scissors is specified
as its icon. The Cut
action-object can then be added to a
menu and to a toolbar. Each container does the appropriate things with the
object, and invokes its actionPerformed
method when the
component associated with it is activated. The application can then disable
or enable the application object without worrying about what user-interface
components are connected to it.
This interface can be added to an existing class or used to create an
adapter (typically, by subclassing AbstractAction). The Action object
can then be added to multiple action-aware containers and connected to
Action-capable components. The GUI controls can then be activated or
deactivated all at once by invoking the Action object's setEnabled
method.
Note that Action implementations tend to be more expensive in terms of
storage than a typical ActionListener, which does not offer the benefits
of centralized control of functionality and broadcast of property changes.
For this reason, you should take care to only use Actions where their
benefits are desired, and use a simple ActionListener where they
are not necessary.
AbstractAction
Field Summary | |
static String |
DEFAULT
Useful constants that can be used as the storage-retreival key when setting or getting one of this object's properties (text or icon). |
static String |
LONG_DESCRIPTION
The key used for storing a longer description for the action, could be used for context-sensitive help. |
static String |
NAME
The key used for storing the name for the action, used for a menu or button. |
static String |
SHORT_DESCRIPTION
The key used for storing a short description for the action, used for tooltip text. |
static String |
SMALL_ICON
The key used for storing a small icon for the action, used for toolbar buttons. |
Method Summary | |
void |
addPropertyChangeListener(PropertyChangeListener listener)
Add a PropertyChange listener. |
Object |
getValue(String key)
Gets one of this object's properties using the associated key. |
boolean |
isEnabled()
Sets the enabled state of the Action. |
void |
putValue(String key,
Object value)
Sets one of this object's properties using the associated key. |
void |
removePropertyChangeListener(PropertyChangeListener listener)
Remove a PropertyChange listener. |
void |
setEnabled(boolean b)
Tests the enabled state of the Action. |
Methods inherited from interface java.awt.event.ActionListener |
actionPerformed |
Field Detail |
public static final String DEFAULT
public static final String NAME
public static final String SHORT_DESCRIPTION
public static final String LONG_DESCRIPTION
public static final String SMALL_ICON
Method Detail |
public Object getValue(String key)
public void putValue(String key, Object value)
key
- a String containing the keyvalue
- an Object valuepublic void setEnabled(boolean b)
actionPerformed
method.
If the value has changed, a PropertyChangeEvent is sent
to listeners.b
- true to enable this Action, false to disable itpublic boolean isEnabled()
actionPerformed
method.public void addPropertyChangeListener(PropertyChangeListener listener)
listener
- a PropertyChangeListener object ...public void removePropertyChangeListener(PropertyChangeListener listener)
listener
- a PropertyChangeListener object ...addPropertyChangeListener(java.beans.PropertyChangeListener)
|
JavaTM 2 Platform Standard Edition |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |