## Package javax.help

Supports presentation of online documentation with both content and contextual views of this information.

See:
Description

Interface Summary
CSH.Manager: CSH Manager Interface to support dynamic `HelpSet` and `ID` for object.
HelpAction
HelpBroker: The HelpBroker is the default presentation of a HelpSet.
HelpHistoryModel: The interface to the history model.
HelpModel: The interface to the model of a JHelp that represents the HelpSet being presented to the user.
Map: A Map is the interface to ID<->URL mapping.
TextHelpModel: The interface to a HelpModel that manipulates text.
TextHelpModel.Highlight: This is very similar to javax.swing.text.Highlighter.Highlight except that it does not use the notion of HighlightPainter.
TreeItemFactory: A factory for creating TreeItems.

Class Summary
AbstractHelpAction
AppendMerge: Append merge type
BackAction
CSH: A convenience class that provides simple access to context-senstive help functionality.
CSH.DisplayHelpAfterTracking: An ActionListener that displays help on a selected object after tracking context-sensitive events.
CSH.DisplayHelpFromFocus: An ActionListener that displays the help of the object that currently has focus.
CSH.DisplayHelpFromSource: An ActionListener that gets the helpID for the action source and displays the helpID in the help viewer.
DefaultHelpBroker: An implmentation of the HelpBroker interface
DefaultHelpHistoryModel: DefaultHelpHistoryModel is default implementation of HelpHistoryModel interface
DefaultHelpModel: This class implements the javax.help.HelpModel API and notifies the JHelpModel listeners when changes occur.
DefaultHelpModel.DefaultHighlight: A default implementation of TextHelpModel.Highlight
FavoritesAction
FavoritesItem: A class for individual favorites items.
FavoritesNode: A class for Favorites node.
FavoritesView: Navigational View information for the Favorites
FavoritesView.DefaultFavoritesFactory: A default TreeItemFactory that can be used to parse Favorites items as used by this navigator.
FlatMap: A FlatMap is a simple implementation of a Map.
ForwardAction
GlossaryView: View information for a Glossary Navigator
HelpSet: A HelpSet is a collection of help information consisting of a HelpSet file, table of contents (TOC), index, topic files, and Map file.
HelpSet.DefaultHelpSetFactory: The default HelpSetFactory that processes HelpSets.
HelpSet.Presentation: HelpSet Presentation class.
HelpSetFactory.HelpAction: Internal storage of HelpAction defined in a Presentaion
HelpUtilities: Provides a number of utility functions: Support for Beans, mapping from a Bean class to its HelpSet and to its ID.
HomeAction
IndexItem: A class for individual index items.
IndexView: Navigational View information for an Index
IndexView.DefaultIndexFactory: A default TreeItemFactory that can be used to parse TOC items as used by this navigator.
JHelp: Displays HelpSet data with navigators and a content viewer.
JHelpContentViewer: A component to represent the Help viewer that can be embedded if desired.
JHelpFavoritesNavigator: JHelpFavoritesNavigator is a JHelpNavigator for Favorites.
JHelpGlossaryNavigator: JHelpGlossaryNavigator is a JHelpNavigator for a Glossary
JHelpIndexNavigator: JHelpIndexNavigator is a JHelpNavigator for an Index.
JHelpNavigator: A JHelpNavigator is a control that presents navigational help data.
JHelpSearchNavigator: A JHelpNavigator for search data.
JHelpTOCNavigator: A JHelpNavigator for a TOC.
MainWindow: MainWindow is a class that will create a single main help window for an application.
Map.ID: An ID is a pair of String, HelpSet.
Merge: Common superclass for all merge types
Merge.DefaultMergeFactory: Default Merge factory which creates concrete Merge objects
MergeHelpUtilities: Common utilities for merge types
NavigatorView: Navigational View information
NoMerge: No merge type
Popup: Popup is a Presentation class that will create a popup help window for an application.
Presentation: Presentation is an abstract class providing a generic interface for the development of alternative Presentations.
PrintAction
PrintSetupAction
ReloadAction
SearchHit: Stores search information for individual Search hits.
SearchTOCItem: Stores Search TOC items.
SearchView: Navigational View information for a Search
SecondaryWindow: MainWindowPresentation is a class that will create a single main help window for an application.
SeparatorAction
ServletHelpBroker: An implmentation of the HelpBroker interface for Servlets
SortMerge: Sort merge type
SwingHelpUtilities: Provides a number of utility functions: Support for Beans, mapping from a Bean class to its HelpSet and to its ID.
TOCItem: A class for individual TOC items
TOCView: Navigational View information for a TOC.
TOCView.DefaultTOCFactory: A default TreeItemFactory that can be used to parse TOC items as used by this navigator.
TreeItem: The base items known to TOC, Index and Favorites Navigators.
TryMap: A Map that can combine a number of other Maps in an efficient manner.
UniteAppendMerge: Unite-append merge type
WindowPresentation: Window Presentation is an abstract class providing a generic interface for the development of Window Presentations.

