## Uses of Interface
javax.swing.SwingConstants

- Packages that use SwingConstants
  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.synth | Synth is a skinnable look and feel in which all painting is delegated.
  javax.swing.table | Provides classes and interfaces for dealing with `javax.swing.JTable`.
  javax.swing.text | Provides classes and interfaces that deal with editable and noneditable text components.
  javax.swing.text.html | Provides the class `HTMLEditorKit` and supporting classes for creating HTML text editors.
  javax.swing.tree | Provides classes and interfaces for dealing with `javax.swing.JTree`.

- - ### Uses of SwingConstants in javax.swing

    Classes in javax.swing that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractButton` | Defines common behaviors for buttons and menu items.
    `class` | `DefaultListCellRenderer` | Renders an item in a list.
    `static class` | `DefaultListCellRenderer.UIResource` | A subclass of DefaultListCellRenderer that implements UIResource.
    `class` | `JButton` | An implementation of a "push" button.
    `class` | `JCheckBox` | An implementation of a check box -- an item that can be selected or deselected, and which displays its state to the user.
    `class` | `JCheckBoxMenuItem` | A menu item that can be selected or deselected.
    `class` | `JFormattedTextField` | `JFormattedTextField` extends `JTextField` adding support for formatting arbitrary values, as well as retrieving a particular object once the user has edited the text.
    `class` | `JLabel` | A display area for a short text string or an image, or both.
    `class` | `JMenu` | An implementation of a menu -- a popup window containing `JMenuItem`s that is displayed when the user selects an item on the `JMenuBar`.
    `class` | `JMenuItem` | An implementation of an item in a menu.
    `class` | `JPasswordField` | `JPasswordField` is a lightweight component that allows the editing of a single line of text where the view indicates something was typed, but does not show the original characters.
    `static class` | `JPopupMenu.Separator` | A popup menu-specific separator.
    `class` | `JProgressBar` | A component that visually displays the progress of some task.
    `class` | `JRadioButton` | An implementation of a radio button -- an item that can be selected or deselected, and which displays its state to the user.
    `class` | `JRadioButtonMenuItem` | An implementation of a radio button menu item.
    `class` | `JSeparator` | `JSeparator` provides a general purpose component for implementing divider lines - most commonly used as a divider between menu items that breaks them up into logical groupings.
    `class` | `JSlider` | A component that lets the user graphically select a value by sliding a knob within a bounded interval.
    `class` | `JTabbedPane` | A component that lets the user switch between a group of components by clicking on a tab with a given title and/or icon.
    `class` | `JTextField` | `JTextField` is a lightweight component that allows the editing of a single line of text.
    `class` | `JToggleButton` | An implementation of a two-state button.
    `class` | `JToolBar` | `JToolBar` provides a component that is useful for displaying commonly used `Action`s or controls.
    `static class` | `JToolBar.Separator` | A toolbar-specific separator.
    `class` | `SwingUtilities` | A collection of utility methods for Swing.

  - ### Uses of SwingConstants in javax.swing.plaf.basic

    Classes in javax.swing.plaf.basic that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BasicArrowButton` | JButton object that draws a scaled Arrow in one of the cardinal directions.
    `class` | `BasicComboBoxRenderer` | ComboBox renderer
    `static class` | `BasicComboBoxRenderer.UIResource` | A subclass of BasicComboBoxRenderer that implements UIResource.
    `protected class` | `BasicInternalFrameUI.BorderListener` | Listens for border adjustments.
    `class` | `BasicScrollBarUI` | Implementation of ScrollBarUI for the Basic Look and Feel
    `class` | `BasicTabbedPaneUI` | A Basic L&F implementation of TabbedPaneUI.
    `class` | `BasicToolBarUI` | A Basic L&F implementation of ToolBarUI.

  - ### Uses of SwingConstants in javax.swing.plaf.metal

    Classes in javax.swing.plaf.metal that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `MetalBorders.ToolBarBorder` | The class represents the border of a `JToolBar`.
    `class` | `MetalComboBoxButton` | JButton subclass to help out MetalComboBoxUI
    `protected class` | `MetalFileChooserUI.FileRenderer` | Deprecated. As of JDK version 9.
    `class` | `MetalFileChooserUI.FilterComboBoxRenderer` | Render different type sizes and styles.
    `class` | `MetalScrollBarUI` | Implementation of ScrollBarUI for the Metal Look and Feel
    `class` | `MetalScrollButton` | JButton object for Metal scrollbar arrows.
    `class` | `MetalTabbedPaneUI` | The Metal subclass of BasicTabbedPaneUI.
    `class` | `MetalToolBarUI` | A Metal Look and Feel implementation of ToolBarUI.

  - ### Uses of SwingConstants in javax.swing.plaf.synth

    Classes in javax.swing.plaf.synth that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SynthScrollBarUI` | Provides the Synth L&F UI delegate for `JScrollBar`.
    `class` | `SynthTabbedPaneUI` | Provides the Synth L&F UI delegate for `JTabbedPane`.
    `class` | `SynthToolBarUI` | Provides the Synth L&F UI delegate for `JToolBar`.

  - ### Uses of SwingConstants in javax.swing.table

    Classes in javax.swing.table that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DefaultTableCellRenderer` | The standard class for rendering (displaying) individual cells in a `JTable`.
    `static class` | `DefaultTableCellRenderer.UIResource` | A subclass of `DefaultTableCellRenderer` that implements `UIResource`.

  - ### Uses of SwingConstants in javax.swing.text

    Classes in javax.swing.text that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AsyncBoxView` | A box that does layout asynchronously.
    `class` | `BoxView` | A view that arranges its children into a box shape by tiling its children along an axis.
    `class` | `ComponentView` | Component decorator that implements the view interface.
    `class` | `CompositeView` | `CompositeView` is an abstract `View` implementation which manages one or more child views.
    `class` | `FieldView` | Extends the multi-line plain text view to be suitable for a single-line editor view.
    `class` | `FlowView` | A View that tries to flow it's children into some partially constrained space.
    `class` | `GlyphView` | A GlyphView is a styled chunk of text that represents a view mapped over an element in the text model.
    `class` | `IconView` | Icon decorator that implements the view interface.
    `class` | `LabelView` | A `LabelView` is a styled chunk of text that represents a view mapped over an element in the text model.
    `class` | `ParagraphView` | View of a simple line-wrapping paragraph that supports multiple fonts, colors, components, icons, etc.
    `class` | `PasswordView` | Implements a View suitable for use in JPasswordField UI implementations.
    `class` | `PlainView` | Implements View interface for a simple multi-line text view that has text in one font and color.
    `class` | `TableView` | Implements View interface for a table, that is composed of an element structure where the child elements of the element this view is responsible for represent rows and the child elements of the row elements are cells.
    `class` | `TableView.TableCell` | Deprecated. A table cell can now be any View implementation.
    `class` | `TableView.TableRow` | View of a row in a row-centric table.
    `class` | `View` | A very important part of the text package is the `View` class.
    `class` | `WrappedPlainView` | View of plain text (text with only one font and color) that does line-wrapping.
    `class` | `ZoneView` | ZoneView is a View implementation that creates zones for which the child views are not created or stored until they are needed for display or model/view translations.

  - ### Uses of SwingConstants in javax.swing.text.html

    Classes in javax.swing.text.html that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BlockView` | A view implementation to display a block (as a box) with CSS specifications.
    `class` | `FormView` | Component decorator that implements the view interface for form elements, <input>, <textarea>, and <select>.
    `class` | `ImageView` | View of an Image, intended to support the HTML <IMG> tag.
    `class` | `InlineView` | Displays the inline element styles based upon css attributes.
    `class` | `ListView` | A view implementation to display an html list
    `class` | `ObjectView` | Component decorator that implements the view interface for <object> elements.
    `class` | `ParagraphView` | Displays the a paragraph, and uses css attributes for its configuration.

  - ### Uses of SwingConstants in javax.swing.tree

    Classes in javax.swing.tree that implement SwingConstants
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DefaultTreeCellEditor.DefaultTextField` | `TextField` used when no editor is supplied.
    `class` | `DefaultTreeCellRenderer` | Displays an entry in a tree.