javax.swing.text

Interface Caret

Known Implementing Classes:
BasicTextUI.BasicCaret, DefaultCaret

public interface Caret

Defines the method to be implemented by a caret that can be used in Swing text components.

Method Summary

void
addChangeListener(ChangeListener l)
Registers a ChangeListener that is notified whenever that state of this Caret changes.
void
deinstall(JTextComponent c)
Deinstalls this Caret from the specified text component.
int
getBlinkRate()
Returns the blink rate of this Caret in milliseconds.
int
getDot()
Returns the current position of this Caret within the Document.
Point
getMagicCaretPosition()
Returns the current visual position of this Caret.
int
getMark()
Returns the current position of the mark.
void
install(JTextComponent c)
Installs this Caret on the specified text component.
boolean
isSelectionVisible()
Returns true if the selection is currently visible, false otherwise.
boolean
isVisible()
Returns true if this Caret is currently visible, and false if it is not.
void
moveDot(int dot)
Moves the dot location without touching the mark.
void
paint(Graphics g)
Paints this Caret to the specified Graphics context.
void
removeChangeListener(ChangeListener l)
Removes a ChangeListener from the list of registered listeners.
void
setBlinkRate(int rate)
Sets the blink rate of this Caret in milliseconds.
void
setDot(int dot)
Sets the current position of this Caret within the Document.
void
setMagicCaretPosition(Point p)
Sets the current visual position of this Caret.
void
setSelectionVisible(boolean v)
Sets the visiblity state of the selection.
void
setVisible(boolean v)
Sets the visibility state of the caret.

Method Details

addChangeListener

public void addChangeListener(ChangeListener l)
Registers a ChangeListener that is notified whenever that state of this Caret changes.
Parameters:
l - the listener to register to this caret

deinstall

public void deinstall(JTextComponent c)
Deinstalls this Caret from the specified text component. This usually involves removing listeners from the text component. This method is called by JTextComponent.setCaret(Caret) before this caret is removed from the text component.
Parameters:
c - the text component to deinstall this caret from

getBlinkRate

public int getBlinkRate()
Returns the blink rate of this Caret in milliseconds. A value of 0 means that the caret does not blink.
Returns:
the blink rate of this Caret or 0 if this caret does not blink

getDot

public int getDot()
Returns the current position of this Caret within the Document.
Returns:
the current position of this Caret within the Document

getMagicCaretPosition

public Point getMagicCaretPosition()
Returns the current visual position of this Caret.
Returns:
the current visual position of this Caret

getMark

public int getMark()
Returns the current position of the mark. The mark marks the location in the Document that is the end of a selection. If there is no selection, the mark is the same as the dot.
Returns:
the current position of the mark

install

public void install(JTextComponent c)
Installs this Caret on the specified text component. This usually involves setting up listeners. This method is called by JTextComponent.setCaret(Caret) after this caret has been set on the text component.
Parameters:
c - the text component to install this caret to

isSelectionVisible

public boolean isSelectionVisible()
Returns true if the selection is currently visible, false otherwise.
Returns:
true if the selection is currently visible, false otherwise

isVisible

public boolean isVisible()
Returns true if this Caret is currently visible, and false if it is not.
Returns:
true if this Caret is currently visible, and false if it is not

moveDot

public void moveDot(int dot)
Moves the dot location without touching the mark. This is used when making a selection.
Parameters:
dot - the location where to move the dot
See Also:
setDot(int)

paint

public void paint(Graphics g)
Paints this Caret to the specified Graphics context.
Parameters:
g - the graphics context to render to

removeChangeListener

public void removeChangeListener(ChangeListener l)
Removes a ChangeListener from the list of registered listeners.
Parameters:
l - the listener to remove

setBlinkRate

public void setBlinkRate(int rate)
Sets the blink rate of this Caret in milliseconds. A value of 0 means that the caret does not blink.
Parameters:
rate - the new blink rate to set

setDot

public void setDot(int dot)
Sets the current position of this Caret within the Document. This also sets the mark to the new location.
Parameters:
dot - the new position to be set
See Also:
moveDot(int)

setMagicCaretPosition

public void setMagicCaretPosition(Point p)
Sets the current visual position of this Caret.
Parameters:
p - the Point to use for the saved location. May be null to indicate that there is no visual location

setSelectionVisible

public void setSelectionVisible(boolean v)
Sets the visiblity state of the selection.
Parameters:
v - true if the selection should be visible, false otherwise

setVisible

public void setVisible(boolean v)
Sets the visibility state of the caret. true shows the Caret, false hides it.
Parameters:
v - the visibility to set

Caret.java -- Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.