Class MakeProgramSelectionAction
- java.lang.Object
-
- docking.action.DockingAction
-
- ghidra.util.table.actions.MakeProgramSelectionAction
-
- All Implemented Interfaces:
DockingActionIf,HelpDescriptor
public class MakeProgramSelectionAction extends DockingAction
An action to make a program selection based on the given table's selection. For the context to work, the provider using this action must create anActionContextthat returns a context object that is the table passed to this action's constructor; otherwise, this action will not be enabled correctly.
-
-
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 MakeProgramSelectionAction(Plugin plugin, GhidraTable table)This normal constructor for this action.MakeProgramSelectionAction(java.lang.String owner, GhidraTable table)Special constructor for clients that do not have a plugin.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(ActionContext context)method to actually perform the action logic for this action.booleanisAddToPopup(ActionContext context)method is used to determine if this action should be displayed on the current popup.booleanisEnabledForContext(ActionContext context)Method used to determine if this action should be enabled for the given context.protected ProgramSelectionmakeSelection(ActionContext context)-
Methods inherited from class docking.action.DockingAction
addPropertyChangeListener, createButton, createMenuItem, dispose, doCreateButton, doCreateMenuItem, firePropertyChanged, getDefaultKeyBindingData, getDescription, getFullName, getHelpInfo, getHelpObject, getInceptionFromTheFirstClassThatIsNotUs, getInceptionInformation, getKeyBinding, getKeyBindingData, getKeyBindingType, getMenuBarData, getName, getOwner, getPopupMenuData, getPreferredKeyBindingType, getToolBarData, isEnabled, isValidContext, isValidGlobalContext, markHelpUnnecessary, removePropertyChangeListener, setDescription, setEnabled, setHelpLocation, setKeyBindingData, setMenuBarData, setPopupMenuData, setToolBarData, setUnvalidatedKeyBindingData, shouldAddToWindow, toString
-
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
-
MakeProgramSelectionAction
public MakeProgramSelectionAction(java.lang.String owner, GhidraTable table)Special constructor for clients that do not have a plugin. Clients using this constructor must overridemakeSelection(ActionContext).- Parameters:
owner- the action's ownertable- the table needed for this action
-
MakeProgramSelectionAction
public MakeProgramSelectionAction(Plugin plugin, GhidraTable table)
This normal constructor for this action. The given plugin will be used along with the given table to fire program selection events as the action is executed.- Parameters:
plugin- the plugintable- the table
-
-
Method Detail
-
isAddToPopup
public boolean isAddToPopup(ActionContext context)
Description copied from interface:DockingActionIfmethod is used to determine if this action should be displayed on the current popup. This method will only be called if the action has popupPopupMenuDataset.Generally, actions don't need to override this method as the default implementation will defer to the
DockingActionIf.isEnabledForContext(ActionContext), which will have the effect of adding the action to the popup only if it is enabled for a given context. By overriding this method, you can change this behavior so that the action will be added to the popup, even if it is disabled for the context, by having this method return true even if theDockingActionIf.isEnabledForContext(ActionContext)method will return false, resulting in the action appearing in the popup menu, but begin disabled.- Specified by:
isAddToPopupin interfaceDockingActionIf- Overrides:
isAddToPopupin classDockingAction- Parameters:
context- theActionContextfrom the active provider.- Returns:
- true if this action is appropriate for the given context.
-
isEnabledForContext
public boolean isEnabledForContext(ActionContext context)
Description copied from interface:DockingActionIfMethod 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:
isEnabledForContextin interfaceDockingActionIf- Overrides:
isEnabledForContextin classDockingAction- Parameters:
context- the currentActionContextfor 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:DockingActionIfmethod to actually perform the action logic for this action.- Specified by:
actionPerformedin interfaceDockingActionIf- Specified by:
actionPerformedin classDockingAction- Parameters:
context- theActionContextobject that provides information about where and how this action was invoked.
-
makeSelection
protected ProgramSelection makeSelection(ActionContext context)
-
-