# Module java.desktop

module java.desktop
Defines the AWT and Swing user interface toolkits, plus APIs for accessibility, audio, imaging, printing, and JavaBeans.

The documentation in this module includes links to external overviews, tutorials, examples, guides, media format specifications, and other similar documentation. These links are meant to be informative to the reader and nothing more. Information at these external resources, no matter the hosting or the author, is not part of Java Platform API specification unless explicitly stated to be so.

Module Graph:
Since:
  9

- ## Packages

  Exports
  Package
  Description
  java.applet
  Provides the classes necessary to create an applet and the classes an applet uses to communicate with its applet context.
  java.awt
  Contains all of the classes for creating user interfaces and for painting graphics and images.
  java.awt.color
  Provides classes for color spaces.
  java.awt.desktop
  Provides interfaces and classes for interaction with various desktop capabilities.
  java.awt.dnd
  Drag and Drop is a direct manipulation gesture found in many Graphical User Interface systems that provides a mechanism to transfer information between two entities logically associated with presentation elements in the GUI.
  java.awt.event
  Provides interfaces and classes for dealing with different types of events fired by AWT components.
  java.awt.font
  Provides classes and interface relating to fonts.
  java.awt.geom
  Provides the Java 2D classes for defining and performing operations on objects related to two-dimensional geometry.
  java.awt.im
  Provides classes and interfaces for the input method framework.
  java.awt.im.spi
  Provides interfaces that enable the development of input methods that can be used with any Java runtime environment.
  java.awt.image
  Provides classes for creating and modifying images.
  java.awt.image.renderable
  Provides classes and interfaces for producing rendering-independent images.
  java.awt.print
  Provides classes and interfaces for a general printing API.
  java.beans
  Contains classes related to developing beans -- components based on the JavaBeans architecture.
  java.beans.beancontext
  Provides classes and interfaces relating to bean context.
  javax.accessibility
  Defines a contract between user-interface components and an assistive technology that provides access to those components.
  javax.imageio
  The main package of the Java Image I/O API.
  javax.imageio.event
  A package of the Java Image I/O API dealing with synchronous notification of events during the reading and writing of images.
  javax.imageio.metadata
  A package of the Java Image I/O API dealing with reading and writing metadata.
  javax.imageio.plugins.bmp
  Package containing the public classes used by the built-in BMP plug-in.
  javax.imageio.plugins.jpeg
  Classes supporting the built-in JPEG plug-in.
  javax.imageio.plugins.tiff
  Public classes used by the built-in TIFF plug-ins.
  javax.imageio.spi
  A package of the Java Image I/O API containing the plug-in interfaces for readers, writers, transcoders, and streams, and a runtime registry.
  javax.imageio.stream
  A package of the Java Image I/O API dealing with low-level I/O from files and streams.
  javax.print
  Provides the principal classes and interfaces for the Java Print Service API.
  javax.print.attribute
  Provides classes and interfaces that describe the types of Java Print Service attributes and how they can be collected into attribute sets.
  javax.print.attribute.standard
  Package `javax.print.attribute.standard` contains classes for specific printing attributes.
  javax.print.event
  Package `javax.print.event` contains event classes and listener interfaces.
  javax.sound.midi
  Provides interfaces and classes for I/O, sequencing, and synthesis of MIDI (Musical Instrument Digital Interface) data.
  javax.sound.midi.spi
  Supplies interfaces for service providers to implement when offering new MIDI devices, MIDI file readers and writers, or sound bank readers.
  javax.sound.sampled
  Provides interfaces and classes for capture, processing, and playback of sampled audio data.
  javax.sound.sampled.spi
  Supplies abstract classes for service providers to subclass when offering new audio devices, sound file readers and writers, or audio format converters.
  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.border
  Provides classes and interface for drawing specialized borders around a Swing component.
  javax.swing.colorchooser
  Contains classes and interfaces used by the `JColorChooser` component.
  javax.swing.event
  Provides for events fired by Swing components.
  javax.swing.filechooser
  Contains classes and interfaces used by the `JFileChooser` component.
  javax.swing.plaf
  Provides one interface and many abstract classes that Swing uses to provide its pluggable look-and-feel capabilities.
  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.
  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.text.html.parser
  Provides the default HTML parser, along with support classes.
  javax.swing.text.rtf
  Provides a class (`RTFEditorKit`) for creating Rich-Text-Format text editors.
  javax.swing.tree
  Provides classes and interfaces for dealing with `javax.swing.JTree`.
  javax.swing.undo
  Allows developers to provide support for undo/redo in applications such as text editors.
  Indirect Exports
  From
  Packages
  java.datatransfer
  java.awt.datatransfer
  java.xml
  javax.xml javax.xml.catalog javax.xml.datatype javax.xml.namespace javax.xml.parsers javax.xml.stream javax.xml.stream.events javax.xml.stream.util javax.xml.transform javax.xml.transform.dom javax.xml.transform.sax javax.xml.transform.stax javax.xml.transform.stream javax.xml.validation javax.xml.xpath org.w3c.dom org.w3c.dom.bootstrap org.w3c.dom.events org.w3c.dom.ls org.w3c.dom.ranges org.w3c.dom.traversal org.w3c.dom.views org.xml.sax org.xml.sax.ext org.xml.sax.helpers

- ## Modules

  Requires
  Modifier
  Module
  Description
  transitive
  java.datatransfer
  Defines the API for transferring data between and within applications.
  transitive
  java.xml
  Defines the Java API for XML Processing (JAXP), the Streaming API for XML (StAX), the Simple API for XML (SAX), and the W3C Document Object Model (DOM) API.

- ## Services

  Uses
  Type
  Description
  AccessibilityProvider
  Service Provider Interface (SPI) for Assistive Technology.
  AudioFileReader
  Provider for audio file reading services.
  AudioFileWriter
  Provider for audio file writing services.
  FormatConversionProvider
  A format conversion provider provides format conversion services from one or more input formats to one or more output formats.
  ImageInputStreamSpi
  The service provider interface (SPI) for `ImageInputStream`s.
  ImageOutputStreamSpi
  The service provider interface (SPI) for `ImageOutputStream`s.
  ImageReaderSpi
  The service provider interface (SPI) for `ImageReader`s.
  ImageTranscoderSpi
  The service provider interface (SPI) for `ImageTranscoder`s.
  ImageWriterSpi
  The service provider interface (SPI) for `ImageWriter`s.
  InputMethodDescriptor
  Defines methods that provide sufficient information about an input method to enable selection and loading of that input method.
  MidiDeviceProvider
  A `MidiDeviceProvider` is a factory or provider for a particular type of MIDI device.
  MidiFileReader
  A `MidiFileReader` supplies MIDI file-reading services.
  MidiFileWriter
  A `MidiFileWriter` supplies MIDI file-writing services.
  MixerProvider
  A provider or factory for a particular mixer type.
  PrintServiceLookup
  Implementations of this class provide lookup services for print services (typically equivalent to printers) of a particular type.
  SoundbankReader
  A `SoundbankReader` supplies soundbank file-reading services.
  StreamPrintServiceFactory
  A `StreamPrintServiceFactory` is the factory for `StreamPrintService` instances, which can print to an output stream in a particular document format described as a mime type.