org.crosswire.common.swing
Class ExceptionPane

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by org.crosswire.common.swing.ExceptionPane
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public final class ExceptionPane
extends JPanel

A simple way of reporting problems to the user.

Author:
Joe Walker [joe at eireneh dot com]
See Also:
for license details. The copyright to this program is held by it's authors., Serialized Form

Nested Class Summary
private static class ExceptionPane.CustomLister
          List listener to update the contents of the text area whenever someone clicks in the list
(package private) static class ExceptionPane.ExceptionPaneReporterListener
          The ExceptionPane instance that we add to the Log
private static class ExceptionPane.ExceptionRunner
           
private static class ExceptionPane.MessageRunner
           
private static class ExceptionPane.SelectActionListener
           
private static class ExceptionPane.SelectedItemListener
           
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  JCheckBox detail
           
private static boolean detailShown
          Whether full details should be given.
private  Throwable ex
          The exception we are displaying
private  JLabel label
           
private static ExceptionPane.ExceptionPaneReporterListener li
          The listener that pops up the ExceptionPanes
private  JList list
           
private  JPanel lower
           
private  JPanel okBox
           
private static long serialVersionUID
          Serialization ID
private static File[] sources
          The directories searched for source
private  JTextArea text
           
private  JPanel upper
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
private ExceptionPane(Throwable ex)
          Use showExceptionDialog for the time being
 
Method Summary
protected  void changeDetail()
          Is the detail area shown?
static String getHTMLDescription(Throwable ex)
          Gets a short HTML description of an Exception for display in a window
static File[] getSourcePath()
          Get the directories searched for source files.
private  void initialise()
          Setup the GUI
static boolean isDetailShown()
          This is only used by config
static void setDetailShown(boolean detailShown)
          Set whether the "details" check box should be shown.
protected  void setDisplayedException(Throwable ex)
          Display a different nested exception
static void setHelpDeskListener(boolean joined)
          You must call setJoinHelpDesk() in order to start displaying Exceptions sent to the Log, and in order to properly close this class you must call it again (with false).
static void setSourcePath(File[] sourcePath)
          Set the directories to search for source files.
static void showExceptionDialog(Component parent, Throwable ex)
          Show a dialog containing the exception
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ex

private Throwable ex
The exception we are displaying


list

private JList list

upper

private JPanel upper

label

private JLabel label

text

private JTextArea text

okBox

private JPanel okBox

detail

private JCheckBox detail

lower

private JPanel lower

detailShown

private static boolean detailShown
Whether full details should be given.


sources

private static File[] sources
The directories searched for source


li

private static ExceptionPane.ExceptionPaneReporterListener li
The listener that pops up the ExceptionPanes


serialVersionUID

private static final long serialVersionUID
Serialization ID

See Also:
Constant Field Values
Constructor Detail

ExceptionPane

private ExceptionPane(Throwable ex)
Use showExceptionDialog for the time being

Method Detail

initialise

private void initialise()
Setup the GUI


changeDetail

protected void changeDetail()
Is the detail area shown?


setDisplayedException

protected void setDisplayedException(Throwable ex)
Display a different nested exception


showExceptionDialog

public static void showExceptionDialog(Component parent,
                                       Throwable ex)
Show a dialog containing the exception

Parameters:
parent - Something to attach the Dialog to
ex - The Exception to display

isDetailShown

public static boolean isDetailShown()
This is only used by config

Returns:
Whether the "details" check box should be shown.
See Also:
setDetailShown(boolean)

setDetailShown

public static void setDetailShown(boolean detailShown)
Set whether the "details" check box should be shown.

Parameters:
detailShown - indicates the whether details should be available.
See Also:
isDetailShown()

setSourcePath

public static void setSourcePath(File[] sourcePath)
Set the directories to search for source files.

Parameters:
sourcePath - A string array of the source directories

getSourcePath

public static File[] getSourcePath()
Get the directories searched for source files.

Returns:
A string array of the source directories

setHelpDeskListener

public static void setHelpDeskListener(boolean joined)
You must call setJoinHelpDesk() in order to start displaying Exceptions sent to the Log, and in order to properly close this class you must call it again (with false).

Parameters:
joined - Are we listening to the Log

getHTMLDescription

public static String getHTMLDescription(Throwable ex)
Gets a short HTML description of an Exception for display in a window


Copyright ยจ 2003-2007