org.jdesktop.swingx.action
Class AbstractActionExt

java.lang.Object
  extended by javax.swing.AbstractAction
      extended by org.jdesktop.swingx.action.AbstractActionExt
All Implemented Interfaces:
ActionListener, ItemListener, Serializable, Cloneable, EventListener, Action
Direct Known Subclasses:
AbstractHyperlinkAction, BoundAction, ColumnControlButton.ColumnVisibilityAction, CompositeAction, TargetableAction

public abstract class AbstractActionExt
extends AbstractAction
implements ItemListener

Extends the concept of the Action to include toggle or group states.

See Also:
Serialized Form

Field Summary
static String GROUP
          The key for the button group
static String IS_STATE
          The key for the flag which indicates that this is a state type.
static String LARGE_ICON
          The key for the large icon
 
Fields inherited from class javax.swing.AbstractAction
changeSupport, enabled
 
Fields inherited from interface javax.swing.Action
ACCELERATOR_KEY, ACTION_COMMAND_KEY, DEFAULT, LONG_DESCRIPTION, MNEMONIC_KEY, NAME, SHORT_DESCRIPTION, SMALL_ICON
 
Constructor Summary
AbstractActionExt()
          Default constructor, does nothing.
AbstractActionExt(AbstractActionExt action)
          Copy constructor copies the state.
AbstractActionExt(String name)
           
AbstractActionExt(String name, Icon icon)
           
AbstractActionExt(String name, String command)
          Constructs an Action with the label and command
AbstractActionExt(String name, String command, Icon icon)
           
 
Method Summary
 void dispose()
          Will perform cleanup on the object.
 KeyStroke getAccelerator()
          Returns the key stroke which represents an accelerator for the action.
 Object getActionCommand()
          Returns the action command.
 Object getGroup()
           
 Icon getLargeIcon()
          Returns a large icon which represents the action.
 String getLongDescription()
          Returns a long description of the action.
 int getMnemonic()
          Return the mnemonic key code for the action.
 String getName()
          Returns the name of the action.
 String getShortDescription()
          Returns a short description of the action.
 Icon getSmallIcon()
          Returns a small icon which represents the action.
 boolean isSelected()
           
 boolean isStateAction()
          Indicates if this action has states.
 void itemStateChanged(ItemEvent e)
          Callback method as ItemListener.
 void setAccelerator(KeyStroke key)
          Sets the key stroke which represents an accelerator for the action.
 void setActionCommand(Object key)
          Sets the action command key.
 void setGroup(Object group)
          Sets the group identity of the state action.
 void setLargeIcon(Icon icon)
          Sets the large icon which represents the action.
 void setLongDescription(String desc)
          Sets the long description of the action.
 void setMnemonic(int mnemonic)
          Sets the mnemonic key code for the action.
 void setMnemonic(String mnemonic)
           
 void setName(String name)
          Sets the name of the action.
 void setSelected(boolean newValue)
          Changes the state of the action
 void setShortDescription(String desc)
          Sets the short description of the action.
 void setSmallIcon(Icon icon)
          Sets the small icon which represents the action.
 void setStateAction()
          Set the state property to true.
 void setStateAction(boolean state)
          Set the state property.
 String toString()
          Returns a string representation of the object.
 
Methods inherited from class javax.swing.AbstractAction
addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.event.ActionListener
actionPerformed
 

Field Detail

LARGE_ICON

public static final String LARGE_ICON
The key for the large icon

See Also:
Constant Field Values

GROUP

public static final String GROUP
The key for the button group

See Also:
Constant Field Values

IS_STATE

public static final String IS_STATE
The key for the flag which indicates that this is a state type.

See Also:
Constant Field Values
Constructor Detail

AbstractActionExt

public AbstractActionExt()
Default constructor, does nothing.


AbstractActionExt

public AbstractActionExt(AbstractActionExt action)
Copy constructor copies the state.


AbstractActionExt

public AbstractActionExt(String name)

AbstractActionExt

public AbstractActionExt(String name,
                         Icon icon)

AbstractActionExt

public AbstractActionExt(String name,
                         String command)
Constructs an Action with the label and command

Parameters:
name - name of the action usually used as a label
command - command key of the action

AbstractActionExt

public AbstractActionExt(String name,
                         String command,
                         Icon icon)
Parameters:
name - display name of the action
command - the value of the action command key
icon - icon to display
Method Detail

getShortDescription

public String getShortDescription()
Returns a short description of the action.

Returns:
the short description or null

setShortDescription

public void setShortDescription(String desc)
Sets the short description of the action. This will also set the long description value is it is null.

This is a convenience method for putValue with the Action.SHORT_DESCRIPTION key.

