Interface Caret
- All Known Implementing Classes:
- BasicTextUI.BasicCaret,- DefaultCaret
public interface Caret
A place within a document view that represents where
 things can be inserted into the document model.  A caret
 has a position in the document referred to as a dot.
 The dot is where the caret is currently located in the
 model.  There is
 a second position maintained by the caret that represents
 the other end of a selection called mark.  If there is
 no selection the dot and mark will be equal.  If a selection
 exists, the two values will be different.
 
 The dot can be placed by either calling
 setDot or moveDot.  Setting
 the dot has the effect of removing any selection that may
 have previously existed.  The dot and mark will be equal.
 Moving the dot has the effect of creating a selection as
 the mark is left at whatever position it previously had.
- 
Method SummaryModifier and TypeMethodDescriptionvoidAdds a listener to track whenever the caret position has been changed.voidCalled when the UI is being removed from the interface of a JTextComponent.intGets the blink rate of the caret.intgetDot()Fetches the current position of the caret.Gets the current caret visual location.intgetMark()Fetches the current position of the mark.voidCalled when the UI is being installed into the interface of a JTextComponent.booleanDetermines if the selection is currently visible.booleanDetermines if the caret is currently visible.voidmoveDot(int dot) Moves the caret position (dot) to some other position, leaving behind the mark.voidRenders the caret.voidRemoves a listener that was tracking caret position changes.voidsetBlinkRate(int rate) Sets the blink rate of the caret.voidsetDot(int dot) Sets the caret position to some position.voidSet the current caret visual location.voidsetSelectionVisible(boolean v) Sets the visibility of the selectionvoidsetVisible(boolean v) Sets the visibility of the caret.
- 
Method Details- 
installCalled when the UI is being installed into the interface of a JTextComponent. This can be used to gain access to the model that is being navigated by the implementation of this interface.- Parameters:
- c- the JTextComponent
 
- 
deinstallCalled when the UI is being removed from the interface of a JTextComponent. This is used to unregister any listeners that were attached.- Parameters:
- c- the JTextComponent
 
- 
paintRenders the caret. This method is called by UI classes.- Parameters:
- g- the graphics context
 
- 
addChangeListenerAdds a listener to track whenever the caret position has been changed.- Parameters:
- l- the change listener
 
- 
removeChangeListenerRemoves a listener that was tracking caret position changes.- Parameters:
- l- the change listener
 
- 
isVisibleboolean isVisible()Determines if the caret is currently visible.- Returns:
- true if the caret is visible else false
 
- 
setVisiblevoid setVisible(boolean v) Sets the visibility of the caret.- Parameters:
- v- true if the caret should be shown, and false if the caret should be hidden
 
- 
isSelectionVisibleboolean isSelectionVisible()Determines if the selection is currently visible.- Returns:
- true if the caret is visible else false
 
- 
setSelectionVisiblevoid setSelectionVisible(boolean v) Sets the visibility of the selection- Parameters:
- v- true if the caret should be shown, and false if the caret should be hidden
 
- 
setMagicCaretPositionSet the current caret visual location. This can be used when moving between lines that have uneven end positions (such as when caret up or down actions occur). If text flows left-to-right or right-to-left the x-coordinate will indicate the desired navigation location for vertical movement. If the text flow is top-to-bottom, the y-coordinate will indicate the desired navigation location for horizontal movement.- Parameters:
- p- the Point to use for the saved position. This can be null to indicate there is no visual location.
 
- 
getMagicCaretPositionPoint getMagicCaretPosition()Gets the current caret visual location.- Returns:
- the visual position.
- See Also:
 
- 
setBlinkRatevoid setBlinkRate(int rate) Sets the blink rate of the caret. This determines if and how fast the caret blinks, commonly used as one way to attract attention to the caret.- Parameters:
- rate- the delay in milliseconds >=0. If this is zero the caret will not blink.
 
- 
getBlinkRateint getBlinkRate()Gets the blink rate of the caret. This determines if and how fast the caret blinks, commonly used as one way to attract attention to the caret.- Returns:
- the delay in milliseconds >=0. If this is zero the caret will not blink.
 
- 
getDotint getDot()Fetches the current position of the caret.- Returns:
- the position >=0
 
- 
getMarkint getMark()Fetches the current position of the mark. If there is a selection, the mark will not be the same as the dot.- Returns:
- the position >=0
 
- 
setDotvoid setDot(int dot) Sets the caret position to some position. This causes the mark to become the same as the dot, effectively setting the selection range to zero.If the parameter is negative or beyond the length of the document, the caret is placed at the beginning or at the end, respectively. - Parameters:
- dot- the new position to set the caret to
 
- 
moveDotvoid moveDot(int dot) Moves the caret position (dot) to some other position, leaving behind the mark. This is useful for making selections.- Parameters:
- dot- the new position to move the caret to >=0
 
 
-