Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

alice.util.jedit
Class JEditTextArea  view JEditTextArea download JEditTextArea.java

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byalice.util.jedit.JEditTextArea
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class JEditTextArea
extends javax.swing.JComponent

jEdit's text area component. It is more suited for editing program source code than JEditorPane, because it drops the unnecessary features (images, variable-width lines, and so on) and adds a whole bunch of useful goodies such as:

It is also faster and doesn't have as many problems. It can be used in other applications; the only other part of jEdit it depends on is the syntax package.

To use it in your app, treat it like any other component, for example:

JEditTextArea ta = new JEditTextArea();
 ta.setTokenMarker(new JavaTokenMarker());
 ta.setText("public class Test {\n"
     + "    public static void main(String[] args) {\n"
     + "        System.out.println(\"Hello World\");\n"
     + "    }\n"
     + "}");

Version:
$Id: JEditTextArea.java,v 1.36 1999/12/13 03:40:30 sp Exp $

Nested Class Summary
(package private)  class JEditTextArea.AdjustHandler
           
(package private) static class JEditTextArea.CaretBlinker
           
(package private)  class JEditTextArea.CaretUndo
           
(package private)  class JEditTextArea.ComponentHandler
           
(package private)  class JEditTextArea.DocumentHandler
           
(package private)  class JEditTextArea.DragHandler
           
(package private)  class JEditTextArea.FocusHandler
           
(package private)  class JEditTextArea.MouseHandler
           
(package private)  class JEditTextArea.MutableCaretEvent
           
(package private)  class JEditTextArea.ScrollLayout
           
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  boolean biasLeft
           
protected  boolean blink
           
protected static java.lang.String BOTTOM
           
protected  int bracketLine
           
protected  int bracketPosition
           
protected  boolean caretBlinks
           
protected  JEditTextArea.MutableCaretEvent caretEvent
           
protected static javax.swing.Timer caretTimer
           
protected  boolean caretVisible
           
protected static java.lang.String CENTER
           
protected  SyntaxDocument document
           
protected  JEditTextArea.DocumentHandler documentHandler
           
protected  boolean editable
           
protected  int electricScroll
           
protected  int firstLine
           
protected static JEditTextArea focusedComponent
           
protected  javax.swing.JScrollBar horizontal
           
protected  int horizontalOffset
           
protected  InputHandler inputHandler
           
static java.lang.String LEFT_OF_SCROLLBAR
          Adding components with this name to the text area will place them left of the horizontal scroll bar.
protected  javax.swing.text.Segment lineSegment
           
protected  javax.swing.event.EventListenerList listenerList
           
protected  int magicCaret
           
protected  boolean overwrite
           
protected  TextAreaPainter painter
           
protected  javax.swing.JPopupMenu popup
           
protected  boolean rectSelect
           
protected static java.lang.String RIGHT
           
protected  boolean scrollBarsInitialized
           
protected  int selectionEnd
           
protected  int selectionEndLine
           
protected  int selectionStart
           
protected  int selectionStartLine
           
protected  javax.swing.JScrollBar vertical
           
protected  int visibleLines
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Container
 
Fields inherited from class java.awt.Component
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
 
Constructor Summary
JEditTextArea()
          Creates a new JEditTextArea with the default settings.
JEditTextArea(TextAreaDefaults defaults)
          Creates a new JEditTextArea with the specified settings.
 
Method Summary
 int _offsetToX(int line, int offset)
          Converts an offset in a line into an x co-ordinate.
 void addCaretListener(javax.swing.event.CaretListener listener)
          Adds a caret change listener to this text area.
 void blinkCaret()
          Blinks the caret.
 void copy()
          Places the selected text into the clipboard.
 void cut()
          Deletes the selected text from the text area and places it into the clipboard.
protected  void documentChanged(javax.swing.event.DocumentEvent evt)
           