Exception Summary
BadIDException: An ID was attempted to be created with incorrect arguments
HelpSetException: This exeception reports generic failures in HelpSet.
InvalidHelpSetContextException: The HelpSet is not a (transitive) sub-HelpSet of some context HelpSet.
InvalidNavigatorViewException: JHelpNavigator cannot deal with given NavigatorView.
UnsupportedOperationException: This is a platform-independent stand-in for the java.lang class

## Package javax.help Description

Supports presentation of online documentation with both content and contextual views of this information. This is the main package for the JavaHelp standard extension. The main focus of JavaHelp is online help, but it can be used for any online content.

JavaHelp supports the notion of a HelpSet that encompases all documentation information. There is a simple way to read a HelpSet, create a presentation for it, and interact with it and there is also a collection of Swing components that can be used directly for additional control. JavaHelp presents content using Swing's EditorKits, which provide for extensibility of content. JavaHelp also provides for extensibility of context via the notion of a NavigatorView; several views are standard. One of the standard views provides full-text search, which relies on a simple search package to communicate with search engines.

### Basic Classes

`HelpSet` is the main class, providing access to a HelpSet file. A visual presentation of a HelpSet can be obtained through a `HelpBroker` which is an abstraction that permits interaction regardless of the presentation details; the default presentation is `DefaultHelpBroker`. An application can provide online help using only these two classes.

Helpsets can be merged dynamically or statically, and can be associated with Beans.

### Swing components

JavaHelp provides a collection of Swing components that are used to implement the DefaultHelpBroker and can also be used directly. The components follow the standard MVC from Swing. `HelpModel` models changes to the location within a HelpSet--components that want to respond to these changes should listen to events originating within the model (this is how synchronized views work). `TextHelpModel` provides additional information when the content is textual. `DefaultHelpModel` is the default model that implements both models.

`JHelpContentViewer` is the Swing component for HTML content, while context corresponds to several subclasses of `JHelpNavigator`. `JHelp` is a common grouping of these classes into synchronized views of content.

### Extensibility

Context extensibility is described through a `NavigatorView` which provides access to context information, plus a way of presenting this information. `TOCView`, `IndexView`, and `SearchView` are standard views for table of contents, index, and full-text search.

The standard views yield standard `JHelpTOCNavigator`, `JHelpIndexNavigator`, and `JHelpSearchNavigator` Swing components. The standard views also provide access to the content--this access is provides through subclasses of `TreeItem`.

New views can be added, for instance a new TOC presentation can be obtained by subclassing TOCView and changing the JHelpNavigator returned by it.

### Context Sensitive Help

JavaHelp supports a `Map` between identifiers and URLs. `FlatMap` and `TryMap` are two implementations. The main class used to associate specific content with graphic objects is `CSH`, while `DialogSupport` provides support in Dialogs (this may migrate to Swing at some point).

### Search

JavaHelp supports a standard full-text search view and navigator. The view interacts with a search engine through the types in the `javax.javahelp.search` package. The reference implementation provides a search engine that implements these interfaces, but others can also be used. The specific search engine is part of the information given to the search view. This separation provides the full-text search functionality but does not imposing specific formats.

## Related Documentation

For overviews, tutorials, examples, guides, tool support, and other documentation, please see the JavaHelp System User's Guide.