Package org.jdesktop.swingx
Contains extensions to the Swing GUI toolkit, including new and enhanced
components that provide functionality commonly required by rich,
data-centric client applications. Many of these features will eventually
be incorporated into the Swing toolkit, although API compatibility will
not be guaranteed.
New or Enhanced Functionality
Auto-completion for TextFields and ComboBoxes
For more information, see the AutoComplete documentation.Enhanced Rendering Support for Collection Components
Built-In Search Support for Collection Components and JXEditorPane
Login/Authentication Framework
Painter-Enabled Components
Components that use painters for background rendering alter the functionality of howComponent.setBackground(java.awt.Color)
works.
Setting the background color of a painter-enabled component effectively sets
the background painter to paint the requested color.
Look and Feel implementors should note that setting a
java.swing.plaf.UIResource
to setBackground
will cause a
Painter
UIResource
to be installed. This means that
implementors should set the background before setting the painter as the last
one set wins.
New and Enhanced components
Buttons and Labels
Collection Components
These are sortable/filterable (with the exception of hierarchical components) with consistent and uniform SwingX rendering, highlighting, searching and rollover support.-
Table
uses the enhancedTableHeader
-
List
- rollover and sort/filter functionality is disabled by default -
Tree
-
TreeTable
- a new hierarchical component with support of tabular node properties
Top-level Windows, General and Special Purpose Containers
- Enhanced
Frame
using an extendedRootPane RootPane
to support aStatusBar
-
Dialog
-
Panel
-
ErrorPane
-
LoginPane
- Search components:
FindBar
used for incremental search (similar to FireFox),FindPanel
used in a find dialog, andSearchPanel
used for what was it? - Nested SplitPane
MultiSplitPane
- Vertical collapsing/expansion functionality is provided by a
CollapsiblePane
. A special purpose collapsible is theTaskPane
which typically is used to group buttons/hyperlinks which perform related tasks. A specialTaskPaneContainer
is responsible for the layout of several TaskPanes. - Easily configurable
TipOfTheDay
-
TitledPanel
Miscellaneous Components
- New calendar components: the
DatePicker
allows to select a single Date and aMonthView
showing the overview of one or more months. -
Header
-
TitledSeparator
-
JXColorSelectionButton
-
JXEditorPane
-
JXGradientChooser
-
JXGraph
- Image containers
ImageView
andImagePanel
(PENDING JW: merge/remove one?) -
MultiThumbSlider
External Information Sources
SwingX Twiki Change History SwingLabs User and Developer Discussion Forum-
Interface Summary Interface Description AlphaPaintable An interface to describe an object that is capable of painting with an alpha value.BackgroundPaintable An interface to define the common methods that are required for defining a background painter.JXCollapsiblePane.CollapsiblePaneContainer Tagging interface for containers in a JXCollapsiblePane hierarchy who needs to be revalidated (invalidate/validate/repaint) when the pane is expanding or collapsing.JXLabel.IValue JXLoginPane.NameComponent JXTipOfTheDay.ShowOnStartupChoice Used in conjunction with theJXTipOfTheDay.showDialog(Component, ShowOnStartupChoice)
to save the "Show tips on startup" choice.Mnemonicable An interface that describes an object that is capable of being accessed/used via a mnemonic keystroke. -
Class Summary Class Description AbstractLayoutManager A simple abstract class to handle common layout implementations.AbstractPatternPanel Common base class of ui clients.ForwardingRepaintManager ARepaintManager
that is designed to forward all calls to a contained delegate.HorizontalLayout Organizes components in a horizontal layout.HorizontalLayoutBeanInfo BeanInfo class for HorizontalLayout.JXApplet An applet that usesJXRootPane
as its root container.JXBusyLabel A simple circular animation, useful for denoting an action is taking place that may take an unknown length of time to complete.JXBusyLabelBeanInfo BeanInfo class for JXBusyLabel.JXButton APainter
enabled subclass ofJButton
.JXButtonBeanInfo BeanInfo class for JXButton.JXCollapsiblePane JXCollapsiblePane
provides a component which can collapse or expand its content area with animation and fade in/fade out effects.JXCollapsiblePane.AnimationParams Parameters controlling the animationsJXCollapsiblePaneBeanInfo BeanInfo class for JXCollapsiblePane.JXCollapsiblePaneBeanInfo.DirectionPropertyEditor JXColorSelectionButton A button which allows the user to select a single color.JXComboBox An enhancedJComboBox
that provides the following additional functionality:JXComboBox.ComboBoxAdapter JXDatePicker A component for entering dates with a user interaction similar to a JComboBox.JXDatePickerBeanInfo BeanInfo class for JXDatePicker.JXDialog First cut for enhanced Dialog.JXDialogBeanInfo JXEditorPane JXEditorPane
offers enhanced functionality over the standardJEditorPane
.JXEditorPane.SloppyHTMLEditorKit Handles sloppy HTML.JXEditorPaneBeanInfo JXErrorPane JXErrorPane is a common error component suitable for displaying errors, warnings, and exceptional application behavior to users.JXErrorPaneBeanInfo BeanInfo class for JXErrorPane.JXFindBar A simple low-intrusion default widget for incremental search.JXFindBarBeanInfo BeanInfo class for JXFindBar.JXFindPanel JXFindPanel
is a basic find panel suitable for use in dialogs.JXFindPanelBeanInfo BeanInfo class for JXFindPanel.JXFormattedTextField JFormattedTextField
, with integrated support for prompts and buddies.JXFormattedTextFieldBeanInfo JXFrame JXFrame
is an enhancedJFrame
.JXFrameBeanInfo BeanInfo class for JXFrame.JXFrameBeanInfo.StartPositionPropertyEditor JXGradientChooser A specialized JXPanel that allows the user to construct and choose a Gradient.JXGraph JXGraph
provides a component which can display one or more plots on top of a graduated background (or grid.)JXGraph.DrawablePlot JXGraph.Plot A plot represents a mathematical transformation used byJXGraph
.JXGraphBeanInfo Bean info forJXGraph
component.JXHeader JXHeader is a simple component consisting of a title, a description, and an icon.
JXHeaderBeanInfo BeanInfo class for JXHeader.JXHeaderBeanInfo.IconPositionPropertyEditor JXHyperlink A hyperlink component that derives from JButton to provide compatibility mostly for binding actions enabled/disabled behavior accessibility i18n etc...JXHyperlinkBeanInfo BeanInfo class for JXHyperlink.JXImagePanel Deprecated. (pre-1.6.2) use a JXPanel with an ImagePainter; see Issue 988JXImageView A panel which shows an image centered.JXImageView.ImageTransferable JXImageViewBeanInfo JXLabel AJLabel
subclass which supportsPainter
s, multi-line text, and text rotation.JXLabel.BasicDocument JXLabel.BasicViewFactory JXLabel.MultiLineSupport JXLabel.MultiLineSupport.BasicEditorKit JXLabel.Renderer Root text view that acts as an renderer.JXLabelBeanInfo BeanInfo class for JXLabel.JXList Enhanced List component with support for general SwingX sorting/filtering, rendering, highlighting, rollover and search functionality.JXList.ListAdapter A component adapter targeted at a JXList.JXListBeanInfo JXLoginPane JXLoginPane is a specialized JPanel that implements a Login dialog with support for saving passwords supplied for future use in a secure manner.JXLoginPane.CancelAction Action that cancels the login procedure.JXLoginPane.JXBtnPanel JXLoginPane.JXLoginDialog JXLoginPane.JXLoginFrame JXLoginPane.LoginAction Action that initiates a login procedure.JXLoginPane.NullLoginService Simple login service that allows everybody to login.JXLoginPane.NullPasswordStore Simple PasswordStore that does not remember passwordsJXMonthView Component that displays a month calendar which can be used to select a day or range of days.JXMonthViewBeanInfo Fix for #951-swingx: JXMonthView looks weird in Netbeans form.JXMultiSplitPane All properties in this class are bound: when a properties value is changed, all PropertyChangeListeners are fired.JXMultiSplitPane.DividerPainter Draws a single Divider.JXMultiSplitPaneBeanInfo Bean info forJXMultiSplitPane
component.JXMultiThumbSlider<E> A slider which can have multiple control points or ThumbsJXMultiThumbSlider.ThumbComp JXPanel An extendedJPanel
that provides additional features.JXPanelBeanInfo BeanInfo class for JXPanel.JXPromptBeanInfo JXRadioGroup<T> JXRadioGroup
is a group of radio buttons that functions as a unit.JXRadioGroupBeanInfo JXRootPane Extends the JRootPane by supporting specific placements for a toolbar and a status bar.JXSearchField A text field with a find icon in which the user enters text that identifies items to search for.JXSearchFieldBeanInfo JXSearchPanel JXSearchPanel
provides complex searching features.JXSearchPanelBeanInfo BeanInfo class for JXSearchPanel.JXStatusBar A container forJComponents
that is typically placed at the bottom of a form and runs the entire width of the form.JXStatusBar.Constraint The constraint object to be used with theJXStatusBar
.JXTable Enhanced Table component with support for general SwingX sorting/filtering, rendering, highlighting, rollover and search functionality.JXTable.BooleanEditor The default editor forBoolean
types.JXTable.GenericEditor Default editor registered forObject
.JXTable.NumberEditor Editor forNumber
s.JXTable.TableAdapter JXTableBeanInfo JXTableHeader TableHeader with extended functionality if associated Table is of type JXTable.JXTaskPane JXTaskPane
is a container for tasks and other arbitrary components.JXTaskPaneBeanInfo BeanInfo class for JXTaskPane.JXTaskPaneContainer JXTaskPaneContainer
provides an elegant view to display a list of tasks ordered by groups (JXTaskPane
s).JXTaskPaneContainerBeanInfo BeanInfo class for JXTaskPaneContainer.JXTextArea JTextArea
, with integrated support for prompts.JXTextAreaBeanInfo JXTextField JTextField
, with integrated support for prompts and buddies.JXTextFieldBeanInfo JXTipOfTheDay Provides the "Tip of The Day" pane and dialog.JXTitledPanel A special type of Panel that has a Title section and a Content section.
The following properties can be set with the UIManager to change the look and feel of the JXTitledPanel: JXTitledPanel.titleForeground JXTitledPanel.titleBackground JXTitledPanel.titleFont JXTitledPanel.titlePainter JXTitledPanel.captionInsets JXTitledPanel.rightDecorationInsets JXTitledPanel.leftDecorationInsetsJXTitledPanelBeanInfo BeanInfo class for JXTitledPanel.JXTitledSeparator A simple horizontal separator that contains a title.JXTitledSeparatorBeanInfo BeanInfo class for JXTitledSeparator.JXTree Enhanced Tree component with support for SwingX rendering, highlighting, rollover and search functionality.JXTree.TreeAdapter JXTreeBeanInfo JXTreeTable JXTreeTable
is a specializedtable
consisting of a single column in which to display hierarchical data, and any number of other columns in which to display regular data.JXTreeTable.TreeTableCellRenderer JXTreeTable.TreeTableDataAdapter JXTreeTable.TreeTableModelAdapter JXTreeTableBeanInfo MultiSplitLayout The MultiSplitLayout layout manager recursively arranges its components in row and column groups called "Splits".MultiSplitLayout.ColSplit MultiSplitLayout.Divider Models a single vertical/horiztonal divider.MultiSplitLayout.Leaf Models a java.awt Component child.MultiSplitLayout.Node Base class for the nodes that model a MultiSplitLayout.MultiSplitLayout.RowSplit MultiSplitLayout.Split Defines a vertical or horizontal subdivision into two or more tiles.RepaintManagerX An implementation ofRepaintManager
which adds support for transparency inJXPanel
s.StackLayout StackLayout
is a Swing layout aimed to act as the layers stack of most popuplar graphics editing tools like The GIMP or Photoshop.SwingXUtilities A collection of utility methods for Swing(X) classes.VerticalLayout Organizes components in a vertical layout.VerticalLayoutBeanInfo BeanInfo class for VerticalLayout.WrapLayout FlowLayout subclass that fully supports wrapping of components. -
Enum Summary Enum Description JXCollapsiblePane.Direction The direction defines how the collapsible pane will collapse.JXFrame.StartPosition An enumeration ofJXFrame
starting locations.JXGradientChooser.GradientStyle JXHeader.IconPosition Specifies desired location of the icon relative to the title/description text.JXImagePanel.Style JXLabel.TextAlignment Text alignment enums.JXLoginPane.SaveMode The JXLoginPane can attempt to save certain user information such as the username, password, or both to their respective stores.JXLoginPane.Status Returns the status of the login processJXSearchField.LayoutStyle Defines, how the find and cancel button are layouted.JXSearchField.SearchMode Defines when action events are posted.JXStatusBar.Constraint.ResizeBehavior ScrollableSizeHint Sizing hints for layout, useful f.i. -
Exception Summary Exception Description AbstractLayoutManager A simple abstract class to handle common layout implementations.AbstractPatternPanel Common base class of ui clients.AlphaPaintable An interface to describe an object that is capable of painting with an alpha value.BackgroundPaintable An interface to define the common methods that are required for defining a background painter.ForwardingRepaintManager ARepaintManager
that is designed to forward all calls to a contained delegate.HorizontalLayout Organizes components in a horizontal layout.JXApplet An applet that usesJXRootPane
as its root container.JXBusyLabel A simple circular animation, useful for denoting an action is taking place that may take an unknown length of time to complete.JXButton Aorg.jdesktop.swingx.painter.Painter
enabled subclass ofjavax.swing.JButton
.JXCollapsiblePane JXCollapsiblePane
provides a component which can collapse or expand its content area with animation and fade in/fade out effects.JXColorSelectionButton A button which allows the user to select a single color.JXComboBox An enhancedJComboBox
that provides the following additional functionality:JXDatePicker A component for entering dates with a user interaction similar to a JComboBox.JXDialog First cut for enhanced Dialog.JXEditorPane JXEditorPane
offers enhanced functionality over the standardJEditorPane
.JXErrorPane JXErrorPane is a common error component suitable for displaying errors, warnings, and exceptional application behavior to users.JXFindBar A simple low-intrusion default widget for incremental search.JXFindPanel JXFindPanel
is a basic find panel suitable for use in dialogs.JXFormattedTextField JFormattedTextField
, with integrated support for prompts and buddies.JXFrame JXFrame
is an enhancedJFrame
.JXGradientChooser A specialized JXPanel that allows the user to construct and choose a Gradient.JXGraph JXGraph
provides a component which can display one or more plots on top of a graduated background (or grid.)JXHeader JXHeader is a simple component consisting of a title, a description, and an icon.
JXHyperlink A hyperlink component that derives from JButton to provide compatibility mostly for binding actions enabled/disabled behavior accessibility i18n etc...JXImagePanel A panel that draws an image.JXImageView A panel which shows an image centered.JXLabel Ajavax.swing.JLabel
subclass which supportsorg.jdesktop.swingx.painter.Painter
s, multi-line text, and text rotation.JXList Enhanced List component with support for general SwingX sorting/filtering, rendering, highlighting, rollover and search functionality.JXLoginPane JXLoginPane is a specialized JPanel that implements a Login dialog with support for saving passwords supplied for future use in a secure manner.JXMonthView Component that displays a month calendar which can be used to select a day or range of days.JXMultiSplitPane All properties in this class are bound: when a properties value is changed, all PropertyChangeListeners are fired.JXMultiThumbSlider A slider which can have multiple control points or ThumbsJXPanel An extendedJPanel
that provides additional features.JXRadioGroup JXRadioGroup
is a group of radio buttons that functions as a unit.JXRootPane Extends the JRootPane by supporting specific placements for a toolbar and a status bar.JXSearchField A text field with a find icon in which the user enters text that identifies items to search for.JXSearchPanel JXSearchPanel
provides complex searching features.JXStatusBar A container forJComponents
that is typically placed at the bottom of a form and runs the entire width of the form.JXTable Enhanced Table component with support for general SwingX sorting/filtering, rendering, highlighting, rollover and search functionality.JXTableHeader TableHeader with extended functionality if associated Table is of type JXTable.JXTaskPane JXTaskPane
is a container for tasks and other arbitrary components.JXTaskPaneContainer JXTaskPaneContainer
provides an elegant view to display a list of tasks ordered by groups (org.jdesktop.swingx.JXTaskPane
s).JXTextArea JTextArea
, with integrated support for prompts.JXTextField JTextField
, with integrated support for prompts and buddies.JXTipOfTheDay Provides the "Tip of The Day" pane and dialog.JXTitledPanel A special type of Panel that has a Title section and a Content section.
The following properties can be set with the UIManager to change the look and feel of the JXTitledPanel: JXTitledPanel.titleForeground JXTitledPanel.titleBackground JXTitledPanel.titleFont JXTitledPanel.titlePainter JXTitledPanel.captionInsets JXTitledPanel.rightDecorationInsets JXTitledPanel.leftDecorationInsetsJXTitledSeparator A simple horizontal separator that contains a title.JXTree Enhanced Tree component with support for SwingX rendering, highlighting, rollover and search functionality.JXTreeTable JXTreeTable
is a specializedtable
consisting of a single column in which to display hierarchical data, and any number of other columns in which to display regular data.Mnemonicable An interface that describes an object that is capable of being accessed/used via a mnemonic keystroke.MultiSplitLayout The MultiSplitLayout layout manager recursively arranges its components in row and column groups called "Splits".MultiSplitLayout.InvalidLayoutException The specified Node is either the wrong type or was configured incorrectly.RepaintManagerX An implementation ofRepaintManager
which adds support for transparency inJXPanel
s.ScrollableSizeHint Sizing hints for layout, useful f.i.StackLayout StackLayout
is a Swing layout aimed to act as the layers stack of most popuplar graphics editing tools like The GIMP or Photoshop.SwingXUtilities A collection of utility methods for Swing(X) classes.TranslucentRepaintManager An annotation that can be applied to ajavax.swing.RepaintManager
to suggest that theRepaintManager
supports translucency.VerticalLayout Organizes components in a vertical layout.WrapLayout FlowLayout subclass that fully supports wrapping of components. -
Annotation Types Summary Annotation Type Description TranslucentRepaintManager An annotation that can be applied to aRepaintManager
to suggest that theRepaintManager
supports translucency.