Parameters:
desc - the short description; can be nullw
See Also:
Action.SHORT_DESCRIPTION, Action.putValue(java.lang.String, java.lang.Object)

getLongDescription

public String getLongDescription()
Returns a long description of the action.

Returns:
the long description or null

setLongDescription

public void setLongDescription(String desc)
Sets the long description of the action. This will also set the value of the short description if that value is null.

This is a convenience method for putValue with the Action.LONG_DESCRIPTION key.

Parameters:
desc - the long description; can be null
See Also:
Action.LONG_DESCRIPTION, Action.putValue(java.lang.String, java.lang.Object)

getSmallIcon

public Icon getSmallIcon()
Returns a small icon which represents the action.

Returns:
the small icon or null

setSmallIcon

public void setSmallIcon(Icon icon)
Sets the small icon which represents the action.

This is a convenience method for putValue with the Action.SMALL_ICON key.

Parameters:
icon - the small icon; can be null
See Also:
Action.SMALL_ICON, Action.putValue(java.lang.String, java.lang.Object)

getLargeIcon

public Icon getLargeIcon()
Returns a large icon which represents the action.

Returns:
the large icon or null

setLargeIcon

public void setLargeIcon(Icon icon)
Sets the large icon which represents the action.

This is a convenience method for putValue with the LARGE_ICON key.

Parameters:
icon - the large icon; can be null
See Also:
LARGE_ICON, Action.putValue(java.lang.String, java.lang.Object)

setName

public void setName(String name)
Sets the name of the action.

This is a convenience method for putValue with the Action.NAME key.

Parameters:
name - the name of the action; can be null
See Also:
Action.NAME, Action.putValue(java.lang.String, java.lang.Object)

getName

public String getName()
Returns the name of the action.

Returns:
the name of the action or null

setMnemonic

public void setMnemonic(String mnemonic)

setMnemonic

public void setMnemonic(int mnemonic)
Sets the mnemonic key code for the action.

This is a convenience method for putValue with the Action.MNEMONIC_KEY key.

This method does not validate the value. Please see AbstractButton.setMnemonic(int) for details concerning the value of the mnemonic.

Parameters:
mnemonic - an int key code mnemonic or 0
See Also:
AbstractButton.setMnemonic(int), Action.MNEMONIC_KEY, Action.putValue(java.lang.String, java.lang.Object)

getMnemonic

public int getMnemonic()
Return the mnemonic key code for the action.

Returns:
the mnemonic or 0

setActionCommand

public void setActionCommand(Object key)
Sets the action command key. The action command key is used to identify the action.

This is a convenience method for putValue with the Action.ACTION_COMMAND_KEY key.

Parameters:
key - the action command
See Also:
Action.ACTION_COMMAND_KEY, Action.putValue(java.lang.String, java.lang.Object)

getActionCommand

public Object getActionCommand()
Returns the action command.

Returns:
the action command or null

getAccelerator

public KeyStroke getAccelerator()
Returns the key stroke which represents an accelerator for the action.

Returns:
the key stroke or null

setAccelerator

public void setAccelerator(KeyStroke key)
Sets the key stroke which represents an accelerator for the action.

This is a convenience method for putValue with the Action.ACCELERATOR_KEY key.

Parameters:
key - the key stroke; can be null
See Also:
Action.ACCELERATOR_KEY, Action.putValue(java.lang.String, java.lang.Object)

setGroup

public void setGroup(Object group)
Sets the group identity of the state action. This is used to identify the action as part of a button group.


getGroup

public Object getGroup()

dispose

public void dispose()
Will perform cleanup on the object. Should be called when finished with the Action. This should be used if a new action is constructed from the properties of an old action. The old action properties should be disposed.


isStateAction

public boolean isStateAction()
Indicates if this action has states. If this method returns true then the this will send ItemEvents to ItemListeners when the control constructed with this action in invoked.

Returns:
true if this can handle states

setStateAction

public void setStateAction()
Set the state property to true.


setStateAction

public void setStateAction(boolean state)
Set the state property.

Parameters:
state - if true then this action will fire ItemEvents

isSelected

public boolean isSelected()
Returns:
true if the action is in the selected state

setSelected

public void setSelected(boolean newValue)
Changes the state of the action

Parameters:
newValue - true to set the action as selected of the action.

toString

public String toString()
Description copied from class: java.lang.Object
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Overrides:
toString in class Object
Returns:
a string representation of the object.

itemStateChanged

public void itemStateChanged(ItemEvent e)
Callback method as ItemListener. Updates internal state based on the given ItemEvent.

Here: synchs selected property if isStateAction(), does nothing otherwise.

Specified by:
itemStateChanged in interface ItemListener
Parameters:
e - the ItemEvent fired by a ItemSelectable on changing the selected state.