Class DeleteTableRowAction

  • All Implemented Interfaces:
    DockingActionIf, HelpDescriptor

    public class DeleteTableRowAction
    extends DockingAction
    An action to delete data from a table. If your model is a ThreadedTableModel, then this class is self-contained. If you have some other kind of model, then you must override removeSelectedItems() 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) 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.

    • Constructor Detail

      • DeleteTableRowAction

        public DeleteTableRowAction​(GTable table,
                                    java.lang.String owner)
    • Method Detail

      • registerDummy

        public static void registerDummy​(PluginTool tool)
        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 keybinding
      • 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:

        1. when the user invokes the action via its keyBinding,
        2. the user changes focus from one component provider to another,
        3. the user moves a component to another position in the window or into another window,
        4. a component provider reports a change in it's context,
        5. any plugin or software component reports a general change in context (calls the tool.contextChanged(ComponentProvider) with a null parameter).
        The default implementation will simply return this action's enablement state.
        Specified by:
        isEnabledForContext in interface DockingActionIf
        Overrides:
        isEnabledForContext in class DockingAction
        Parameters:
        context - the current ActionContext for the window.
        Returns:
        true if the action should be enabled for the context or false otherwise.
      • 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)