Package docking.help
Class HelpManager
java.lang.Object
docking.help.HelpManager
- All Implemented Interfaces:
HelpService
- Direct Known Subclasses:
GhidraHelpService
,TestHelpService
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.
-
Field Summary
Fields inherited from interface help.HelpService
DUMMY_HELP_SET_NAME
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addHelpSet
(URL url, GHelpClassLoader classLoader) Add the help set for the given URL.void
Removes this object from the help system.void
excludeFromHelp
(Object helpObject) Signals to the help system to ignore the given object when searching for and validating help.getHelpLocation
(Object helpObj) Returns the registered (viaHelpService.registerHelp(Object, HelpLocation)
help location for the given object; null if there is no registered help.protected String
Returns the 'home id' to be used by all help sets in the system (as opposed to allowing each help set to define its own home id.getInvalidHelpLocations
(TaskMonitor monitor) Returns the master help set (the one into which all other help sets are merged).boolean
Returns true if the help system has been initialized properly; false if help does not exist or is not working.boolean
isExcludedFromHelp
(Object helpObject) Returns true if the given object is meant to be ignored by the help systemprotected void
protected void
void
registerHelp
(Object helpObject, HelpLocation location) Register help for a specific object.void
reload()
Called when a major system even happens, such as changing the system theme.void
showHelp
(HelpLocation loc) Display the help page for the given help location.void
Display the Help content identified by the help object.void
Display the help page for the given URL.
-
Field Details
-
SHOW_AID_KEY
- See Also:
-
-
Constructor Details
-
HelpManager
Constructor.- Parameters:
url
- url for the main HelpSet file for the application.- Throws:
javax.help.HelpSetException
- if HelpSet could not be created
-
-
Method Details
-
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 interfaceHelpService
- Returns:
- true if the help system has found the applications help content and has finished initializing
-
addHelpSet
Add the help set for the given URL.- Parameters:
url
- url for the HelpSet (.hs) fileclassLoader
- 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.
-
getHomeId
Returns the 'home id' to be used by all help sets in the system (as opposed to allowing each help set to define its own home id.- Returns:
- the home id
-
excludeFromHelp
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 interfaceHelpService
- Parameters:
helpObject
- the object to exclude from the help system.
-
isExcludedFromHelp
Description copied from interface:HelpService
Returns true if the given object is meant to be ignored by the help system- Specified by:
isExcludedFromHelp
in interfaceHelpService
- Parameters:
helpObject
- the object to check- Returns:
- true if ignored
- See Also:
-
clearHelp
Description copied from interface:HelpService
Removes this object from the help system. This method is useful, for example, when a single JavaComponent
will have different help locations assigned over its lifecycle.- Specified by:
clearHelp
in interfaceHelpService
- Parameters:
helpObject
- the object for which to clear help
-
registerHelp
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, callHelpService.excludeFromHelp(Object)
.- Specified by:
registerHelp
in interfaceHelpService
- Parameters:
helpObject
- the object to associate the specified help location withlocation
- help content location
-
getHelpLocation
Description copied from interface:HelpService
Returns the registered (viaHelpService.registerHelp(Object, HelpLocation)
help location for the given object; null if there is no registered help.- Specified by:
getHelpLocation
in interfaceHelpService
- Parameters:
helpObj
- The object for which to find a registered HelpLocation.- Returns:
- the registered HelpLocation
- See Also:
-
getMasterHelpSet
Returns the master help set (the one into which all other help sets are merged).- Returns:
- the help set
-
reload
public void reload()Description copied from interface:HelpService
Called when a major system even happens, such as changing the system theme.- Specified by:
reload
in interfaceHelpService
-
showHelp
Description copied from interface:HelpService
Display the help page for the given URL. This is a specialty method for displaying help when a specific file is desired, like an introduction page. Showing help for objects within the system is accomplished by callingHelpService.showHelp(Object, boolean, Component)
.- Specified by:
showHelp
in interfaceHelpService
- Parameters:
url
- the URL to display- See Also:
-
showHelp
Description copied from interface:HelpService
Display the help page for the given help location.- Specified by:
showHelp
in interfaceHelpService
- Parameters:
loc
- the location to display.- See Also:
-
showHelp
Description copied from interface:HelpService
Display the Help content identified by the help object.- Specified by:
showHelp
in interfaceHelpService
- Parameters:
helpObj
- the object to which help was previously registeredinfoOnly
- displayHelpLocation
information only, not the help UIowner
- requesting component- See Also:
-
getInvalidHelpLocations
public Map<Object,HelpLocation> getInvalidHelpLocations(TaskMonitor monitor) throws CancelledException - Throws:
CancelledException
-
mergePendingHelpSets
protected void mergePendingHelpSets()
-