Package docking.help

Class HelpManager

  • All Implemented Interfaces:
    HelpService
    Direct Known Subclasses:
    GhidraHelpService, TestHelpService

    public class HelpManager
    extends java.lang.Object
    implements HelpService
    Class that uses JavaHelp browser to show context sensitive help.

    Note: this manager will validate all registered help when in development mode. In order to catch items that have not registered help at all, we rely on those items to register a default HelpLocation that will get flagged as invalid. Examples of this usage are the DockingActionIf and the ComponentProvider base classes.

    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected HelpManager​(java.net.URL url)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addHelpSet​(java.net.URL url, GHelpClassLoader classLoader)
      Add the help set for the given URL.
      void clearHelp​(java.lang.Object helpObject)
      Removes this object from the help system.
      void excludeFromHelp​(java.lang.Object helpObject)
      Signals to the help system to ignore the given object when searching for and validating help.
      HelpLocation getHelpLocation​(java.lang.Object helpObj)
      Returns the Help location associated with the specified object or null if no help has been registered for the object.
      java.util.Map<java.lang.Object,​HelpLocation> getInvalidHelpLocations​(TaskMonitor monitor)  
      GHelpSet getMasterHelpSet()
      Returns the master help set (the one into which all other help sets are merged).
      boolean helpExists()
      Returns true if the help system has been initialized properly; false if help does not exist or is not working.
      boolean isExcludedFromHelp​(java.lang.Object helpObject)
      Returns true if the given object is meant to be ignored by the help system
      protected void mergePendingHelpSets()  
      protected void registerHelp()  
      void registerHelp​(java.lang.Object helpObject, HelpLocation location)
      Register help for a specific object.
      void showHelp​(java.lang.Object helpObj, boolean infoOnly, java.awt.Component owner)
      Display the Help content identified by the help object.
      void showHelp​(java.net.URL url)
      Display the help page for the given URL.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • HelpManager

        protected HelpManager​(java.net.URL url)
                       throws javax.help.HelpSetException
        Constructor.
        Parameters:
        url - url for the main HelpSet file for the application.
        helpActionManager - The HelpActionManager with which help location will be registered
        Throws:
        javax.help.HelpSetException - if HelpSet could not be created
    • Method Detail

      • registerHelp

        protected void registerHelp()
      • helpExists

        public boolean helpExists()
        Description copied from interface: HelpService
        Returns true if the help system has been initialized properly; false if help does not exist or is not working.
        Specified by:
        helpExists in interface HelpService
        Returns:
        true if the help system has found the applications help content and has finished initializing
      • addHelpSet

        public void addHelpSet​(java.net.URL url,
                               GHelpClassLoader classLoader)
                        throws javax.help.HelpSetException
        Add the help set for the given URL.
        Parameters:
        url - url for the HelpSet (.hs) file
        classLoader - the help classloader that knows how to find help modules in the classpath
        Throws:
        javax.help.HelpSetException - if the help set could not be created from the given URL.
      • excludeFromHelp

        public void excludeFromHelp​(java.lang.Object helpObject)
        Description copied from interface: HelpService
        Signals to the help system to ignore the given object when searching for and validating help. Once this method has been called, no help can be registered for the given object.
        Specified by:
        excludeFromHelp in interface HelpService
        Parameters:
        helpObject - the object to exclude from the help system.
      • isExcludedFromHelp

        public boolean isExcludedFromHelp​(java.lang.Object helpObject)
        Description copied from interface: HelpService
        Returns true if the given object is meant to be ignored by the help system
        Specified by:
        isExcludedFromHelp in interface HelpService
        Parameters:
        helpObject - the object to check
        Returns:
        true if ignored
        See Also:
        HelpService.excludeFromHelp(Object)
      • clearHelp

        public void clearHelp​(java.lang.Object helpObject)
        Description copied from interface: HelpService
        Removes this object from the help system. This method is useful, for example, when a single Java Component will have different help locations assigned over its lifecycle.
        Specified by:
        clearHelp in interface HelpService
        Parameters:
        helpObject - the object for which to clear help
      • registerHelp

        public void registerHelp​(java.lang.Object helpObject,
                                 HelpLocation location)
        Description copied from interface: HelpService
        Register help for a specific object.

        Do not call this method will a null help location. Instead, to signal that an item has no help, call HelpService.excludeFromHelp(Object).

        Specified by:
        registerHelp in interface HelpService
        Parameters:
        helpObject - the object to associate the specified help location with
        location - help content location
      • getMasterHelpSet

        public GHelpSet getMasterHelpSet()
        Returns the master help set (the one into which all other help sets are merged).
      • showHelp

        public void showHelp​(java.lang.Object helpObj,
                             boolean infoOnly,
                             java.awt.Component owner)
        Description copied from interface: HelpService
        Display the Help content identified by the help object.
        Specified by:
        showHelp in interface HelpService
        Parameters:
        helpObj - the object to which help was previously registered
        infoOnly - display HelpLocation information only, not the help UI
        owner - requesting component
        See Also:
        HelpService.registerHelp(Object, HelpLocation)
      • mergePendingHelpSets

        protected void mergePendingHelpSets()