# Package javax.help

package javax.help
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.

Related Packages
Package
Description
javax.help.event
Supports event changes in JavaHelp classes.
javax.help.plaf
Supports access to Component UI classes.
javax.help.resources
Supports localization of JavaHelp.
javax.help.search
Supports simple access to search engines.
javax.help.tagext
Class
Description
AbstractHelpAction
AppendMerge
Append merge type
BackAction
BadIDException
An ID was attempted to be created with incorrect arguments
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.
CSH.Manager
CSH Manager Interface to support dynamic `HelpSet` and `ID` for object.
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
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.
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.
HelpSetException
This exeception reports generic failures in HelpSet.
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.
InvalidHelpSetContextException
The HelpSet is not a (transitive) sub-HelpSet of some context HelpSet.
InvalidNavigatorViewException
JHelpNavigator cannot deal with given NavigatorView.
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
A Map is the interface to IDinvalid input: '<'->URL mapping.
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.
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.
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.
TreeItemFactory
A factory for creating TreeItems.
TryMap
A Map that can combine a number of other Maps in an efficient manner.
UniteAppendMerge
Unite-append merge type
UnsupportedOperationException
This is a platform-independent stand-in for the java.lang class
WindowPresentation
Window Presentation is an abstract class providing a generic interface for the development of Window Presentations.