tnt.gui
Class HelpFrame

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by tnt.gui.HelpFrame
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.HyperlinkListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class HelpFrame
extends javax.swing.JFrame
implements java.awt.event.ActionListener, javax.swing.event.HyperlinkListener

This class encapsulates a JFrame that displays HTML-based help.

Version:
1.0 - 01/2006, 1.1 - 06/2006 (Restricted instantiation to a singleton instance obtained by calling getHelpFrame(String helpContext) and added navToPage(String filename).)
Author:
Steven J. Castellucci
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  javax.swing.JButton backButton
          The button to traverse backward in the navigation history.
protected  java.util.Stack<java.net.URL> backHistory
          The stack used to track URLs for the back button.
protected  javax.swing.JButton closeButton
          The button to close this frame.
protected static java.lang.String ERROR_404_TEXT
          The HTML-based text to display when unable to load a page.
protected  javax.swing.JButton forwardButton
          The button to traverse forward in the navigation history.
protected  java.util.Stack<java.net.URL> forwardHistory
          The stack used to track URLs for the foward button.
protected static int H_GAP
          The horizontal gap sometimes placed between components.
protected  javax.swing.JButton homeButton
          The button to navigate to the main page.
protected  javax.swing.JEditorPane htmlPane
          The pane that displays HTML content.
protected static int INI_HEIGHT
          The initial height of this frame.
protected static int INI_WIDTH
          The initial width of this frame.
static java.lang.String MAIN_PAGE
          The index page in the help directory.
protected static HelpFrame singleton
          The pane that displays HTML content.
protected static int V_GAP
          The vertical gap sometimes placed between components.
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent ae)
           
protected  javax.swing.JPanel createButtonPanel()
          Arranges the panel containing other buttons (i.e., the close button).
protected  javax.swing.JScrollPane createHtmlScrollPane(java.lang.String helpContext)
          Creates the scroll pane that contains the HTML document.
protected  javax.swing.JPanel createNavPanel()
          Creates the layout to display navigational buttons.
static HelpFrame getHelpFrame(java.lang.String helpContext)
          Returns the singleton instance of an HTML help window.
 void hyperlinkUpdate(javax.swing.event.HyperlinkEvent he)
           
protected  void iniSingleton(java.lang.String helpContext)
          Initializes the singleton instance.
 boolean navToPage(java.lang.String filename)
          Sets the HTML content of this frame, while maintaining navigation history.
 boolean navToPage(java.net.URL url)
          Sets the HTML content of this frame, while maintaining navigation history.
 void setVisible(boolean b)
           
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

singleton

protected static HelpFrame singleton
The pane that displays HTML content.


htmlPane

protected javax.swing.JEditorPane htmlPane
The pane that displays HTML content.


closeButton

protected javax.swing.JButton closeButton
The button to close this frame.


backButton

protected javax.swing.JButton backButton
The button to traverse backward in the navigation history.


homeButton

protected javax.swing.JButton homeButton
The button to navigate to the main page.

See Also:
MAIN_PAGE

forwardButton

protected javax.swing.JButton forwardButton
The button to traverse forward in the navigation history.


backHistory

protected java.util.Stack<java.net.URL> backHistory
The stack used to track URLs for the back button.


forwardHistory

protected java.util.Stack<java.net.URL> forwardHistory
The stack used to track URLs for the foward button.


H_GAP

protected static final int H_GAP
The horizontal gap sometimes placed between components.

See Also:
Constant Field Values

V_GAP

protected static final int V_GAP
The vertical gap sometimes placed between components.

See Also:
Constant Field Values

INI_WIDTH

protected static final int INI_WIDTH
The initial width of this frame.

See Also:
Constant Field Values

INI_HEIGHT

protected static final int INI_HEIGHT
The initial height of this frame.

See Also:
Constant Field Values

ERROR_404_TEXT

protected static final java.lang.String ERROR_404_TEXT
The HTML-based text to display when unable to load a page. This will appear above the message generated by the exception.

See Also:
Constant Field Values

MAIN_PAGE

public static final java.lang.String MAIN_PAGE
The index page in the help directory.

See Also:
Constants.HELP_DIR, Constant Field Values
Method Detail

getHelpFrame

public static HelpFrame getHelpFrame(java.lang.String helpContext)
Returns the singleton instance of an HTML help window. The initial page can be passed as the constant MAIN_PAGE, or as the name of an HTML file within the help directory.

Parameters:
helpContext - the initial page to open.

iniSingleton

protected void iniSingleton(java.lang.String helpContext)
Initializes the singleton instance.


createNavPanel

protected javax.swing.JPanel createNavPanel()
Creates the layout to display navigational buttons.


createHtmlScrollPane

protected javax.swing.JScrollPane createHtmlScrollPane(java.lang.String helpContext)
Creates the scroll pane that contains the HTML document.

Parameters:
helpContext - the initial page to open.

createButtonPanel

protected javax.swing.JPanel createButtonPanel()
Arranges the panel containing other buttons (i.e., the close button).


navToPage

public boolean navToPage(java.net.URL url)
Sets the HTML content of this frame, while maintaining navigation history.

Parameters:
url - the URL to display.
Returns:
true if successful, false otherwise.

navToPage

public boolean navToPage(java.lang.String filename)
Sets the HTML content of this frame, while maintaining navigation history.

Parameters:
filename - the HTML file (within the help directory) to display.
Returns:
true if successful, false otherwise.

setVisible

public void setVisible(boolean b)
Overrides:
setVisible in class java.awt.Component

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent ae)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

hyperlinkUpdate

public void hyperlinkUpdate(javax.swing.event.HyperlinkEvent he)
Specified by:
hyperlinkUpdate in interface javax.swing.event.HyperlinkListener


Copyright © 2006 Steven Castellucci and Scott MacKenzie. All Rights Reserved.