org.jdesktop.swingx.plaf.basic
Class BasicErrorPaneUI

java.lang.Object
  extended by javax.swing.plaf.ComponentUI
      extended by javax.swing.plaf.PanelUI
          extended by org.jdesktop.swingx.plaf.ErrorPaneUI
              extended by org.jdesktop.swingx.plaf.basic.BasicErrorPaneUI
Direct Known Subclasses:
MacOSXErrorPaneUI

public class BasicErrorPaneUI
extends ErrorPaneUI

Base implementation of the JXErrorPane UI.


Field Summary
protected static String CLASS_NAME
          Used as a prefix when pulling data out of UIManager for i18n
protected  JButton closeButton
          ok/close button
protected  JButton copyToClipboardButton
           
protected  ActionListener copyToClipboardListener
          Action listener for the copy to clipboard button.
protected  AbstractButton detailButton
          detail button
protected  ActionListener detailListener
          Action listener for the detail button.
protected  JXEditorPane details
          details text area
protected  JPanel detailsPanel
          details panel
protected  JScrollPane detailsScrollPane
           
protected  JEditorPane errorMessage
          Error message text area
protected  PropertyChangeListener errorPaneListener
          Property change listener for the error pane ensures that the pane's UI is reinitialized.
protected  JScrollPane errorScrollPane
          Error message text scroll pane wrapper.
protected  JLabel iconLabel
          label used to display the warning/error icon
protected  JXErrorPane pane
          The error pane this UI is for
protected  AbstractButton reportButton
          report an error button
 
Constructor Summary
BasicErrorPaneUI()
           
 
Method Summary
 Dimension calculatePreferredSize()
          Calculates default prefered size for JXErrorPane on given platform/LAF.
protected  void configureDetailsButton(boolean expanded)
           
protected  void configureReportAction(AbstractActionExt reportAction)
           
protected  LayoutManager createDetailPanelLayout()
           
protected  LayoutManager createErrorPaneLayout()
          Create and return the LayoutManager to use with the error pane.
static ComponentUI createUI(JComponent c)
           
protected  Icon getDefaultErrorIcon()
           
protected  Icon getDefaultWarningIcon()
           
protected  String getDetailsAsHTML(ErrorInfo errorInfo)
          Creates and returns HTML representing the details of this incident info.
protected  int getDetailsHeight()
           
 JDialog getErrorDialog(Component owner)
          Creates new ErrorPane wrapped in the dialog window centered at provided owner component.
 JFrame getErrorFrame(Component owner)
          Creates new ErrorPane wrapped in the frame window centered at provided owner component.
 JInternalFrame getErrorInternalFrame(Component owner)
          Creates new ErrorPane wrapped in the internal frame window centered at provided owner component.
protected  void installComponents()
          Creates and initializes the components which make up the aggregate combo box.
protected  void installDefaults()
          Installs the default colors, and default font into the Error Pane
protected  void installListeners()
          Create and install the listeners for the Error Pane.
 void installUI(JComponent c)
          Configures the specified component appropriate for the look and feel.
protected  void reinit()
          Reconfigures the dialog if settings have changed, such as the errorInfo, errorIcon, warningIcon, etc
protected  void uninstallComponents()
          The aggregate components which compise the combo box are unregistered and uninitialized.
protected  void uninstallDefaults()
          Uninstalls the default colors, and default font into the Error Pane.
protected  void uninstallListeners()
          Remove the installed listeners from the Error Pane.
 void uninstallUI(JComponent c)
          Reverses configuration which was done on the specified component during installUI.
 
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getMaximumSize, getMinimumSize, getPreferredSize, paint, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_NAME

protected static final String CLASS_NAME
Used as a prefix when pulling data out of UIManager for i18n

See Also:
Constant Field Values

pane

protected JXErrorPane pane
The error pane this UI is for


errorMessage

protected JEditorPane errorMessage
Error message text area


errorScrollPane

protected JScrollPane errorScrollPane
Error message text scroll pane wrapper.


details

protected JXEditorPane details
details text area


detailButton

protected AbstractButton detailButton
detail button


closeButton

protected JButton closeButton
ok/close button


iconLabel

protected JLabel iconLabel
label used to display the warning/error icon


reportButton

protected AbstractButton reportButton
report an error button


detailsPanel

protected JPanel detailsPanel
details panel


detailsScrollPane

protected JScrollPane detailsScrollPane

copyToClipboardButton

protected JButton copyToClipboardButton

errorPaneListener

protected PropertyChangeListener errorPaneListener
Property change listener for the error pane ensures that the pane's UI is reinitialized.


detailListener

protected ActionListener detailListener
Action listener for the detail button.


copyToClipboardListener

protected ActionListener copyToClipboardListener
Action listener for the copy to clipboard button.

Constructor Detail

BasicErrorPaneUI

public BasicErrorPaneUI()
Method Detail

createUI

public static ComponentUI createUI(JComponent c)

installUI

