AppConsole.ConsoleDocument
Date: 2019-10-22

org.openscience.jmol.app.jmolpanel.console

## Class AppConsole.ConsoleDocument

- java.lang.Object
- - javax.swing.text.AbstractDocument
  - - javax.swing.text.DefaultStyledDocument
    - - org.openscience.jmol.app.jmolpanel.console.AppConsole.ConsoleDocument

- All Implemented Interfaces:
    java.io.Serializable, javax.swing.text.Document, javax.swing.text.StyledDocument
  Enclosing class:
    AppConsole

      class AppConsole.ConsoleDocument
      extends javax.swing.text.DefaultStyledDocument

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class javax.swing.text.DefaultStyledDocument

      `javax.swing.text.DefaultStyledDocument.AttributeUndoableEdit, javax.swing.text.DefaultStyledDocument.ElementBuffer, javax.swing.text.DefaultStyledDocument.ElementSpec, javax.swing.text.DefaultStyledDocument.SectionElement`

    - ### Nested classes/interfaces inherited from class javax.swing.text.AbstractDocument

      `javax.swing.text.AbstractDocument.AbstractElement, javax.swing.text.AbstractDocument.AttributeContext, javax.swing.text.AbstractDocument.BranchElement, javax.swing.text.AbstractDocument.Content, javax.swing.text.AbstractDocument.DefaultDocumentEvent, javax.swing.text.AbstractDocument.ElementEdit, javax.swing.text.AbstractDocument.LeafElement`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `(package private) javax.swing.text.SimpleAttributeSet` | `attEcho`
    `(package private) javax.swing.text.SimpleAttributeSet` | `attError`
    `(package private) javax.swing.text.SimpleAttributeSet` | `attPrompt`
    `(package private) javax.swing.text.SimpleAttributeSet` | `attStatus`
    `(package private) javax.swing.text.SimpleAttributeSet` | `attUserInput`
    `private AppConsole.ConsoleTextPane` | `consoleTextPane`
    `private int` | `offsetAfterPrompt`
    `private javax.swing.text.Position` | `positionAfterPrompt`
    `private javax.swing.text.Position` | `positionBeforePrompt`

    - ### Fields inherited from class javax.swing.text.DefaultStyledDocument

      `buffer, BUFFER_SIZE_DEFAULT`

    - ### Fields inherited from class javax.swing.text.AbstractDocument

      `BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName`

    - ### Fields inherited from interface javax.swing.text.Document

      `StreamDescriptionProperty, TitleProperty`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ConsoleDocument()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `(package private) void` | `appendNewline()`
    `(package private) void` | `clearContent()` Removes all content of the script window, and add a new prompt.
    `(package private) void` | `colorCommand(javax.swing.text.SimpleAttributeSet att)`
    `(package private) java.lang.String` | `getCommandString()`
    `void` | `insertString(int offs, java.lang.String str, javax.swing.text.AttributeSet a)`
    `(package private) boolean` | `isAtEnd()`
    `(package private) void` | `outputBeforePrompt(java.lang.String str, javax.swing.text.SimpleAttributeSet attribute)`
    `(package private) void` | `outputEcho(java.lang.String strEcho)`
    `(package private) void` | `outputError(java.lang.String strError)`
    `(package private) void` | `outputErrorForeground(java.lang.String strError)`
    `(package private) void` | `outputStatus(java.lang.String strStatus)`
    `void` | `remove(int offs, int len)`
    `void` | `replace(int offs, int length, java.lang.String str, javax.swing.text.AttributeSet attrs)`
    `(package private) void` | `replaceCommand(java.lang.String newCommand, boolean isError)` Replaces current command on script.
    `(package private) void` | `setConsoleTextPane(AppConsole.ConsoleTextPane consoleTextPane)`
    `(package private) void` | `setNoPrompt()`
    `(package private) void` | `setOffsetPositions()`
    `(package private) void` | `setPrompt()`

    - ### Methods inherited from class javax.swing.text.DefaultStyledDocument

      `addDocumentListener, addStyle, create, createDefaultRoot, getBackground, getCharacterElement, getDefaultRootElement, getFont, getForeground, getLogicalStyle, getParagraphElement, getStyle, getStyleNames, insert, insertUpdate, removeDocumentListener, removeElement, removeStyle, removeUpdate, setCharacterAttributes, setLogicalStyle, setParagraphAttributes, styleChanged`

    - ### Methods inherited from class javax.swing.text.AbstractDocument

      `addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, postRemoveUpdate, putProperty, readLock, readUnlock, removeUndoableEditListener, render, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface javax.swing.text.Document

      `addUndoableEditListener, createPosition, getEndPosition, getLength, getProperty, getRootElements, getStartPosition, getText, getText, putProperty, removeUndoableEditListener, render`

- - ### Field Detail

    - #### consoleTextPane

          private AppConsole.ConsoleTextPane consoleTextPane

    - #### attError

          javax.swing.text.SimpleAttributeSet attError

    - #### attEcho

          javax.swing.text.SimpleAttributeSet attEcho

    - #### attPrompt

          javax.swing.text.SimpleAttributeSet attPrompt

    - #### attUserInput

          javax.swing.text.SimpleAttributeSet attUserInput

    - #### attStatus

          javax.swing.text.SimpleAttributeSet attStatus

    - #### positionBeforePrompt

          private javax.swing.text.Position positionBeforePrompt

    - #### positionAfterPrompt

          private javax.swing.text.Position positionAfterPrompt

    - #### offsetAfterPrompt

          private int offsetAfterPrompt

  - ### Constructor Detail

    - #### ConsoleDocument

          ConsoleDocument()

  - ### Method Detail

    - #### setConsoleTextPane

          void setConsoleTextPane(AppConsole.ConsoleTextPane consoleTextPane)

    - #### isAtEnd

          boolean isAtEnd()

    - #### clearContent

          void clearContent()

      Removes all content of the script window, and add a new prompt.

    - #### setPrompt

          void setPrompt()

    - #### setOffsetPositions

          void setOffsetPositions()

    - #### setNoPrompt

          void setNoPrompt()

    - #### outputBeforePrompt

          void outputBeforePrompt(java.lang.String str,
                                  javax.swing.text.SimpleAttributeSet attribute)

    - #### outputError

          void outputError(java.lang.String strError)

    - #### outputErrorForeground

          void outputErrorForeground(java.lang.String strError)

    - #### outputEcho

          void outputEcho(java.lang.String strEcho)

    - #### outputStatus

          void outputStatus(java.lang.String strStatus)

    - #### appendNewline

          void appendNewline()

    - #### insertString

          public void insertString(int offs,
                                   java.lang.String str,
                                   javax.swing.text.AttributeSet a)
                            throws javax.swing.text.BadLocationException

      Specified by:
        `insertString` in interface `javax.swing.text.Document`
      Overrides:
        `insertString` in class `javax.swing.text.AbstractDocument`
      Throws:
        `javax.swing.text.BadLocationException`

    - #### getCommandString

          java.lang.String getCommandString()

    - #### remove

          public void remove(int offs,
                             int len)
                      throws javax.swing.text.BadLocationException

      Specified by:
        `remove` in interface `javax.swing.text.Document`
      Overrides:
        `remove` in class `javax.swing.text.AbstractDocument`
      Throws:
        `javax.swing.text.BadLocationException`

    - #### replace

          public void replace(int offs,
                              int length,
                              java.lang.String str,
                              javax.swing.text.AttributeSet attrs)
                       throws javax.swing.text.BadLocationException

      Overrides:
        `replace` in class `javax.swing.text.AbstractDocument`
      Throws:
        `javax.swing.text.BadLocationException`

    - #### replaceCommand

          void replaceCommand(java.lang.String newCommand,
                              boolean isError)
                       throws javax.swing.text.BadLocationException

      Replaces current command on script.
      Parameters:
        `newCommand` - new command value
        `isError` - true to set error color ends with #??
      Throws:
        `javax.swing.text.BadLocationException`

    - #### colorCommand

          void colorCommand(javax.swing.text.SimpleAttributeSet att)