## Uses of Interface
javax.swing.text.Document

- Packages that use Document
  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.event | Provides for events fired by Swing components.
  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.rtf | Provides a class (`RTFEditorKit`) for creating Rich-Text-Format text editors.

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

    Methods in javax.swing that return Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected Document` | JTextArea.`createDefaultModel()` | Creates the default implementation of the model to be used at construction if one isn't explicitly given.
    `protected Document` | JTextField.`createDefaultModel()` | Creates the default implementation of the model to be used at construction if one isn't explicitly given.

    Methods in javax.swing with parameters of type Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | JFormattedTextField.`setDocument​(Document doc)` | Associates the editor with a text document.
    `void` | JTextField.`setDocument​(Document doc)` | Associates the editor with a text document.
    `void` | JTextPane.`setDocument​(Document doc)` | Associates the editor with a text document.

    Constructors in javax.swing with parameters of type Document
    Constructor | Description
    --- | ---
    `JPasswordField​(Document doc, String txt, int columns)` | Constructs a new `JPasswordField` that uses the given text storage model and the given number of columns.
    `JTextArea​(Document doc)` | Constructs a new JTextArea with the given document model, and defaults for all of the other arguments (null, 0, 0).
    `JTextArea​(Document doc, String text, int rows, int columns)` | Constructs a new JTextArea with the specified number of rows and columns, and the given model.
    `JTextField​(Document doc, String text, int columns)` | Constructs a new `JTextField` that uses the given text storage model and the given number of columns.

  - ### Uses of Document in javax.swing.event

    Methods in javax.swing.event that return Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `Document` | DocumentEvent.`getDocument()` | Gets the document that sourced the change event.

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

    Subinterfaces of Document in javax.swing.text
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `StyledDocument` | Interface for a generic styled document.

    Classes in javax.swing.text that implement Document
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AbstractDocument` | An implementation of the document interface to serve as a basis for implementing various kinds of documents.
    `class` | `DefaultStyledDocument` | A document that can be marked up with character and paragraph styles in a manner similar to the Rich Text Format.
    `class` | `PlainDocument` | A plain document that maintains no character attributes.

    Methods in javax.swing.text that return Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `Document` | DefaultEditorKit.`createDefaultDocument()` | Creates an uninitialized text storage model (PlainDocument) that is appropriate for this type of editor.
    `abstract Document` | EditorKit.`createDefaultDocument()` | Creates an uninitialized text storage model that is appropriate for this type of editor.
    `Document` | StyledEditorKit.`createDefaultDocument()` | Creates an uninitialized text storage model that is appropriate for this type of editor.
    `Document` | AbstractDocument.AbstractElement.`getDocument()` | Retrieves the underlying model.
    `Document` | AbstractDocument.DefaultDocumentEvent.`getDocument()` | Gets the document that sourced the change event.
    `protected Document` | AbstractWriter.`getDocument()` | Fetches the document.
    `abstract Document` | DocumentFilter.FilterBypass.`getDocument()` | Returns the Document the mutation is occurring on.
    `Document` | Element.`getDocument()` | Fetches the document associated with this element.
    `Document` | JTextComponent.`getDocument()` | Fetches the model associated with the editor.
    `Document` | View.`getDocument()` | Fetches the model associated with the view.

    Methods in javax.swing.text with parameters of type Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | DefaultEditorKit.`read​(InputStream in, Document doc, int pos)` | Inserts content from the given stream which is expected to be in a format appropriate for this kind of content handler.
    `void` | DefaultEditorKit.`read​(Reader in, Document doc, int pos)` | Inserts content from the given stream, which will be treated as plain text.
    `abstract void` | EditorKit.`read​(InputStream in, Document doc, int pos)` | Inserts content from the given stream which is expected to be in a format appropriate for this kind of content handler.
    `abstract void` | EditorKit.`read​(Reader in, Document doc, int pos)` | Inserts content from the given stream which is expected to be in a format appropriate for this kind of content handler.
    `void` | JTextComponent.`setDocument​(Document doc)` | Associates the editor with a text document.
    `void` | DefaultEditorKit.`write​(OutputStream out, Document doc, int pos, int len)` | Writes content from a document to the given stream in a format appropriate for this kind of content handler.
    `void` | DefaultEditorKit.`write​(Writer out, Document doc, int pos, int len)` | Writes content from a document to the given stream as plain text.
    `abstract void` | EditorKit.`write​(OutputStream out, Document doc, int pos, int len)` | Writes content from a document to the given stream in a format appropriate for this kind of content handler.
    `abstract void` | EditorKit.`write​(Writer out, Document doc, int pos, int len)` | Writes content from a document to the given stream in a format appropriate for this kind of content handler.

    Constructors in javax.swing.text with parameters of type Document
    Constructor | Description
    --- | ---
    `AbstractWriter​(Writer w, Document doc)` | Creates a new AbstractWriter.
    `AbstractWriter​(Writer w, Document doc, int pos, int len)` | Creates a new AbstractWriter.
    `ElementIterator​(Document document)` | Creates a new ElementIterator.

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

    Classes in javax.swing.text.html that implement Document
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `HTMLDocument` | A document that models HTML.

    Methods in javax.swing.text.html that return Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `Document` | HTMLEditorKit.`createDefaultDocument()` | Create an uninitialized text storage model that is appropriate for this type of editor.

    Methods in javax.swing.text.html with parameters of type Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | HTMLEditorKit.`read​(Reader in, Document doc, int pos)` | Inserts content from the given stream.
    `void` | HTMLEditorKit.`write​(Writer out, Document doc, int pos, int len)` | Write content from a document to the given stream in a format appropriate for this kind of content handler.

  - ### Uses of Document in javax.swing.text.rtf

    Methods in javax.swing.text.rtf with parameters of type Document
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | RTFEditorKit.`read​(InputStream in, Document doc, int pos)` | Insert content from the given stream which is expected to be in a format appropriate for this kind of content handler.
    `void` | RTFEditorKit.`read​(Reader in, Document doc, int pos)` | Insert content from the given stream, which will be treated as plain text.
    `void` | RTFEditorKit.`write​(OutputStream out, Document doc, int pos, int len)` | Write content from a document to the given stream in a format appropriate for this kind of content handler.
    `void` | RTFEditorKit.`write​(Writer out, Document doc, int pos, int len)` | Write content from a document to the given stream as plain text.