org.gjt.sp.jedit.textarea

## Class TextAreaPainter

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - javax.swing.JComponent
      - - org.gjt.sp.jedit.textarea.TextAreaPainter

- All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.swing.text.TabExpander

      public class TextAreaPainter
      extends javax.swing.JComponent
      implements javax.swing.text.TabExpander

  The text area painter is the component responsible for displaying the text of the current buffer. The only methods in this class that should be called by plugins are those for adding and removing text area extensions.
  See Also:
    `addExtension(TextAreaExtension)`, `addExtension(int,TextAreaExtension)`, `removeExtension(TextAreaExtension)`, `TextAreaExtension`, `TextArea`, Serialized Form

- - ### Nested Class Summary

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

      `javax.swing.JComponent.AccessibleJComponent`

    - ### Nested classes/interfaces inherited from class java.awt.Container

      `java.awt.Container.AccessibleAWTContainer`

    - ### Nested classes/interfaces inherited from class java.awt.Component

      `java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `BACKGROUND_LAYER` Below selection layer.
    `static int` | `BELOW_MOST_EXTENSIONS_LAYER` Below most extensions layer.
    `static int` | `BELOW_SELECTION_LAYER` Below selection layer.
    `static int` | `BLOCK_CARET_LAYER` Block caret layer.
    `static int` | `BRACKET_HIGHLIGHT_LAYER` Bracket highlight layer.
    `static int` | `CARET_LAYER` Caret layer.
    `static int` | `DEFAULT_LAYER` Default extension layer.
    `static int` | `HIGHEST_LAYER` Highest possible layer.
    `static int` | `LINE_BACKGROUND_LAYER` The line highlight and collapsed fold highlight layer.
    `static int` | `LOWEST_LAYER` The lowest possible layer.
    `static int` | `SELECTION_LAYER` Selection layer.
    `static int` | `TEXT_LAYER` Text layer.
    `static int` | `WRAP_GUIDE_LAYER` Wrap guide layer.

    - ### Fields inherited from class javax.swing.JComponent

      `listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

    - ### Fields inherited from class java.awt.Component

      `accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

    - ### Fields inherited from interface java.awt.image.ImageObserver

      `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addExtension(int layer, TextAreaExtension extension)` Adds a text area extension, which can perform custom painting and tool tip handling.
    `void` | `addExtension(TextAreaExtension extension)` Adds a text area extension, which can perform custom painting and tool tip handling.
    `void` | `addNotify()`
    `AntiAlias` | `getAntiAlias()`
    `java.awt.Color` | `getCaretColor()` Returns the caret color.
    `java.lang.String` | `getEOLMarkerChar()`
    `java.awt.Color` | `getEOLMarkerColor()` Returns the EOL marker color.
    `boolean` | `getEOLMarkersPainted()` Returns true if EOL markers are drawn, false otherwise.
    `TextAreaExtension[]` | `getExtensions()` Returns an array of registered text area extensions.
    `boolean` | `getFocusTraversalKeysEnabled()` Makes the tab key work in Java 1.4.
    `SyntaxStyle[]` | `getFoldLineStyle()` Returns the fold line style.
    `int` | `getFontHeight()` Returns the font height as given by the font metrics.
    `java.awt.FontMetrics` | `getFontMetrics()` Returns the font metrics used by this component.
    `java.awt.font.FontRenderContext` | `getFontRenderContext()` Returns the font render context.
    `int` | `getLineExtraSpacing()` Returns the number of pixels from the start of the line to the start of text (the extra line spacing).
    `int` | `getLineHeight()` Returns the line height as given by the font metrics plus the added line spacing.
    `java.awt.Color` | `getLineHighlightColor()` Returns the line highlight color.
    `java.awt.Dimension` | `getMinimumSize()` Returns the painter's minimum size.
    `java.awt.Color` | `getMultipleSelectionColor()` Returns the multiple selection color.
    `java.awt.Dimension` | `getPreferredSize()` Returns the painter's preferred size.
    `java.awt.RenderingHints` | `getRenderingHints()` Returns the rendering hints used by the Graphics2D class; in this case, for anti-aliasing of text.
    `java.awt.Color` | `getSelectionColor()` Returns the selection color.
    `java.awt.Color` | `getSelectionFgColor()` Returns the selection foreground color, if one is set.
    `float` | `getStringWidth(java.lang.String str)` Returns the width of the given string, in pixels, using the text area's current font.
    `java.awt.Color` | `getStructureHighlightColor()` Returns the structure highlight color.
    `SyntaxStyle[]` | `getStyles()` Returns the syntax styles used to paint colorized text.
    `java.lang.String` | `getToolTipText(java.awt.event.MouseEvent evt)` Returns the tool tip to display at the specified location.
    `java.awt.Color` | `getWrapGuideColor()` Returns the wrap guide color.
    `boolean` | `isBlockCaretEnabled()` Returns true if the caret should be drawn as a block, false otherwise.
    `boolean` | `isFractionalFontMetricsEnabled()` Returns if fractional font metrics are enabled.
    `boolean` | `isLineHighlightEnabled()` Returns true if line highlight is enabled, false otherwise.
    `boolean` | `isSelectionFgColorEnabled()` Returns true if selection foreground color is enabled - i.e.
    `boolean` | `isStructureHighlightEnabled()` Returns true if structure highlighting is enabled, false otherwise.
    `boolean` | `isThickCaretEnabled()` Returns true if the caret should be drawn with a thick line, false otherwise.
    `boolean` | `isWrapGuidePainted()` Returns true if the wrap guide is drawn, false otherwise.
    `float` | `nextTabStop(float x, int tabOffset)` Implementation of TabExpander interface.
    `void` | `paint(java.awt.Graphics _gfx)` Repaints the text.
    `void` | `removeExtension(TextAreaExtension extension)` Removes a text area extension.
    `void` | `resetCursor()` Reset the cursor to it's default value.
    `void` | `setAntiAlias(AntiAlias newValue)` As of jEdit 4.3, subpixel antialias mode is supported.
    `void` | `setBlockCaretEnabled(boolean blockCaret)` Sets if the caret should be drawn as a block, false otherwise.
    `void` | `setBounds(int x, int y, int width, int height)` It is a bad idea to override this, but we need to get the component event before the first repaint.
    `void` | `setCaretColor(java.awt.Color caretColor)` Sets the caret color.
    `void` | `setCursor(java.awt.Cursor cursor)` Change the mouse cursor.
    `void` | `setEOLMarkerChar(java.lang.String emc)`
    `void` | `setEOLMarkerColor(java.awt.Color eolMarkerColor)` Sets the EOL marker color.
    `void` | `setEOLMarkersPainted(boolean eolMarkers)` Sets if EOL markers are to be drawn.
    `void` | `setFoldLineStyle(SyntaxStyle[] foldLineStyle)` Sets the fold line style.
    `void` | `setFont(java.awt.Font font)` Sets the font for this component.
    `void` | `setFractionalFontMetricsEnabled(boolean fracFontMetrics)` Sets if fractional font metrics should be enabled.
    `void` | `setLineExtraSpacing(int spacing)` Sets extra spacing between lines in pixels.
    `void` | `setLineHighlightColor(java.awt.Color lineHighlightColor)` Sets the line highlight color.
    `void` | `setLineHighlightEnabled(boolean lineHighlight)` Enables or disables current line highlighting.
    `void` | `setMultipleSelectionColor(java.awt.Color multipleSelectionColor)` Sets the multiple selection color.
    `void` | `setSelectionColor(java.awt.Color selectionColor)` Sets the selection color.
    `void` | `setSelectionFgColor(java.awt.Color selectionFgColor)` Sets the selection foreground color.
    `void` | `setSelectionFgColorEnabled(boolean selectionFg)` Enables or disables selection foreground color.
    `void` | `setStructureHighlightColor(java.awt.Color structureHighlightColor)` Sets the structure highlight color.
    `void` | `setStructureHighlightEnabled(boolean structureHighlight)` Enables or disables structure highlighting.
    `void` | `setStyles(SyntaxStyle[] styles)` Sets the syntax styles used to paint colorized text.
    `void` | `setThickCaretEnabled(boolean thickCaret)` Sets if the caret should be drawn with a thick line.
    `void` | `setWrapGuideColor(java.awt.Color wrapGuideColor)` Sets the wrap guide color.
    `void` | `setWrapGuidePainted(boolean wrapGuide)` Sets if the wrap guide is to be drawn.
    `void` | `update(java.awt.Graphics _gfx)` Repaints the text.

    - ### Methods inherited from class javax.swing.JComponent

      `addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateUI`

    - ### Methods inherited from class java.awt.Container

      `add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree`

    - ### Methods inherited from class java.awt.Component

      `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setComponentOrientation, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

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

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

