Package docking

Class AbstractDockingTool

java.lang.Object
docking.AbstractDockingTool
All Implemented Interfaces:
Tool, ServiceProvider
Direct Known Subclasses:
PluginTool

public abstract class AbstractDockingTool extends Object implements Tool
A partial implementation of Tool that serves as a place to share common functionality
  • Field Details

  • Constructor Details

    • AbstractDockingTool

      public AbstractDockingTool()
  • Method Details

    • isVisible

      public boolean isVisible()
      Description copied from interface: Tool
      Returns true if tool is visible
      Specified by:
      isVisible in interface Tool
      Returns:
      true if tool is visible
    • setVisible

      public void setVisible(boolean visibility)
      Description copied from interface: Tool
      Sets the tool visible or invisible. This method is used by the Project to make it's tools visible or invisible depending on whether this tool is in is the active workspace.
      Specified by:
      setVisible in interface Tool
      Parameters:
      visibility - true specifies that the tool should be visible
    • toFront

      public void toFront()
      Description copied from interface: Tool
      Brings this tool to the front. Places this tool at the top of the stacking order and shows it in front of any other tools.
      Specified by:
      toFront in interface Tool
    • addComponentProvider

      public void addComponentProvider(ComponentProvider provider, boolean show)
      Description copied from interface: Tool
      Adds the ComponentProvider to the tool, optionally making it visible.
      Specified by:
      addComponentProvider in interface Tool
      Parameters:
      provider - the provider to add to the tool
      show - if true, the component is made visible.
    • removeComponentProvider

      public void removeComponentProvider(ComponentProvider provider)
      Description copied from interface: Tool
      Removes the given ComponentProvider from the tool. When a provider has been removed from the tool it is considered disposed and should not be reused.
      Specified by:
      removeComponentProvider in interface Tool
      Parameters:
      provider - the provider to remove from the tool
    • getComponentProvider

      public ComponentProvider getComponentProvider(String name)
      Description copied from interface: Tool
      Gets the ComponentProvider with the given name.
      Specified by:
      getComponentProvider in interface Tool
      Parameters:
      name - the name of the provider to get
      Returns:
      the provider
    • setStatusInfo

      public void setStatusInfo(String text)
      Description copied from interface: Tool
      Set the status information
      Specified by:
      setStatusInfo in interface Tool
      Parameters:
      text - non-html string to be displayed in the Status display area
    • setStatusInfo

      public void setStatusInfo(String text, boolean beep)
      Description copied from interface: Tool
      Set the status information
      Specified by:
      setStatusInfo in interface Tool
      Parameters:
      text - string to be displayed in the Status display area
      beep - whether to be or not
    • getStatusInfo

      public String getStatusInfo()
      Description copied from interface: Tool
      Get the status information
      Specified by:
      getStatusInfo in interface Tool
      Returns:
      the string displayed in the Status area
    • clearStatusInfo

      public void clearStatusInfo()
      Description copied from interface: Tool
      Clear the status information
      Specified by:
      clearStatusInfo in interface Tool
    • addAction

      public void addAction(DockingActionIf action)
      Description copied from interface: Tool
      Adds the action to the tool.
      Specified by:
      addAction in interface Tool
      Parameters:
      action - the action to be added.
    • removeAction

      public void removeAction(DockingActionIf action)
      Description copied from interface: Tool
      Removes the given action from the tool. When an action is removed from the tool it will be disposed and should not be reused.
      Specified by:
      removeAction in interface Tool
      Parameters:
      action - the action to be removed.
    • addLocalAction

      public void addLocalAction(ComponentProvider provider, DockingActionIf action)
      Description copied from interface: Tool
      Adds the action to the given provider as a local action.
      Specified by:
      addLocalAction in interface Tool
      Parameters:
      provider - the provider to add the action to.
      action - the DockingAction to add to the componentProvider.
    • getLocalActions

      public Set<DockingActionIf> getLocalActions(ComponentProvider provider)
      Description copied from interface: Tool
      Return a set of all local actions for the given ComponentProvider.
      Specified by:
      getLocalActions in interface Tool
      Parameters:
      provider - the component provider from which to get local actions
      Returns:
      set of all local actions for the given provider
    • removeLocalAction

      public void removeLocalAction(ComponentProvider provider, DockingActionIf action)
      Description copied from interface: Tool
      Removes the action from the provider
      Specified by:
      removeLocalAction in interface Tool
      Parameters:
      provider - the component provider from which to remove the action.
      action - the action to remove.
    • getAllActions

      public Set<DockingActionIf> getAllActions()
      Description copied from interface: Tool
      Return a set of all actions in the tool.

      Note: the result may contain conceptually duplicate actions, which is when multiple actions exist that share the same full name (the full name is the action name with the owner name, such as "My Action (MyPlugin)".

      Specified by:
      getAllActions in interface Tool
      Returns:
      set of all actions
    • getGlobalActions

      public Set<DockingActionIf> getGlobalActions()
      Description copied from interface: Tool
      Return a set of all global actions in the tool.

      Note: the result may contain conceptually duplicate actions, which is when multiple actions exist that share the same full name (the full name is the action name with the owner name, such as "My Action (MyPlugin)".

      Specified by:
      getGlobalActions in interface Tool
      Returns:
      set of all global actions
    • addPopupActionProvider

      public void addPopupActionProvider(PopupActionProvider provider)
      Description copied from interface: Tool
      Adds the given popup action provider to this tool. This provider will be called each time the popup menu is about to be shown.
      Specified by:
      addPopupActionProvider in interface Tool
      Parameters:
      provider - the provider
    • removePopupActionProvider

      public void removePopupActionProvider(PopupActionProvider provider)
      Description copied from interface: Tool
      Removes the given popup action provider
      Specified by:
      removePopupActionProvider in interface Tool
      Parameters:
      provider - the provider
    • getDockingActionsByOwnerName

      public Set<DockingActionIf> getDockingActionsByOwnerName(String owner)
      Description copied from interface: Tool
      Returns all actions for the given owner

      Note: the result may contain conceptually duplicate actions, which is when multiple actions exist that share the same full name (the full name is the action name with the owner name, such as "My Action (MyPlugin)".

      Specified by:
      getDockingActionsByOwnerName in interface Tool
      Parameters:
      owner - the action owner's name
      Returns:
      the actions
    • getActiveComponentProvider

      public ComponentProvider getActiveComponentProvider()
      Description copied from interface: Tool
      Returns the active component provider, that which has focus
      Specified by:
      getActiveComponentProvider in interface Tool
      Returns:
      the active provider
    • showComponentProvider

      public void showComponentProvider(ComponentProvider provider, boolean visible)
      Description copied from interface: Tool
      Shows or hides the component provider in the tool
      Specified by:
      showComponentProvider in interface Tool
      Parameters:
      provider - the provider to either show or hide.
      visible - true to show the provider, false to hide it.
    • showDialog

      public void showDialog(DialogComponentProvider dialogComponent)
      Description copied from interface: Tool
      Shows the dialog using the tool's root frame as a parent. Also, remembers any size and location adjustments made by the user for the next time the dialog is shown.
      Specified by:
      showDialog in interface Tool
      Parameters:
      dialogComponent - the DialogComponentProvider object to be shown in a dialog.
    • getToolFrame

      public JFrame getToolFrame()
    • getProviderWindow

      public Window getProviderWindow(ComponentProvider provider)
      Description copied from interface: Tool
      Returns the parent window for the given provider
      Specified by:
      getProviderWindow in interface Tool
      Parameters:
      provider - the provider
      Returns:
      the window
    • toFront

      public void toFront(ComponentProvider provider)
      Description copied from interface: Tool
      Makes the given ComponentProvider move to the front if it is tabbed with other components.
      Specified by:
      toFront in interface Tool
      Parameters:
      provider - the provider to move to the top of its stacking order.
    • isVisible

      public boolean isVisible(ComponentProvider provider)
      Description copied from interface: Tool
      Returns true if the given ComponentProvider is currently visible.
      Specified by:
      isVisible in interface Tool
      Parameters:
      provider - the provider to check for visibility.
      Returns:
      true if the given ComponentProvider is currently visible.
    • isActive

      public boolean isActive(ComponentProvider provider)
      Description copied from interface: Tool
      Returns true if the ComponentProvider is the currently active provider. The active provider is the provider that has keyboard focus and provides the current action context.
      Specified by:
      isActive in interface Tool
      Parameters:
      provider - the provider to check for active.
      Returns:
      true if the ComponentProvider is the currently active provider.
    • updateTitle

      public void updateTitle(ComponentProvider provider)
      Description copied from interface: Tool
      Indicates to the tool that the given componentProvider's title has changed.
      Specified by:
      updateTitle in interface Tool
      Parameters:
      provider - the componentProvider whose title has changed.
    • setMenuGroup

      public void setMenuGroup(String[] menuPath, String group)
      Set the menu group associated with a cascaded submenu. This allows a cascading menu item to be grouped with a specific set of actions. The default group for a cascaded submenu is the name of the submenu.
      Parameters:
      menuPath - menu name path where the last element corresponds to the specified group name.
      group - group name
      See Also:
    • setMenuGroup

      public void setMenuGroup(String[] menuPath, String group, String menuSubGroup)
      Description copied from interface: Tool
      Set the menu group associated with a cascaded submenu. This allows a cascading menu item to be grouped with a specific set of actions.

      The default group for a cascaded submenu is the name of the submenu.

      Specified by:
      setMenuGroup in interface Tool
      Parameters:
      menuPath - menu name path where the last element corresponds to the specified group name.
      group - group name
      menuSubGroup - the name used to sort the cascaded menu within other menu items at its level
    • contextChanged

      public void contextChanged(ComponentProvider provider)
      Description copied from interface: Tool
      Signals to the tool that the provider's context has changed. This lets toolbar and menu actions update enablement based on current context.

      Pass null to signal that the entire tool's context has changed

      Specified by:
      contextChanged in interface Tool
      Parameters:
      provider - the provider whose context changed; null to signal the tool's context
    • addContextListener

      public void addContextListener(DockingContextListener listener)
      Description copied from interface: Tool
      Adds the given context listener to this tool
      Specified by:
      addContextListener in interface Tool
      Parameters:
      listener - the listener to add
    • removeContextListener

      public void removeContextListener(DockingContextListener listener)
      Description copied from interface: Tool
      Removes the given context listener to this tool
      Specified by:
      removeContextListener in interface Tool
      Parameters:
      listener - the listener to add
    • getWindowManager

      public DockingWindowManager getWindowManager()
      Description copied from interface: Tool
      Returns the DockingWindowManger for this tool.
      Specified by:
      getWindowManager in interface Tool
      Returns:
      the DockingWindowManger for this tool.
    • setConfigChanged

      public void setConfigChanged(boolean changed)
      Description copied from interface: Tool
      Toggles the "change" state of the tool...
      Specified by:
      setConfigChanged in interface Tool
      Parameters:
      changed - true indicates that the tool config has changed.
    • hasConfigChanged

      public boolean hasConfigChanged()
      Description copied from interface: Tool
      Return true if the tool's configuration has changed
      Specified by:
      hasConfigChanged in interface Tool
      Returns:
      true if the tool's configuration has changed
    • getToolActions

      public DockingToolActions getToolActions()
      Description copied from interface: Tool
      Returns the class that manages actions for the tool.

      Most clients will not need to use this methods. Instead, actions should be added to the tool via Tool.addAction(DockingActionIf) and Tool.addLocalAction(ComponentProvider, DockingActionIf).

      Specified by:
      getToolActions in interface Tool
      Returns:
      the action manager