Package ghidra.util.table.actions
Class DeleteTableRowAction
- java.lang.Object
-
- docking.action.DockingAction
-
- ghidra.util.table.actions.DeleteTableRowAction
-
- All Implemented Interfaces:
DockingActionIf
,HelpDescriptor
public class DeleteTableRowAction extends DockingAction
An action to delete data from a table. If your model is aThreadedTableModel
, then this class is self-contained. If you have some other kind of model, then you must overrideremoveSelectedItems()
in order to remove items from your model when the action is executed.Note: deleting a row object is simply removing it from the given table/model. This code is not altering the database.
Tip: if you are a plugin that uses transient providers, then use
registerDummy(PluginTool, String)
at creation time to install a dummy representative of this action in the Tool's options so that user's can update keybindings, regardless of whether they have ever shown one of your transient providers.
-
-
Field Summary
-
Fields inherited from interface docking.action.DockingActionIf
DESCRIPTION_PROPERTY, ENABLEMENT_PROPERTY, GLOBALCONTEXT_PROPERTY, KEYBINDING_DATA_PROPERTY, MENUBAR_DATA_PROPERTY, POPUP_MENU_DATA_PROPERTY, TOOLBAR_DATA_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description DeleteTableRowAction(GTable table, java.lang.String owner)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(ActionContext context)
method to actually perform the action logic for this action.boolean
checkForBusy(javax.swing.table.TableModel model)
boolean
isEnabledForContext(ActionContext context)
Method used to determine if this action should be enabled for the given context.static void
registerDummy(PluginTool tool, java.lang.String owner)
A special method that triggers the registration of this action's shared/dummy keybinding.protected void
removeRowObjects(javax.swing.table.TableModel model, java.util.List<java.lang.Object> itemsToRemove)
protected void
removeSelectedItems()
-
Methods inherited from class docking.action.DockingAction
addPropertyChangeListener, addToWindowWhen, createButton, createMenuItem, dispose, doCreateButton, doCreateMenuItem, enabledWhen, firePropertyChanged, getDefaultKeyBindingData, getDescription, getFullName, getHelpInfo, getHelpObject, getInceptionFromTheFirstClassThatIsNotUsOrABuilder, getInceptionInformation, getKeyBinding, getKeyBindingData, getKeyBindingType, getMenuBarData, getName, getOwner, getPopupMenuData, getPreferredKeyBindingType, getToolBarData, isAddToPopup, isEnabled, isValidContext, markHelpUnnecessary, popupWhen, removePropertyChangeListener, setAddToAllWindows, setDescription, setEnabled, setHelpLocation, setKeyBindingData, setMenuBarData, setPopupMenuData, setSupportsDefaultToolContext, setToolBarData, setUnvalidatedKeyBindingData, shouldAddToWindow, supportsDefaultToolContext, toString, validContextWhen
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface docking.action.DockingActionIf
getOwnerDescription
-
-
-
-
Constructor Detail
-
DeleteTableRowAction
public DeleteTableRowAction(GTable table, java.lang.String owner)
-
-
Method Detail
-
registerDummy
public static void registerDummy(PluginTool tool, java.lang.String owner)
A special method that triggers the registration of this action's shared/dummy keybinding. This is needed for plugins that produce transient component providers that do not exist at the time the plugin is loaded.- Parameters:
tool
- the tool whose options will updated with a dummy keybindingowner
- the owner of the action that may be installed
-
isEnabledForContext
public boolean isEnabledForContext(ActionContext context)
Description copied from interface:DockingActionIf
Method used to determine if this action should be enabled for the given context.This is the method implementors override to control when the action may be used.
This method will be called by the DockingWindowManager for actions on the global menuBar and toolBar and for actions that have a keyBinding.
This method will be called whenever one of the following events occur:
- when the user invokes the action via its keyBinding,
- the user changes focus from one component provider to another,
- the user moves a component to another position in the window or into another window,
- a component provider reports a change in it's context,
- any plugin or software component reports a general change in context (calls the tool.contextChanged(ComponentProvider) with a null parameter).
- Specified by:
isEnabledForContext
in interfaceDockingActionIf
- Overrides:
isEnabledForContext
in classDockingAction
- Parameters:
context
- the currentActionContext
for the window.- Returns:
- true if the action should be enabled for the context or false otherwise.
-
actionPerformed
public void actionPerformed(ActionContext context)
Description copied from interface:DockingActionIf
method to actually perform the action logic for this action.- Specified by:
actionPerformed
in interfaceDockingActionIf
- Specified by:
actionPerformed
in classDockingAction
- Parameters:
context
- theActionContext
object that provides information about where and how this action was invoked.
-
removeSelectedItems
protected void removeSelectedItems()
-
removeRowObjects
protected void removeRowObjects(javax.swing.table.TableModel model, java.util.List<java.lang.Object> itemsToRemove)
-
checkForBusy
public boolean checkForBusy(javax.swing.table.TableModel model)
-
-