# Package javax.swing.plaf

package javax.swing.plaf
Provides one interface and many abstract classes that Swing uses to provide its pluggable look-and-feel capabilities. Its classes are subclassed and implemented by look and feel UIs such as Basic and the Java look and feel (Metal). This package is only used by developers who cannot create a new look and feel by subclassing existing look-and-feel components (such as those provided by the `javax.swing.plaf.basic` and `javax.swing.plaf.metal` packages).

Note: Most of the Swing API is not thread safe. For details, see Concurrency in Swing, a section in The Java Tutorial.

Since:
  1.2

- Related Packages
  Package
  Description
  javax.swing
  Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
  javax.swing.plaf.basic
  Provides user interface objects built according to the Basic look and feel.
  javax.swing.plaf.metal
  Provides user interface objects built according to the Java look and feel (once codenamed Metal), which is the default look and feel.
  javax.swing.plaf.multi
  Provides user interface objects that combine two or more look and feels.
  javax.swing.plaf.nimbus
  Provides user interface objects built according to the cross-platform Nimbus look and feel.
  javax.swing.plaf.synth
  Synth is a skinnable look and feel in which all painting is delegated.
- Class
  Description
  ActionMapUIResource
  A subclass of javax.swing.ActionMap that implements UIResource.
  BorderUIResource
  A Border wrapper class which implements UIResource.
  BorderUIResource.BevelBorderUIResource
  A bevel border UI resource.
  BorderUIResource.CompoundBorderUIResource
  A compound border UI resource.
  BorderUIResource.EmptyBorderUIResource
  An empty border UI resource.
  BorderUIResource.EtchedBorderUIResource
  An etched border UI resource.
  BorderUIResource.LineBorderUIResource
  A line border UI resource.
  BorderUIResource.MatteBorderUIResource
  A matte border UI resource.
  BorderUIResource.TitledBorderUIResource
  A titled border UI resource.
  ButtonUI
  Pluggable look and feel interface for JButton.
  ColorChooserUI
  Pluggable look and feel interface for JColorChooser.
  ColorUIResource
  A subclass of Color that implements UIResource.
  ComboBoxUI
  Pluggable look and feel interface for JComboBox.
  ComponentInputMapUIResource
  A subclass of javax.swing.ComponentInputMap that implements UIResource.
  ComponentUI
  The base class for all UI delegate objects in the Swing pluggable look and feel architecture.
  DesktopIconUI
  Pluggable look and feel interface for JDesktopIcon.
  DesktopPaneUI
  Pluggable look and feel interface for JDesktopPane.
  DimensionUIResource
  A subclass of `Dimension` that implements `UIResource`.
  FileChooserUI
  Pluggable look and feel interface for `JFileChooser`.
  FontUIResource
  A subclass of java.awt.Font that implements UIResource.
  IconUIResource
  An Icon wrapper class which implements UIResource.
  InputMapUIResource
  A subclass of javax.swing.InputMap that implements UIResource.
  InsetsUIResource
  A subclass of Insets that implements UIResource.
  InternalFrameUI
  Pluggable look and feel interface for JInternalFrame.
  LabelUI
  Pluggable look and feel interface for JLabel.
  LayerUI<V extends Component>
  The base class for all `JLayer`'s UI delegates.
  ListUI
  The `JList` pluggable look and feel delegate.
  MenuBarUI
  Pluggable look and feel interface for JMenuBar.
  MenuItemUI
  Pluggable look and feel interface for JMenuItem.
  OptionPaneUI
  Pluggable look and feel interface for JOptionPane.
  PanelUI
  Pluggable look and feel interface for Panel.
  PopupMenuUI
  Pluggable look and feel interface for JPopupMenu.
  ProgressBarUI
  Pluggable look and feel interface for JProgressBar.
  RootPaneUI
  Pluggable look and feel interface for JRootPane.
  ScrollBarUI
  Pluggable look and feel interface for JScrollBar.
  ScrollPaneUI
  Pluggable look and feel interface for JScrollPane.
  SeparatorUI
  Pluggable look and feel interface for JSeparator.
  SliderUI
  Pluggable look and feel interface for JSlider.
  SpinnerUI
  Pluggable look and feel interface for JSpinner
  SplitPaneUI
  Pluggable look and feel interface for JSplitPane.
  TabbedPaneUI
  Pluggable look and feel interface for JTabbedPane.
  TableHeaderUI
  Pluggable look and feel interface for JTableHeader.
  TableUI
  Pluggable look and feel interface for JTable.
  TextUI
  Text editor user interface
  ToolBarUI
  Pluggable look and feel interface for JToolBar.
  ToolTipUI
  Pluggable look and feel interface for JToolTip.
  TreeUI
  Pluggable look and feel interface for JTree.
  UIResource
  This interface is used to mark objects created by ComponentUI delegates.
  ViewportUI
  Pluggable look and feel interface for JViewport.