Package org.jdesktop.swingx.plaf.basic
Class BasicErrorPaneUI
java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.PanelUI
org.jdesktop.swingx.plaf.ErrorPaneUI
org.jdesktop.swingx.plaf.basic.BasicErrorPaneUI
- Direct Known Subclasses:
MacOSXErrorPaneUI
Base implementation of the
JXErrorPane
UI.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class
Default action for closing the JXErrorPane's enclosing window (JDialog, JFrame, or JInternalFrame)private final class
Listener for Details click events.private static final class
Returns the text as non-HTML in a COPY operation, and disabled CUT/PASTE operations for the Details pane.private static final class
This is a button that maintains the size of the largest button in the button group by returning the largest size from the getPreferredSize method.private final class
Lays out the BasicErrorPaneUI components.private final class
private final class
private final class
private final class
private final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final String
Used as a prefix when pulling data out of UIManager for i18nprotected JButton
ok/close buttonprivate int
The height of the window when collapsed.protected JButton
protected ActionListener
Action listener for the copy to clipboard button.protected AbstractButton
detail buttonprotected ActionListener
Action listener for the detail button.protected JXEditorPane
details text areaprotected JPanel
details panelprotected JScrollPane
protected JEditorPane
Error message text areaprotected PropertyChangeListener
Property change listener for the error pane ensures that the pane's UI is reinitialized.protected JScrollPane
Error message text scroll pane wrapper.private int
The height of the window when last expanded.protected JLabel
label used to display the warning/error iconprotected JXErrorPane
The error pane this UI is forprotected AbstractButton
report an error button -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionCalculates default prefered size for JXErrorPane on given platform/LAF.private static void
centerWindow
(Window w, Component owner) private static void
centerWindow
(JInternalFrame w, Component owner) protected void
configureDetailsButton
(boolean expanded) protected void
configureReportAction
(AbstractActionExt reportAction) protected LayoutManager
private TransferHandler
createDetailsTransferHandler
(JTextComponent detailComponent) Creates and returns a TransferHandler which can be used to copy the details from the details component.protected LayoutManager
Create and return the LayoutManager to use with the error pane.static ComponentUI
private static String
Converts the incoming string to an escaped output string.private void
protected Icon
protected Icon
protected String
getDetailsAsHTML
(ErrorInfo errorInfo) Creates and returns HTML representing the details of this incident info.protected int
getErrorDialog
(Component owner) Creates new ErrorPane wrapped in the dialog window centered at provided owner component.getErrorFrame
(Component owner) Creates new ErrorPane wrapped in the frame window centered at provided owner component.getErrorInternalFrame
(Component owner) Creates new ErrorPane wrapped in the internal frame window centered at provided owner component.private void
initWindow
(Window w, JXErrorPane pane) Utility method for initializing a Window for displaying a JXErrorPane.protected void
Creates and initializes the components which make up the aggregate combo box.protected void
Installs the default colors, and default font into the Error Paneprotected void
Create and install the listeners for the Error Pane.void
protected void
reinit()
Reconfigures the dialog if settings have changed, such as the errorInfo, errorIcon, warningIcon, etcprivate void
setDetails
(String details) Set the details section of the error dialog.private void
setDetailsVisible
(boolean b) Set the details section to be either visible or invisible.private void
setErrorMessage
(String errorMessage) Set the error message for the dialog boxprotected void
The aggregate components which compise the combo box are unregistered and uninitialized.protected void
Uninstalls the default colors, and default font into the Error Pane.protected void
Remove the installed listeners from the Error Pane.void
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, paint, update
-
Field Details
-
CLASS_NAME
Used as a prefix when pulling data out of UIManager for i18n- See Also:
-
pane
The error pane this UI is for -
errorMessage
Error message text area -
errorScrollPane
Error message text scroll pane wrapper. -
details
details text area -
detailButton
detail button -
closeButton
ok/close button -
iconLabel
label used to display the warning/error icon -
reportButton
report an error button -
detailsPanel
details panel -
detailsScrollPane
-
copyToClipboardButton
-
errorPaneListener
Property change listener for the error pane ensures that the pane's UI is reinitialized. -
detailListener
Action listener for the detail button. -
copyToClipboardListener
Action listener for the copy to clipboard button. -
collapsedHeight
private int collapsedHeightThe height of the window when collapsed. This value is stashed when the dialog is expanded -
expandedHeight
private int expandedHeightThe height of the window when last expanded. This value is stashed when the dialog is collapsed
-
-
Constructor Details
-
BasicErrorPaneUI
public BasicErrorPaneUI()
-
-
Method Details
-
createUI
-
installUI
- Overrides:
installUI
in classComponentUI
-
uninstallUI
- Overrides:
uninstallUI
in classComponentUI
-
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 ininstallListeners
-
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
Description copied from class:ErrorPaneUI
Creates new ErrorPane wrapped in the frame window centered at provided owner component.- Specified by:
getErrorFrame
in classErrorPaneUI
- Parameters:
owner
- component to center created error frame at.- Returns:
- New ErrorPane instance wrapped in JFrame.
-
getErrorDialog
Description copied from class:ErrorPaneUI
Creates new ErrorPane wrapped in the dialog window centered at provided owner component.- Specified by:
getErrorDialog
in classErrorPaneUI
- Parameters:
owner
- component to center created error dialog at.- Returns:
- New ErrorPane instance wrapped in JDialog.
-
getErrorInternalFrame
Description copied from class:ErrorPaneUI
Creates new ErrorPane wrapped in the internal frame window centered at provided owner component.- Specified by:
getErrorInternalFrame
in classErrorPaneUI
- Parameters:
owner
- component to center created error frame at.- Returns:
- New ErrorPane instance wrapped in JInternalFrame.
-
createErrorPaneLayout
Create and return the LayoutManager to use with the error pane. -
createDetailPanelLayout
-
calculatePreferredSize
Description copied from class:ErrorPaneUI
Calculates default prefered size for JXErrorPane on given platform/LAF.- Specified by:
calculatePreferredSize
in classErrorPaneUI
- Returns:
- Preferred size.
-
getDetailsHeight
protected int getDetailsHeight() -
configureReportAction
-
createDetailsTransferHandler
Creates and returns a TransferHandler which can be used to copy the details from the details component. It also disallows pasting into the component, or cutting from the component.- Returns:
- a TransferHandler for the details area
-
getDefaultErrorIcon
- Returns:
- the default error icon
-
getDefaultWarningIcon
- Returns:
- the default warning icon
-
setDetails
Set the details section of the error dialog. If the details are either null or an empty string, then hide the details button and hide the detail scroll pane. Otherwise, just set the details section.- Parameters:
details
- Details to be shown in the detail section of the dialog. This can be null if you do not want to display the details section of the dialog.
-
configureDetailsButton
protected void configureDetailsButton(boolean expanded) -
setDetailsVisible
private void setDetailsVisible(boolean b) Set the details section to be either visible or invisible. Set the text of the Details button accordingly.- Parameters:
b
- if true details section will be visible
-
setErrorMessage
Set the error message for the dialog box- Parameters:
errorMessage
- Message for the error dialog
-
reinit
protected void reinit()Reconfigures the dialog if settings have changed, such as the errorInfo, errorIcon, warningIcon, etc -
getDetailsAsHTML
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. -
initWindow
Utility method for initializing a Window for displaying a JXErrorPane. This is particularly useful because the differences between JFrame and JDialog are so minor. removed. -
exitIfFatal
private void exitIfFatal() -
centerWindow
-
centerWindow
-
escapeXml
Converts the incoming string to an escaped output string. This method is far from perfect, only escaping <, > and & characters
-