protected  void fireCaretEvent()
           
 int getBracketLine()
          Returns the line of the highlighted bracket (the bracket matching the one before the caret)
 int getBracketPosition()
          Returns the position of the highlighted bracket (the bracket matching the one before the caret)
 int getCaretLine()
          Returns the caret line.
 int getCaretPosition()
          Returns the caret position.
 SyntaxDocument getDocument()
          Returns the document this text area is editing.
 int getDocumentLength()
          Returns the length of the document.
 int getElectricScroll()
          Returns the number of lines from the top and button of the text area that are always visible.
 int getFirstLine()
          Returns the line displayed at the text area's origin.
 int getHorizontalOffset()
          Returns the horizontal offset of drawn lines.
 InputHandler getInputHandler()
          Returns the input handler.
 int getLineCount()
          Returns the number of lines in the document.
 int getLineEndOffset(int line)
          Returns the end offset of the specified line.
 int getLineLength(int line)
          Returns the length of the specified line.
 int getLineOfOffset(int offset)
          Returns the line containing the specified offset.
 int getLineStartOffset(int line)
          Returns the start offset of the specified line.
 java.lang.String getLineText(int lineIndex)
          Returns the text on the specified line.
 void getLineText(int lineIndex, javax.swing.text.Segment segment)
          Copies the text on the specified line into a segment.
 int getMagicCaretPosition()
          Returns the `magic' caret position.
 int getMarkLine()
          Returns the mark line.
 int getMarkPosition()
          Returns the mark position.
 TextAreaPainter getPainter()
          Returns the object responsible for painting this text area.
 javax.swing.JPopupMenu getRightClickPopup()
          Returns the right click popup menu.
 java.lang.String getSelectedText()
          Returns the selected text, or null if no selection is active.
 int getSelectionEnd()
          Returns the selection end offset.
 int getSelectionEnd(int line)
          Returns the offset where the selection ends on the specified line.
 int getSelectionEndLine()
          Returns the selection end line.
 int getSelectionStart()
          Returns the selection start offset.
 int getSelectionStart(int line)
          Returns the offset where the selection starts on the specified line.
 int getSelectionStartLine()
          Returns the selection start line.
 java.lang.String getText()
          Returns the entire text of this text area.
 java.lang.String getText(int start, int len)
          Returns the specified substring of the document.
 void getText(int start, int len, javax.swing.text.Segment segment)
          Copies the specified substring of the document into a segment.
 TokenMarker getTokenMarker()
          Returns the document's token marker.
 int getVisibleLines()
          Returns the number of lines visible in this text area.
 boolean isCaretBlinkEnabled()
          Returns true if the caret is blinking, false otherwise.
 boolean isCaretVisible()
          Returns true if the caret is visible, false otherwise.
 boolean isEditable()
          Returns true if this text area is editable, false otherwise.
 boolean isManagingFocus()
          Returns if this component can be traversed by pressing the Tab key.
 boolean isOverwriteEnabled()
          Returns true if overwrite mode is enabled, false otherwise.
 boolean isSelectionRectangular()
          Returns true if the selection is rectangular, false otherwise.
 int lineToY(int line)
          Converts a line index to a y co-ordinate.
 int offsetToX(int line, int offset)
          Converts an offset in a line into an x co-ordinate.
 void overwriteSetSelectedText(java.lang.String str)
          Similar to setSelectedText(), but overstrikes the appropriate number of characters if overwrite mode is enabled.
 void paste()
          Inserts the clipboard contents into the text.
 void processKeyEvent(java.awt.event.KeyEvent evt)
          Forwards key events directly to the input handler.
 void recalculateVisibleLines()
          Recalculates the number of visible lines.
 void removeCaretListener(javax.swing.event.CaretListener listener)
          Removes a caret change listener from this text area.
 void removeNotify()
          Called by the AWT when this component is removed from it's parent.
 boolean scrollTo(int line, int offset)
          Ensures that the specified line and offset is visible by scrolling the text area if necessary.
 boolean scrollToCaret()
          Ensures that the caret is visible by scrolling the text area if necessary.
 void select(int start, int end)
          Selects from the start offset to the end offset.
 void selectAll()
          Selects all text in the document.
 void selectNone()
          Moves the mark to the caret position.
 void setCaretBlinkEnabled(boolean caretBlinks)
          Toggles caret blinking.
 void setCaretPosition(int caret)
          Sets the caret position.
 void setCaretVisible(boolean caretVisible)
          Sets if the caret should be visible.
 void setDocument(SyntaxDocument document)
          Sets the document this text area is editing.
 void setEditable(boolean editable)
          Sets if this component is editable.
 void setElectricScroll(int electricScroll)
          Sets the number of lines from the top and bottom of the text area that are always visible
 void setFirstLine(int firstLine)
          Sets the line displayed at the text area's origin without updating the scroll bars.
 void setHorizontalOffset(int horizontalOffset)
          Sets the horizontal offset of drawn lines.
 void setInputHandler(InputHandler inputHandler)
          Sets the input handler.
 void setMagicCaretPosition(int magicCaret)
          Sets the `magic' caret position.
 boolean setOrigin(int firstLine, int horizontalOffset)
          A fast way of changing both the first line and horizontal offset.
 void setOverwriteEnabled(boolean overwrite)
          Sets if overwrite mode should be enabled.
 void setRightClickPopup(javax.swing.JPopupMenu popup)
          Sets the right click popup menu.
 void setSelectedText(java.lang.String selectedText)
          Replaces the selection with the specified text.
 void setSelectionEnd(int selectionEnd)
          Sets the selection end.
 void setSelectionRectangular(boolean rectSelect)
          Sets if the selection should be rectangular.
 void setSelectionStart(int selectionStart)
          Sets the selection start.
 void setText(java.lang.String text)
          Sets the entire text of this text area.
 void setTokenMarker(TokenMarker tokenMarker)
          Sets the document's token marker.
