Class TextAction
java.lang.Object
javax.swing.AbstractAction
javax.swing.text.TextAction
- All Implemented Interfaces:
ActionListener, Serializable, Cloneable, EventListener, Action
- Direct Known Subclasses:
DefaultEditorKit.BeepAction, DefaultEditorKit.CopyAction, DefaultEditorKit.CutAction, DefaultEditorKit.DefaultKeyTypedAction, DefaultEditorKit.InsertBreakAction, DefaultEditorKit.InsertContentAction, DefaultEditorKit.InsertTabAction, DefaultEditorKit.PasteAction, StyledEditorKit.StyledTextAction
An Action implementation useful for key bindings that are
shared across a number of different text components. Because
the action is shared, it must have a way of getting it's
target to act upon. This class provides support to try and
find a text component to operate on. The preferred way of
getting the component to act upon is through the ActionEvent
that is received. If the Object returned by getSource can
be narrowed to a text component, it will be used. If the
action event is null or can't be narrowed, the last focused
text component is tried. This is determined by being
used in conjunction with a JTextController which
arranges to share that information with a TextAction.
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
.
-
Field Summary
Fields declared in class AbstractAction
changeSupport, enabled
Modifier and TypeFieldDescriptionprotected SwingPropertyChangeSupport
If anyPropertyChangeListeners
have been registered, thechangeSupport
field describes them.protected boolean
Specifies 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_ICON
Modifier and TypeFieldDescriptionstatic final String
The key used for storing aKeyStroke
to be used as the accelerator for the action.static final String
The key used to determine the commandString
for theActionEvent
that will be created when anAction
is going to be notified as the result of residing in aKeymap
associated with aJComponent
.static final String
Not currently used.static final String
The key used for storing anInteger
that corresponds to the index in the text (identified by theNAME
property) that the decoration for a mnemonic should be rendered at.static final String
The key used for storing anIcon
.static final String
The key used for storing a longerString
description for the action, could be used for context-sensitive help.static final String
The key used for storing anInteger
that corresponds to one of theKeyEvent
key codes.static final String
The key used for storing theString
name for the action, used for a menu or button.static final String
The key used for storing aBoolean
that corresponds to the selected state.static final String
The key used for storing a shortString
description for the action, used for tooltip text.static final String
The key used for storing a smallIcon
, such asImageIcon
. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final Action[]
augmentList
(Action[] list1, Action[] list2) Takes one list of commands and augments it with another list of commands.protected final JTextComponent
Fetches the text component that currently has focus.protected final JTextComponent
Determines the component to use for the action.Methods declared in class AbstractAction
addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
Modifier and TypeMethodDescriptionvoid
Adds aPropertyChangeListener
to the listener list.protected Object
clone()
Clones the abstract action.protected void
firePropertyChange
(String propertyName, Object oldValue, Object newValue) Supports reporting bound property changes.Object[]
getKeys()
Returns an array ofObject
s which are keys for which values have been set for thisAbstractAction
, ornull
if no keys have values set.Returns an array of all thePropertyChangeListener
s added to this AbstractAction with addPropertyChangeListener().Gets theObject
associated with the specified key.boolean
Returns true if the action is enabled.void
Sets theValue
associated with the specified key.void
Removes aPropertyChangeListener
from the listener list.void
setEnabled
(boolean newValue) Sets whether theAction
is enabled.Methods declared in class Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Modifier and TypeMethodDescriptionboolean
Indicates whether some other object is "equal to" this one.protected void
finalize()
Deprecated, for removal: This API element is subject to removal in a future version.Finalization is deprecated and subject to removal in a future release.final Class
<?> getClass()
Returns the runtime class of thisObject
.int
hashCode()
Returns a hash code value for this object.final void
notify()
Wakes up a single thread that is waiting on this object's monitor.final void
Wakes up all threads that are waiting on this object's monitor.toString()
Returns a string representation of the object.final void
wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final void
wait
(long timeoutMillis) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.final void
wait
(long timeoutMillis, int nanos) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.Methods declared in interface ActionListener
actionPerformed
Modifier and TypeMethodDescriptionvoid
Invoked when an action occurs.
-
Constructor Details
-
TextAction
Creates a new JTextAction object.- Parameters:
name
- the name of the action
-
-
Method Details
-
getTextComponent
Determines the component to use for the action. This if fetched from the source of the ActionEvent if it's not null and can be narrowed. Otherwise, the last focused component is used.- Parameters:
e
- the ActionEvent- Returns:
- the component
-
augmentList
Takes one list of commands and augments it with another list of commands. The second list takes precedence over the first list; that is, when both lists contain a command with the same name, the command from the second list is used.- Parameters:
list1
- the first list, may be empty but notnull
list2
- the second list, may be empty but notnull
- Returns:
- the augmented list
-
getFocusedComponent
Fetches the text component that currently has focus. This allows actions to be shared across text components which is useful for key-bindings where a large set of actions are defined, but generally used the same way across many different components.- Returns:
- the component
-