public void installUI(JComponent c)
Configures the specified component appropriate for the look and feel. This method is invoked when the ComponentUI instance is being installed as the UI delegate on the specified component. This method should completely configure the component for the look and feel, including the following:
  1. Install any default property values for color, fonts, borders, icons, opacity, etc. on the component. Whenever possible, property values initialized by the client program should not be overridden.
  2. Install a LayoutManager on the component if necessary.
  3. Create/add any required sub-components to the component.
  4. Create/install event listeners on the component.
  5. Create/install a PropertyChangeListener on the component in order to detect and respond to component property changes appropriately.
  6. Install keyboard UI (mnemonics, traversal, etc.) on the component.
  7. Initialize any appropriate instance data.

Overrides:
installUI in class ComponentUI
Parameters:
c - the component where this UI delegate is being installed
See Also:
ComponentUI.uninstallUI(javax.swing.JComponent), JComponent.setUI(javax.swing.plaf.ComponentUI), JComponent.updateUI()

uninstallUI

public void uninstallUI(JComponent c)
Reverses configuration which was done on the specified component during installUI. This method is invoked when this UIComponent instance is being removed as the UI delegate for the specified component. This method should undo the configuration performed in installUI, being careful to leave the JComponent instance in a clean state (no extraneous listeners, look-and-feel-specific property objects, etc.). This should include the following:
  1. Remove any UI-set borders from the component.
  2. Remove any UI-set layout managers on the component.
  3. Remove any UI-added sub-components from the component.
  4. Remove any UI-added event/property listeners from the component.
  5. Remove any UI-installed keyboard UI from the component.
  6. Nullify any allocated instance data objects to allow for GC.

Overrides:
uninstallUI in class ComponentUI
Parameters:
c - the component from which this UI delegate is being removed; this argument is often ignored, but might be used if the UI object is stateless and shared by multiple components
See Also:
ComponentUI.installUI(javax.swing.JComponent), JComponent.updateUI()

installDefaults

protected void installDefaults()
Installs the default colors, and default font into the Error Pane


uninstallDefaults

protected void uninstallDefaults()
Uninstalls the default colors, and default font into the Error Pane.


installListeners

protected void installListeners()
Create and install the listeners for the Error Pane. This method is called when the UI is installed.


uninstallListeners

protected void uninstallListeners()
Remove the installed listeners from the Error Pane. The number and types of listeners removed and in this method should be the same that was added in installListeners


installComponents

protected void installComponents()
Creates and initializes the components which make up the aggregate combo box. This method is called as part of the UI installation process.


uninstallComponents

protected void uninstallComponents()
The aggregate components which compise the combo box are unregistered and uninitialized. This method is called as part of the UI uninstallation process.


getErrorFrame

public JFrame getErrorFrame(Component owner)
Description copied from class: ErrorPaneUI
Creates new ErrorPane wrapped in the frame window centered at provided owner component.

Specified by:
getErrorFrame in class ErrorPaneUI
Parameters:
owner - component to center created error frame at.
Returns:
New ErrorPane instance wrapped in JFrame.

getErrorDialog

public JDialog getErrorDialog(Component owner)
Description copied from class: ErrorPaneUI
Creates new ErrorPane wrapped in the dialog window centered at provided owner component.

Specified by:
getErrorDialog in class ErrorPaneUI
Parameters:
owner - component to center created error dialog at.
Returns:
New ErrorPane instance wrapped in JDialog.

getErrorInternalFrame

public JInternalFrame getErrorInternalFrame(Component owner)
Description copied from class: ErrorPaneUI
Creates new ErrorPane wrapped in the internal frame window centered at provided owner component.

Specified by:
getErrorInternalFrame in class ErrorPaneUI
Parameters:
owner - component to center created error frame at.
Returns:
New ErrorPane instance wrapped in JInternalFrame.

createErrorPaneLayout

protected LayoutManager createErrorPaneLayout()
Create and return the LayoutManager to use with the error pane.


createDetailPanelLayout

protected LayoutManager createDetailPanelLayout()

calculatePreferredSize

public Dimension calculatePreferredSize()
Description copied from class: ErrorPaneUI
Calculates default prefered size for JXErrorPane on given platform/LAF.

Specified by:
calculatePreferredSize in class ErrorPaneUI
Returns:
Preferred size.

getDetailsHeight

protected int getDetailsHeight()

configureReportAction

protected void configureReportAction(AbstractActionExt reportAction)

getDefaultErrorIcon

protected Icon getDefaultErrorIcon()
Returns:
the default error icon

getDefaultWarningIcon

protected Icon getDefaultWarningIcon()
Returns:
the default warning icon

configureDetailsButton

protected void configureDetailsButton(boolean expanded)

reinit

protected void reinit()
Reconfigures the dialog if settings have changed, such as the errorInfo, errorIcon, warningIcon, etc


getDetailsAsHTML

protected String getDetailsAsHTML(ErrorInfo errorInfo)
Creates and returns HTML representing the details of this incident info. This method is only called if the details needs to be generated: ie: the detailed error message property of the incident info is null.