protected  void updateBracketHighlight(int newCaretPosition)
           
 void updateScrollBars()
          Updates the state of the scroll bars.
 int xToOffset(int line, int x)
          Converts an x co-ordinate to an offset within a line.
 int xyToOffset(int x, int y)
          Converts a point to an offset, from the start of the text.
 int yToLine(int y)
          Converts a y co-ordinate to a line index.
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, 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

LEFT_OF_SCROLLBAR

public static java.lang.String LEFT_OF_SCROLLBAR
Adding components with this name to the text area will place them left of the horizontal scroll bar. In jEdit, the status bar is added this way.


CENTER

protected static java.lang.String CENTER

RIGHT

protected static java.lang.String RIGHT

BOTTOM

protected static java.lang.String BOTTOM

focusedComponent

protected static JEditTextArea focusedComponent

caretTimer

protected static javax.swing.Timer caretTimer

painter

protected TextAreaPainter painter

popup

protected javax.swing.JPopupMenu popup

listenerList

protected javax.swing.event.EventListenerList listenerList

caretEvent

protected JEditTextArea.MutableCaretEvent caretEvent

caretBlinks

protected boolean caretBlinks

caretVisible

protected boolean caretVisible

blink

protected boolean blink

editable

protected boolean editable

firstLine

protected int firstLine

visibleLines

protected int visibleLines

electricScroll

protected int electricScroll

horizontalOffset

protected int horizontalOffset

vertical

protected javax.swing.JScrollBar vertical

horizontal

protected javax.swing.JScrollBar horizontal

scrollBarsInitialized

protected boolean scrollBarsInitialized

inputHandler

protected InputHandler inputHandler

document

protected SyntaxDocument document

documentHandler

protected JEditTextArea.DocumentHandler documentHandler

lineSegment

protected javax.swing.text.Segment lineSegment

selectionStart

protected int selectionStart

selectionStartLine

protected int selectionStartLine

selectionEnd

protected int selectionEnd

selectionEndLine

protected int selectionEndLine

biasLeft

protected boolean biasLeft

bracketPosition

protected int bracketPosition

bracketLine

protected int bracketLine

magicCaret

protected int magicCaret

overwrite

protected boolean overwrite

rectSelect

protected boolean rectSelect
Constructor Detail

JEditTextArea

public JEditTextArea()
Creates a new JEditTextArea with the default settings.


JEditTextArea

public JEditTextArea(TextAreaDefaults defaults)
Creates a new JEditTextArea with the specified settings.

Method Detail

isManagingFocus

public final boolean isManagingFocus()
Returns if this component can be traversed by pressing the Tab key. This returns false.


getPainter

public final TextAreaPainter getPainter()
Returns the object responsible for painting this text area.


getInputHandler

public final InputHandler getInputHandler()
Returns the input handler.


setInputHandler

public void setInputHandler(InputHandler inputHandler)
Sets the input handler.


isCaretBlinkEnabled

public final boolean isCaretBlinkEnabled()
Returns true if the caret is blinking, false otherwise.


setCaretBlinkEnabled

public void setCaretBlinkEnabled(boolean caretBlinks)
Toggles caret blinking.


isCaretVisible

public final boolean isCaretVisible()
Returns true if the caret is visible, false otherwise.