- - ### Field Detail

    - #### LOWEST_LAYER

          public static final int LOWEST_LAYER

      The lowest possible layer.
      Since:
        jEdit 4.0pre4
      See Also:
        `addExtension(int,TextAreaExtension)`, Constant Field Values

    - #### BACKGROUND_LAYER

          public static final int BACKGROUND_LAYER

      Below selection layer. The JDiff plugin will use this.
      Since:
        jEdit 4.0pre4
      See Also:
        `addExtension(int,TextAreaExtension)`, Constant Field Values

    - #### LINE_BACKGROUND_LAYER

          public static final int LINE_BACKGROUND_LAYER

      The line highlight and collapsed fold highlight layer.
      Since:
        jEdit 4.0pre7
      See Also:
        `addExtension(int,TextAreaExtension)`, Constant Field Values

    - #### BELOW_SELECTION_LAYER

          public static final int BELOW_SELECTION_LAYER

      Below selection layer.
      Since:
        jEdit 4.0pre4
      See Also:
        `addExtension(int,TextAreaExtension)`, Constant Field Values

    - #### SELECTION_LAYER

          public static final int SELECTION_LAYER

      Selection layer. Most extensions will be above this layer, but some (eg, JDiff) will want to be below the selection.
      Since:
        jEdit 4.0pre4
      See Also:
        `addExtension(int,TextAreaExtension)`, Constant Field Values

    - #### WRAP_GUIDE_LAYER

          public static final int WRAP_GUIDE_LAYER

      Wrap guide layer. Most extensions will be above this layer.
      Since:
        jEdit 4.0pre4
      See Also:
        Constant Field Values

    - #### BELOW_MOST_EXTENSIONS_LAYER

          public static final int BELOW_MOST_EXTENSIONS_LAYER

      Below most extensions layer.
      Since:
        jEdit 4.0pre4
      See Also:
        `addExtension(int,TextAreaExtension)`, Constant Field Values

    - #### DEFAULT_LAYER

          public static final int DEFAULT_LAYER

      Default extension layer. This is above the wrap guide but below the structure highlight.
      Since:
        jEdit 4.0pre4
      See Also:
        Constant Field Values

    - #### BLOCK_CARET_LAYER

          public static final int BLOCK_CARET_LAYER

      Block caret layer. Most extensions will be below this layer.
      Since:
        jEdit 4.2pre1
      See Also:
        Constant Field Values

    - #### BRACKET_HIGHLIGHT_LAYER

          public static final int BRACKET_HIGHLIGHT_LAYER

      Bracket highlight layer. Most extensions will be below this layer.
      Since:
        jEdit 4.0pre4
      See Also:
        Constant Field Values

    - #### TEXT_LAYER

          public static final int TEXT_LAYER

      Text layer. Most extensions will be below this layer.
      Since:
        jEdit 4.2pre1
      See Also:
        Constant Field Values

    - #### CARET_LAYER

          public static final int CARET_LAYER

      Caret layer. Most extensions will be below this layer.
      Since:
        jEdit 4.2pre1
      See Also:
        Constant Field Values

    - #### HIGHEST_LAYER

          public static final int HIGHEST_LAYER

      Highest possible layer.
      Since:
        jEdit 4.0pre4
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### setBounds

          public void setBounds(int x,
                                int y,
                                int width,
                                int height)

      It is a bad idea to override this, but we need to get the component event before the first repaint.
      Overrides:
        `setBounds` in class `java.awt.Component`

    - #### addNotify

          public void addNotify()

      Overrides:
        `addNotify` in class `javax.swing.JComponent`

    - #### setCursor

          public void setCursor(java.awt.Cursor cursor)

      Change the mouse cursor. If the cursor is hiddenCursor or TEXT_CURSOR, it is the default cursor and the cursor will not disappear anymore while typing until `resetCursor()` is called.
      Overrides:
        `setCursor` in class `java.awt.Component`
      Parameters:
        `cursor` - the new cursor
      Since:
        jEdit 4.4pre1

    - #### resetCursor

          public void resetCursor()

      Reset the cursor to it's default value.
      Since:
        jEdit 4.4pre1

    - #### getFocusTraversalKeysEnabled

          public boolean getFocusTraversalKeysEnabled()

      Makes the tab key work in Java 1.4.
      Overrides:
        `getFocusTraversalKeysEnabled` in class `java.awt.Component`
      Since:
        jEdit 3.2pre4

    - #### getStyles

          public final SyntaxStyle[] getStyles()

      Returns the syntax styles used to paint colorized text. Entry n will be used to paint tokens with id = n.
      Returns:
        an array of SyntaxStyles
      See Also:
        `Token`

    - #### setStyles

          public final void setStyles(SyntaxStyle[] styles)

      Sets the syntax styles used to paint colorized text. Entry n will be used to paint tokens with id = n.
      Parameters:
        `styles` - The syntax styles
      See Also:
        `Token`

    - #### getCaretColor

          public final java.awt.Color getCaretColor()

      Returns the caret color.

    - #### setCaretColor

          public final void setCaretColor(java.awt.Color caretColor)

      Sets the caret color.
      Parameters:
        `caretColor` - The caret color

    - #### getSelectionColor

          public final java.awt.Color getSelectionColor()

      Returns the selection color.

    - #### setSelectionColor

          public final void setSelectionColor(java.awt.Color selectionColor)

      Sets the selection color.
      Parameters:
        `selectionColor` - The selection color

    - #### getMultipleSelectionColor

          public final java.awt.Color getMultipleSelectionColor()

      Returns the multiple selection color.
      Since:
        jEdit 4.2pre1

    - #### setMultipleSelectionColor

          public final void setMultipleSelectionColor(java.awt.Color multipleSelectionColor)

      Sets the multiple selection color.
      Parameters:
        `multipleSelectionColor` - The multiple selection color
      Since:
        jEdit 4.2pre1

    - #### getLineHighlightColor

          public final java.awt.Color getLineHighlightColor()

      Returns the line highlight color.

    - #### setLineHighlightColor

          public final void setLineHighlightColor(java.awt.Color lineHighlightColor)

      Sets the line highlight color.
      Parameters:
        `lineHighlightColor` - The line highlight color

    - #### isLineHighlightEnabled

          public final boolean isLineHighlightEnabled()

      Returns true if line highlight is enabled, false otherwise.

    - #### setLineHighlightEnabled

          public final void setLineHighlightEnabled(boolean lineHighlight)

      Enables or disables current line highlighting.
      Parameters:
        `lineHighlight` - True if current line highlight should be enabled, false otherwise

    - #### getSelectionFgColor

          public final java.awt.Color getSelectionFgColor()

      Returns the selection foreground color, if one is set.
      Since:
        jEdit 4.4.1

    - #### setSelectionFgColor

          public final void setSelectionFgColor(java.awt.Color selectionFgColor)

      Sets the selection foreground color.
      Parameters:
        `selectionFgColor` - The selection foreground color
      Since:
        jEdit 4.4.1

    - #### isSelectionFgColorEnabled

          public final boolean isSelectionFgColorEnabled()

      Returns true if selection foreground color is enabled - i.e. a specific color is used for the selection foreground instead of the syntax highlight color.
      Since:
        jEdit 4.4.1

    - #### setSelectionFgColorEnabled

          public final void setSelectionFgColorEnabled(boolean selectionFg)

      Enables or disables selection foreground color.
      Parameters:
        `selectionFg` - True if selection foreground should be enabled, false otherwise
      Since:
        jEdit 4.4.1

    - #### getStructureHighlightColor

          public final java.awt.Color getStructureHighlightColor()

      Returns the structure highlight color.
      Since:
        jEdit 4.2pre3

    - #### setStructureHighlightColor

          public final void setStructureHighlightColor(java.awt.Color structureHighlightColor)

      Sets the structure highlight color.
      Parameters:
        `structureHighlightColor` - The bracket highlight color
      Since:
        jEdit 4.2pre3

    - #### isStructureHighlightEnabled

          public final boolean isStructureHighlightEnabled()

      Returns true if structure highlighting is enabled, false otherwise.
      Since:
        jEdit 4.2pre3

    - #### setStructureHighlightEnabled

          public final void setStructureHighlightEnabled(boolean structureHighlight)

      Enables or disables structure highlighting.
      Parameters:
        `structureHighlight` - True if structure highlighting should be enabled, false otherwise
      Since:
        jEdit 4.2pre3

    - #### isBlockCaretEnabled

          public final boolean isBlockCaretEnabled()

      Returns true if the caret should be drawn as a block, false otherwise.

    - #### setBlockCaretEnabled

          public final void setBlockCaretEnabled(boolean blockCaret)

      Sets if the caret should be drawn as a block, false otherwise.
      Parameters:
        `blockCaret` - True if the caret should be drawn as a block, false otherwise.

    - #### isThickCaretEnabled

          public final boolean isThickCaretEnabled()

      Returns true if the caret should be drawn with a thick line, false otherwise.
      Since:
        jEdit 4.3pre15

    - #### setThickCaretEnabled

          public final void setThickCaretEnabled(boolean thickCaret)

      Sets if the caret should be drawn with a thick line.
      Parameters:
        `thickCaret` - True if the caret should be drawn as a block, false otherwise.
      Since:
        jEdit 4.3pre15

    - #### getEOLMarkerChar

          public java.lang.String getEOLMarkerChar()

    - #### setEOLMarkerChar

          public void setEOLMarkerChar(java.lang.String emc)

    - #### getEOLMarkerColor

          public final java.awt.Color getEOLMarkerColor()

      Returns the EOL marker color.

    - #### setEOLMarkerColor

          public final void setEOLMarkerColor(java.awt.Color eolMarkerColor)

      Sets the EOL marker color.
      Parameters:
        `eolMarkerColor` - The EOL marker color

    - #### getEOLMarkersPainted

          public final boolean getEOLMarkersPainted()

      Returns true if EOL markers are drawn, false otherwise.

    - #### setEOLMarkersPainted

          public final void setEOLMarkersPainted(boolean eolMarkers)

      Sets if EOL markers are to be drawn.
      Parameters:
        `eolMarkers` - True if EOL markers should be drawn, false otherwise

    - #### getWrapGuideColor

          public final java.awt.Color getWrapGuideColor()

      Returns the wrap guide color.

    - #### setWrapGuideColor

          public final void setWrapGuideColor(java.awt.Color wrapGuideColor)

      Sets the wrap guide color.
      Parameters:
        `wrapGuideColor` - The wrap guide color

    - #### isWrapGuidePainted

          public final boolean isWrapGuidePainted()

      Returns true if the wrap guide is drawn, false otherwise.
      Since:
        jEdit 4.0pre4

    - #### setWrapGuidePainted

          public final void setWrapGuidePainted(boolean wrapGuide)

      Sets if the wrap guide is to be drawn.
      Parameters:
        `wrapGuide` - True if the wrap guide should be drawn, false otherwise

    - #### getFoldLineStyle

          public final SyntaxStyle[] getFoldLineStyle()

      Returns the fold line style. The first element is the style for lines with a fold level greater than 3. The remaining elements are for fold levels 1 to 3.

    - #### setFoldLineStyle

          public final void setFoldLineStyle(SyntaxStyle[] foldLineStyle)

      Sets the fold line style. The first element is the style for lines with a fold level greater than 3. The remaining elements are for fold levels 1 to 3.
      Parameters:
        `foldLineStyle` - The fold line style

    - #### setAntiAlias

          public void setAntiAlias(AntiAlias newValue)

      As of jEdit 4.3, subpixel antialias mode is supported.
      Since:
        jEdit 4.2pre4

    - #### getAntiAlias

          public AntiAlias getAntiAlias()

      Returns:
        the AntiAlias value that is currently used for TextAreas.
      Since:
        jedit 4.3pre4

    - #### setFractionalFontMetricsEnabled

          public void setFractionalFontMetricsEnabled(boolean fracFontMetrics)

      Sets if fractional font metrics should be enabled. Has no effect when running on Java 1.1.
      Since:
        jEdit 3.2pre6

    - #### isFractionalFontMetricsEnabled

          public boolean isFractionalFontMetricsEnabled()

      Returns if fractional font metrics are enabled.
      Since:
        jEdit 3.2pre6

    - #### getFontRenderContext

          public java.awt.font.FontRenderContext getFontRenderContext()

      Returns the font render context.
      Since:
        jEdit 4.0pre4

    - #### addExtension

          public void addExtension(TextAreaExtension extension)

      Adds a text area extension, which can perform custom painting and tool tip handling.
      Parameters:
        `extension` - The extension
      Since:
        jEdit 4.0pre4

    - #### addExtension

          public void addExtension(int layer,
                                   TextAreaExtension extension)

      Adds a text area extension, which can perform custom painting and tool tip handling.
      Parameters:
        `layer` - The layer to add the extension to. Note that more than extension can share the same layer.
        `extension` - The extension
      Since:
        jEdit 4.0pre4

    - #### removeExtension

          public void removeExtension(TextAreaExtension extension)

      Removes a text area extension. It will no longer be asked to perform custom painting and tool tip handling.
      Parameters:
        `extension` - The extension
      Since:
        jEdit 4.0pre4

    - #### getExtensions

          public TextAreaExtension[] getExtensions()

      Returns an array of registered text area extensions. Useful for debugging purposes.
      Since:
        jEdit 4.1pre5

    - #### getToolTipText

          public java.lang.String getToolTipText(java.awt.event.MouseEvent evt)

      Returns the tool tip to display at the specified location.
      Overrides:
        `getToolTipText` in class `javax.swing.JComponent`
      Parameters:
        `evt` - The mouse event

    - #### getFontMetrics

          public java.awt.FontMetrics getFontMetrics()

      Returns the font metrics used by this component.

    - #### getLineHeight

          public int getLineHeight()

      Returns the line height as given by the font metrics plus the added line spacing.

    - #### getFontHeight

          public int getFontHeight()

      Returns the font height as given by the font metrics.

    - #### getLineExtraSpacing

          public int getLineExtraSpacing()

      Returns the number of pixels from the start of the line to the start of text (the extra line spacing).

    - #### setLineExtraSpacing

          public void setLineExtraSpacing(int spacing)

      Sets extra spacing between lines in pixels.

    - #### setFont

          public void setFont(java.awt.Font font)

      Sets the font for this component. This is overridden to update the cached font metrics and to recalculate which lines are visible.
      Overrides:
        `setFont` in class `javax.swing.JComponent`
      Parameters:
        `font` - The font

    - #### getStringWidth

          public float getStringWidth(java.lang.String str)

      Returns the width of the given string, in pixels, using the text area's current font.
      Since:
        jEdit 4.2final

    - #### getRenderingHints

          public java.awt.RenderingHints getRenderingHints()

      Returns the rendering hints used by the Graphics2D class; in this case, for anti-aliasing of text.
      Since:
        jEdit 4.5pre1

    - #### update

          public void update(java.awt.Graphics _gfx)

      Repaints the text.
      Overrides:
        `update` in class `javax.swing.JComponent`
      Parameters:
        `_gfx` - The graphics context

    - #### paint

          public void paint(java.awt.Graphics _gfx)

      Repaints the text.
      Overrides:
        `paint` in class `javax.swing.JComponent`
      Parameters:
        `_gfx` - The graphics context

    - #### nextTabStop

          public float nextTabStop(float x,
                                   int tabOffset)

      Implementation of TabExpander interface. Returns next tab stop after a specified point.
      Specified by:
        `nextTabStop` in interface `javax.swing.text.TabExpander`
      Parameters:
        `x` - The x co-ordinate
        `tabOffset` - Ignored
      Returns:
        The next tab stop after x

    - #### getPreferredSize

          public java.awt.Dimension getPreferredSize()

      Returns the painter's preferred size.
      Overrides:
        `getPreferredSize` in class `javax.swing.JComponent`

    - #### getMinimumSize

          public java.awt.Dimension getMinimumSize()

      Returns the painter's minimum size.
      Overrides:
        `getMinimumSize` in class `javax.swing.JComponent`