Package org.fife.ui.rtextarea
Class RecordableTextAction
- java.lang.Object
-
- javax.swing.AbstractAction
-
- javax.swing.text.TextAction
-
- org.fife.ui.rtextarea.RecordableTextAction
-
- All Implemented Interfaces:
ActionListener
,Serializable
,Cloneable
,EventListener
,Action
- Direct Known Subclasses:
RSyntaxTextAreaEditorKit.ChangeFoldStateAction
,RSyntaxTextAreaEditorKit.CloseCurlyBraceAction
,RSyntaxTextAreaEditorKit.CloseMarkupTagAction
,RSyntaxTextAreaEditorKit.CollapseAllCommentFoldsAction
,RSyntaxTextAreaEditorKit.CollapseAllFoldsAction
,RSyntaxTextAreaEditorKit.CopyAsRtfAction
,RSyntaxTextAreaEditorKit.DecreaseIndentAction
,RSyntaxTextAreaEditorKit.ExpandAllFoldsAction
,RSyntaxTextAreaEditorKit.GoToMatchingBracketAction
,RSyntaxTextAreaEditorKit.InsertTabAction
,RSyntaxTextAreaEditorKit.PossiblyInsertTemplateAction
,RSyntaxTextAreaEditorKit.ToggleCommentAction
,RSyntaxTextAreaEditorKit.ToggleCurrentFoldAction
,RTextAreaEditorKit.BeepAction
,RTextAreaEditorKit.BeginAction
,RTextAreaEditorKit.BeginLineAction
,RTextAreaEditorKit.BeginRecordingMacroAction
,RTextAreaEditorKit.BeginWordAction
,RTextAreaEditorKit.ClipboardHistoryAction
,RTextAreaEditorKit.CopyAction
,RTextAreaEditorKit.CutAction
,RTextAreaEditorKit.DecreaseFontSizeAction
,RTextAreaEditorKit.DefaultKeyTypedAction
,RTextAreaEditorKit.DeleteLineAction
,RTextAreaEditorKit.DeleteNextCharAction
,RTextAreaEditorKit.DeletePrevCharAction
,RTextAreaEditorKit.DeletePrevWordAction
,RTextAreaEditorKit.DeleteRestOfLineAction
,RTextAreaEditorKit.DumbCompleteWordAction
,RTextAreaEditorKit.EndAction
,RTextAreaEditorKit.EndLineAction
,RTextAreaEditorKit.EndRecordingMacroAction
,RTextAreaEditorKit.EndWordAction
,RTextAreaEditorKit.IncreaseFontSizeAction
,RTextAreaEditorKit.InsertBreakAction
,RTextAreaEditorKit.InsertContentAction
,RTextAreaEditorKit.InsertTabAction
,RTextAreaEditorKit.InvertSelectionCaseAction
,RTextAreaEditorKit.JoinLinesAction
,RTextAreaEditorKit.LineMoveAction
,RTextAreaEditorKit.LowerSelectionCaseAction
,RTextAreaEditorKit.NextBookmarkAction
,RTextAreaEditorKit.NextOccurrenceAction
,RTextAreaEditorKit.NextVisualPositionAction
,RTextAreaEditorKit.NextWordAction
,RTextAreaEditorKit.PasteAction
,RTextAreaEditorKit.PlaybackLastMacroAction
,RTextAreaEditorKit.PreviousOccurrenceAction
,RTextAreaEditorKit.PreviousWordAction
,RTextAreaEditorKit.RedoAction
,RTextAreaEditorKit.ScrollAction
,RTextAreaEditorKit.SelectAllAction
,RTextAreaEditorKit.SelectLineAction
,RTextAreaEditorKit.SelectWordAction
,RTextAreaEditorKit.SetReadOnlyAction
,RTextAreaEditorKit.SetWritableAction
,RTextAreaEditorKit.TimeDateAction
,RTextAreaEditorKit.ToggleBookmarkAction
,RTextAreaEditorKit.ToggleTextModeAction
,RTextAreaEditorKit.UndoAction
,RTextAreaEditorKit.UnselectAction
,RTextAreaEditorKit.UpperSelectionCaseAction
,RTextAreaEditorKit.VerticalPageAction
public abstract class RecordableTextAction extends TextAction
The base action used by the actions defined inRTextAreaEditorKit
. This action is what allows instances ofRTextArea
to record keystrokes into "macros;" if an action is recordable and occurs while the user is recording a macro, it adds itself to the currently-being-recorded macro.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class javax.swing.AbstractAction
changeSupport, enabled
-
Fields inherited from 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 RecordableTextAction(String text)
Constructor.RecordableTextAction(String text, Icon icon, String desc, Integer mnemonic, KeyStroke accelerator)
Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(ActionEvent e)
This method is final so that you cannot override it and mess up the macro-recording part of it.abstract void
actionPerformedImpl(ActionEvent e, RTextArea textArea)
The actual meat of the action.KeyStroke
getAccelerator()
Returns the accelerator for this action.String
getDescription()
Returns the description for this action.Icon
getIcon()
Returns the icon for this action.abstract String
getMacroID()
Returns the identifier for this macro.int
getMnemonic()
Returns the mnemonic for this action.String
getName()
Returns the name of this action.boolean
isRecordable()
Returns whether or not this action will be recorded and replayed in a macro.void
setAccelerator(KeyStroke accelerator)
Sets the accelerator for this action.void
setMnemonic(char mnemonic)
Sets the mnemonic for this action.void
setMnemonic(Integer mnemonic)
Sets the mnemonic for this action.void
setName(String name)
Sets the name of this action.void
setProperties(ResourceBundle msg, String keyRoot)
Sets the name, mnemonic, and description of this action.void
setRecordable(boolean recordable)
Sets whether or not this action will be recorded and replayed in a macro.void
setShortDescription(String shortDesc)
Sets the short description for this action.-
Methods inherited from class javax.swing.text.TextAction
augmentList, getFocusedComponent, getTextComponent
-
Methods inherited from class javax.swing.AbstractAction
addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
-
-
-
-
Constructor Detail
-
RecordableTextAction
public RecordableTextAction(String text)
Constructor.- Parameters:
text
- The text (name) associated with the action.
-
RecordableTextAction
public RecordableTextAction(String text, Icon icon, String desc, Integer mnemonic, KeyStroke accelerator)
Constructor.- Parameters:
text
- The text (name) associated with the action.icon
- The icon associated with the action.desc
- The description of the action.mnemonic
- The mnemonic for the action.accelerator
- The accelerator key for the action.
-
-
Method Detail
-
actionPerformed
public final void actionPerformed(ActionEvent e)
This method is final so that you cannot override it and mess up the macro-recording part of it. The actual meat of the action is inactionPerformedImpl
.- Parameters:
e
- The action being performed.- See Also:
actionPerformedImpl(java.awt.event.ActionEvent, org.fife.ui.rtextarea.RTextArea)
-
actionPerformedImpl
public abstract void actionPerformedImpl(ActionEvent e, RTextArea textArea)
The actual meat of the action. If you wish to subclass this action and modify its behavior, this is the method to override.- Parameters:
e
- The action being performed.textArea
- The text area "receiving" the action.- See Also:
actionPerformed(java.awt.event.ActionEvent)
-
getAccelerator
public KeyStroke getAccelerator()
Returns the accelerator for this action.- Returns:
- The accelerator.
- See Also:
setAccelerator(KeyStroke)
-
getDescription
public String getDescription()
Returns the description for this action.- Returns:
- The description.
-
getIcon
public Icon getIcon()
Returns the icon for this action.- Returns:
- The icon.
-
getMacroID
public abstract String getMacroID()
Returns the identifier for this macro. This method makes it so that you can create an instance of theRTextAreaEditorKit.CutAction
action, for example, rename it to "Remove", and it will still be recorded as a "cut" action. Subclasses should return a unique string from this method; preferably the name of the action.If you subclass a
RecordableTextAction
, you should NOT override this method; if you do, the action may not be properly recorded in a macro.- Returns:
- The internally-used macro ID.
-
getMnemonic
public int getMnemonic()
Returns the mnemonic for this action.- Returns:
- The mnemonic, or
-1
if not defined. - See Also:
setMnemonic(char)
,setMnemonic(Integer)
-
getName
public String getName()
Returns the name of this action.- Returns:
- The name of this action.
- See Also:
setName(String)
-
isRecordable
public boolean isRecordable()
Returns whether or not this action will be recorded and replayed in a macro.- Returns:
- Whether or not this action will be recorded and replayed.
- See Also:
setRecordable(boolean)
-
setAccelerator
public void setAccelerator(KeyStroke accelerator)
Sets the accelerator for this action.- Parameters:
accelerator
- The new accelerator.- See Also:
getAccelerator()
-
setMnemonic
public void setMnemonic(char mnemonic)
Sets the mnemonic for this action.- Parameters:
mnemonic
- The new mnemonic.- See Also:
setMnemonic(Integer)
,getMnemonic()
-
setMnemonic
public void setMnemonic(Integer mnemonic)
Sets the mnemonic for this action.- Parameters:
mnemonic
- The new mnemonic.- See Also:
setMnemonic(char)
,getMnemonic()
-
setName
public void setName(String name)
Sets the name of this action.- Parameters:
name
- The new name.- See Also:
getName()
-
setProperties
public void setProperties(ResourceBundle msg, String keyRoot)
Sets the name, mnemonic, and description of this action.- Parameters:
msg
- The resource bundle.keyRoot
- The root of the keys for the properties. ".Name
", ".Mnemonic
", and ".Desc
" will be appended to create the key for each property.
-
setRecordable
public void setRecordable(boolean recordable)
Sets whether or not this action will be recorded and replayed in a macro.- Parameters:
recordable
- Whether or not this action should be recorded and replayed.- See Also:
isRecordable()
-
setShortDescription
public void setShortDescription(String shortDesc)
Sets the short description for this action.- Parameters:
shortDesc
- The short description for this action.
-
-