setCaretVisible

public void setCaretVisible(boolean caretVisible)
Sets if the caret should be visible.


blinkCaret

public final void blinkCaret()
Blinks the caret.


getElectricScroll

public final int getElectricScroll()
Returns the number of lines from the top and button of the text area that are always visible.


setElectricScroll

public final void setElectricScroll(int electricScroll)
Sets the number of lines from the top and bottom of the text area that are always visible


updateScrollBars

public void updateScrollBars()
Updates the state of the scroll bars. This should be called if the number of lines in the document changes, or when the size of the text are changes.


getFirstLine

public final int getFirstLine()
Returns the line displayed at the text area's origin.


setFirstLine

public void setFirstLine(int firstLine)
Sets the line displayed at the text area's origin without updating the scroll bars.


getVisibleLines

public final int getVisibleLines()
Returns the number of lines visible in this text area.


recalculateVisibleLines

public final void recalculateVisibleLines()
Recalculates the number of visible lines. This should not be called directly.


getHorizontalOffset

public final int getHorizontalOffset()
Returns the horizontal offset of drawn lines.


setHorizontalOffset

public void setHorizontalOffset(int horizontalOffset)
Sets the horizontal offset of drawn lines. This can be used to implement horizontal scrolling.


setOrigin

public boolean setOrigin(int firstLine,
                         int horizontalOffset)
A fast way of changing both the first line and horizontal offset.


scrollToCaret

public boolean scrollToCaret()
Ensures that the caret is visible by scrolling the text area if necessary.


scrollTo

public boolean scrollTo(int line,
                        int offset)
Ensures that the specified line and offset is visible by scrolling the text area if necessary.


lineToY

public int lineToY(int line)
Converts a line index to a y co-ordinate.


yToLine

public int yToLine(int y)
Converts a y co-ordinate to a line index.


offsetToX

public final int offsetToX(int line,
                           int offset)
Converts an offset in a line into an x co-ordinate. This is a slow version that can be used any time.


_offsetToX

public int _offsetToX(int line,
                      int offset)
Converts an offset in a line into an x co-ordinate. This is a fast version that should only be used if no changes were made to the text since the last repaint.


xToOffset

public int xToOffset(int line,
                     int x)
Converts an x co-ordinate to an offset within a line.


xyToOffset

public int xyToOffset(int x,
                      int y)
Converts a point to an offset, from the start of the text.


getDocument

public final SyntaxDocument getDocument()
Returns the document this text area is editing.


setDocument

public void setDocument(SyntaxDocument document)
Sets the document this text area is editing.


getTokenMarker

public final TokenMarker getTokenMarker()
Returns the document's token marker. Equivalent to calling getDocument().getTokenMarker().


setTokenMarker

public final void setTokenMarker(TokenMarker tokenMarker)
Sets the document's token marker. Equivalent to caling getDocument().setTokenMarker().


getDocumentLength

public final int getDocumentLength()
Returns the length of the document. Equivalent to calling getDocument().getLength().


getLineCount

public final int getLineCount()
Returns the number of lines in the document.


getLineOfOffset

public final int getLineOfOffset(int offset)
Returns the line containing the specified offset.


getLineStartOffset

public int getLineStartOffset(int line)
Returns the start offset of the specified line.


getLineEndOffset

public int getLineEndOffset(int line)
Returns the end offset of the specified line.


getLineLength

public int getLineLength(int line)
Returns the length of the specified line.


getText

public java.lang.String getText()
Returns the entire text of this text area.


setText

public void setText(java.lang.String text)
Sets the entire text of this text area.


getText

public final java.lang.String getText(int start,
                                      int len)
Returns the specified substring of the document.


getText

public final void getText(int start,
                          int len,
                          javax.swing.text.Segment segment)
Copies the specified substring of the document into a segment. If the offsets are invalid, the segment will contain a null string.


getLineText

public final java.lang.String getLineText(int lineIndex)
Returns the text on the specified line.


getLineText

public final void getLineText(int lineIndex,
                              javax.swing.text.Segment segment)
Copies the text on the specified line into a segment. If the line is invalid, the segment will contain a null string.


getSelectionStart

public final int getSelectionStart()
Returns the selection start offset.


getSelectionStart

public int getSelectionStart(int line)
Returns the offset where the selection starts on the specified line.


