java.lang.Object
javax.swing.AbstractAction
javax.swing.text.TextAction
javax.swing.text.StyledEditorKit.StyledTextAction
- All Implemented Interfaces:
ActionListener
,Serializable
,Cloneable
,EventListener
,Action
- Direct Known Subclasses:
HTMLEditorKit.HTMLTextAction
,StyledEditorKit.AlignmentAction
,StyledEditorKit.BoldAction
,StyledEditorKit.FontFamilyAction
,StyledEditorKit.FontSizeAction
,StyledEditorKit.ForegroundAction
,StyledEditorKit.ItalicAction
,StyledEditorKit.UnderlineAction
- Enclosing class:
- StyledEditorKit
public abstract static class StyledEditorKit.StyledTextAction extends TextAction
An action that assumes it's being fired on a JEditorPane
with a StyledEditorKit (or subclass) installed. This has
some convenience methods for causing character or paragraph
level attribute changes. The convenience methods will
throw an IllegalArgumentException if the assumption of
a StyledDocument, a JEditorPane, or a StyledEditorKit
fail to be true.
The component that gets acted upon by the action will be the source of the ActionEvent if the source can be narrowed to a JEditorPane type. If the source can't be narrowed, the most recently focused text component is changed. If neither of these are the case, the action cannot be performed.
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 javax.swing.AbstractAction
changeSupport, enabled
Fields declared in interface javax.swing.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
-
Constructor Summary
Constructors Constructor Description StyledTextAction(String nm)
Creates a new StyledTextAction from a string action name. -
Method Summary
Modifier and Type Method Description protected JEditorPane
getEditor(ActionEvent e)
Gets the target editor for an action.protected StyledDocument
getStyledDocument(JEditorPane e)
Gets the document associated with an editor pane.protected StyledEditorKit
getStyledEditorKit(JEditorPane e)
Gets the editor kit associated with an editor pane.protected void
setCharacterAttributes(JEditorPane editor, AttributeSet attr, boolean replace)
Applies the given attributes to character content.protected void
setParagraphAttributes(JEditorPane editor, AttributeSet attr, boolean replace)
Applies the given attributes to paragraphs.Methods declared in class javax.swing.text.TextAction
augmentList, getFocusedComponent, getTextComponent
Methods declared in class javax.swing.AbstractAction
addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
Methods declared in class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods declared in interface java.awt.event.ActionListener
actionPerformed
-
Constructor Details
-
StyledTextAction
Creates a new StyledTextAction from a string action name.- Parameters:
nm
- the name of the action
-
-
Method Details
-
getEditor
Gets the target editor for an action.- Parameters:
e
- the action event- Returns:
- the editor
-
getStyledDocument
Gets the document associated with an editor pane.- Parameters:
e
- the editor- Returns:
- the document
- Throws:
IllegalArgumentException
- for the wrong document type
-
getStyledEditorKit
Gets the editor kit associated with an editor pane.- Parameters:
e
- the editor pane- Returns:
- the kit
- Throws:
IllegalArgumentException
- for the wrong document type
-
setCharacterAttributes
protected final void setCharacterAttributes(JEditorPane editor, AttributeSet attr, boolean replace)Applies the given attributes to character content. If there is a selection, the attributes are applied to the selection range. If there is no selection, the attributes are applied to the input attribute set which defines the attributes for any new text that gets inserted.- Parameters:
editor
- the editorattr
- the attributesreplace
- if true, then replace the existing attributes first
-
setParagraphAttributes
protected final void setParagraphAttributes(JEditorPane editor, AttributeSet attr, boolean replace)Applies the given attributes to paragraphs. If there is a selection, the attributes are applied to the paragraphs that intersect the selection. if there is no selection, the attributes are applied to the paragraph at the current caret position.- Parameters:
editor
- the editorattr
- the attributesreplace
- if true, replace the existing attributes first
-