getSelectionStartLine

public final int getSelectionStartLine()
Returns the selection start line.


setSelectionStart

public final void setSelectionStart(int selectionStart)
Sets the selection start. The new selection will be the new selection start and the old selection end.


getSelectionEnd

public final int getSelectionEnd()
Returns the selection end offset.


getSelectionEnd

public int getSelectionEnd(int line)
Returns the offset where the selection ends on the specified line.


getSelectionEndLine

public final int getSelectionEndLine()
Returns the selection end line.


setSelectionEnd

public final void setSelectionEnd(int selectionEnd)
Sets the selection end. The new selection will be the old selection start and the bew selection end.


getCaretPosition

public final int getCaretPosition()
Returns the caret position. This will either be the selection start or the selection end, depending on which direction the selection was made in.


getCaretLine

public final int getCaretLine()
Returns the caret line.


getMarkPosition

public final int getMarkPosition()
Returns the mark position. This will be the opposite selection bound to the caret position.


getMarkLine

public final int getMarkLine()
Returns the mark line.


setCaretPosition

public final void setCaretPosition(int caret)
Sets the caret position. The new selection will consist of the caret position only (hence no text will be selected)


selectAll

public final void selectAll()
Selects all text in the document.


selectNone

public final void selectNone()
Moves the mark to the caret position.


select

public void select(int start,
                   int end)
Selects from the start offset to the end offset. This is the general selection method used by all other selecting methods. The caret position will be start if start < end, and end if end > start.


getSelectedText

public final java.lang.String getSelectedText()
Returns the selected text, or null if no selection is active.


setSelectedText

public void setSelectedText(java.lang.String selectedText)
Replaces the selection with the specified text.


isEditable

public final boolean isEditable()
Returns true if this text area is editable, false otherwise.


setEditable

public final void setEditable(boolean editable)
Sets if this component is editable.


getRightClickPopup

public final javax.swing.JPopupMenu getRightClickPopup()
Returns the right click popup menu.


setRightClickPopup

public final void setRightClickPopup(javax.swing.JPopupMenu popup)
Sets the right click popup menu.


getMagicCaretPosition

public final int getMagicCaretPosition()
Returns the `magic' caret position. This can be used to preserve the column position when moving up and down lines.


setMagicCaretPosition

public final void setMagicCaretPosition(int magicCaret)
Sets the `magic' caret position. This can be used to preserve the column position when moving up and down lines.


overwriteSetSelectedText

public void overwriteSetSelectedText(java.lang.String str)
Similar to setSelectedText(), but overstrikes the appropriate number of characters if overwrite mode is enabled.


isOverwriteEnabled

public final boolean isOverwriteEnabled()
Returns true if overwrite mode is enabled, false otherwise.


setOverwriteEnabled

public final void setOverwriteEnabled(boolean overwrite)
Sets if overwrite mode should be enabled.


isSelectionRectangular

public final boolean isSelectionRectangular()
Returns true if the selection is rectangular, false otherwise.


setSelectionRectangular

public final void setSelectionRectangular(boolean rectSelect)
Sets if the selection should be rectangular.


getBracketPosition

public final int getBracketPosition()
Returns the position of the highlighted bracket (the bracket matching the one before the caret)


getBracketLine

public final int getBracketLine()
Returns the line of the highlighted bracket (the bracket matching the one before the caret)


addCaretListener

public final void addCaretListener(javax.swing.event.CaretListener listener)
Adds a caret change listener to this text area.


removeCaretListener

public final void removeCaretListener(javax.swing.event.CaretListener listener)
Removes a caret change listener from this text area.


cut

public void cut()
Deletes the selected text from the text area and places it into the clipboard.


copy

public void copy()
Places the selected text into the clipboard.


paste

public void paste()
Inserts the clipboard contents into the text.


removeNotify

public void removeNotify()
Called by the AWT when this component is removed from it's parent. This stops clears the currently focused component.


processKeyEvent

public void processKeyEvent(java.awt.event.KeyEvent evt)
Forwards key events directly to the input handler. This is slightly faster than using a KeyListener because some Swing overhead is avoided.


fireCaretEvent

protected void fireCaretEvent()

updateBracketHighlight

protected void updateBracketHighlight(int newCaretPosition)

documentChanged

protected void documentChanged(javax.swing.event.DocumentEvent evt)