This documentation differs from the official API. Jadeite adds extra features to the API including: variable font sizes, constructions examples, placeholders for classes and methods, and auto-generated “See Also” links. Additionally it is missing some items found in standard Javadoc documentation, including: generics type information, “Deprecated” tags and comments, “See Also” links, along with other minor differences. Please send any questions or feedback to bam@cs.cmu.edu.


javax.swing.text
class Utilities

java.lang.Object extended by javax.swing.text.Utilities

public class Utilities
extends Object

A collection of methods to deal with various text related activities.


Constructor Summary

          
 
Method Summary
static int
drawTabbedText(Segment s, int x, int y, Graphics g, TabExpander e, int startOffset)

          Draws the given text, expanding any tabs that are contained using the given tab expansion technique.
static int
getBreakLocation(Segment s, FontMetrics metrics, int x0, int x, TabExpander e, int startOffset)

          Determine where to break the given text to fit within the given span.
static int

          Determines the start of the next word for the given location.
static Element

          Determines the element to use for a paragraph/line.
static int
getPositionAbove(JTextComponent c, int offs, int x)

          Determines the position in the model that is closest to the given view location in the row above.
static int
getPositionBelow(JTextComponent c, int offs, int x)

          Determines the position in the model that is closest to the given view location in the row below.
static int

          Determine the start of the prev word for the given location.
static int
getRowEnd(JTextComponent c, int offs)

          Determines the ending row model position of the row that contains the specified model position.
static int

          Determines the starting row model position of the row that contains the specified model position.
static int
getTabbedTextOffset(Segment s, FontMetrics metrics, int x0, int x, TabExpander e, int startOffset)

          Determines the relative offset into the given text that best represents the given span in the view coordinate system.
static int
getTabbedTextOffset(Segment s, FontMetrics metrics, int x0, int x, TabExpander e, int startOffset, boolean round)

          
static int
getTabbedTextWidth(Segment s, FontMetrics metrics, int x, TabExpander e, int startOffset)

          Determines the width of the given segment of text taking tabs into consideration.
static int
getWordEnd(JTextComponent c, int offs)

          Determines the end of a word for the given location.
static int

          Determines the start of a word for the given model location.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Utilities

public Utilities()
Method Detail

drawTabbedText

public static final int drawTabbedText(Segment s,
                                       int x,
                                       int y,
                                       Graphics g,
                                       TabExpander e,
                                       int startOffset)
Draws the given text, expanding any tabs that are contained using the given tab expansion technique. This particular implementation renders in a 1.1 style coordinate system where ints are used and 72dpi is assumed.

Parameters:
s - the source of the text
x - the X origin >= 0
y - the Y origin >= 0
g - the graphics context
e - how to expand the tabs. If this value is null, tabs will be expanded as a space character.
startOffset - starting offset of the text in the document >= 0
Returns:
the X location at the end of the rendered text

getBreakLocation

public static final int getBreakLocation(Segment s,
                                         FontMetrics metrics,
                                         int x0,
                                         int x,
                                         TabExpander e,
                                         int startOffset)
Determine where to break the given text to fit within the given span. This tries to find a word boundary.

Parameters:
s - the source of the text
metrics - the font metrics to use for the calculation
x0 - the starting view location representing the start of the given text.
x - the target view location to translate to an offset into the text.
e - how to expand the tabs. If this value is null, tabs will be expanded as a space character.
startOffset - starting offset in the document of the text
Returns:
the offset into the given text

getNextWord

public static final int getNextWord(JTextComponent c,
                                    int offs)
                             throws BadLocationException
Determines the start of the next word for the given location. Uses BreakIterator.getWordInstance() to actually get the words.

Parameters:
c - the editor
offs - the offset in the document >= 0
Returns:
the location in the model of the word start >= 0
Throws:
BadLocationException - if the offset is out of range

getParagraphElement

public static final Element getParagraphElement(JTextComponent c,
                                                int offs)
Determines the element to use for a paragraph/line.

Parameters:
c - the editor
offs - the starting offset in the document >= 0
Returns:
the element

getPositionAbove

public static final int getPositionAbove(JTextComponent c,
                                         int offs,
                                         int x)
                                  throws BadLocationException
Determines the position in the model that is closest to the given view location in the row above. The component given must have a size to compute the result. If the component doesn't have a size a value of -1 will be returned.

Parameters:
c - the editor
offs - the offset in the document >= 0
x - the X coordinate >= 0
Returns:
the position >= 0 if the request can be computed, otherwise a value of -1 will be returned.
Throws:
BadLocationException - if the offset is out of range

getPositionBelow

public static final int getPositionBelow(JTextComponent c,
                                         int offs,
                                         int x)
                                  throws BadLocationException
Determines the position in the model that is closest to the given view location in the row below. The component given must have a size to compute the result. If the component doesn't have a size a value of -1 will be returned.

Parameters:
c - the editor
offs - the offset in the document >= 0
x - the X coordinate >= 0
Returns:
the position >= 0 if the request can be computed, otherwise a value of -1 will be returned.
Throws:
BadLocationException - if the offset is out of range

getPreviousWord

public static final int getPreviousWord(JTextComponent c,
                                        int offs)
                                 throws BadLocationException
Determine the start of the prev word for the given location. Uses BreakIterator.getWordInstance() to actually get the words.

Parameters:
c - the editor
offs - the offset in the document >= 0
Returns:
the location in the model of the word start >= 0
Throws:
BadLocationException - if the offset is out of range

getRowEnd

public static final int getRowEnd(JTextComponent c,
                                  int offs)
                           throws BadLocationException
Determines the ending row model position of the row that contains the specified model position. The component given must have a size to compute the result. If the component doesn't have a size a value of -1 will be returned.

Parameters:
c - the editor
offs - the offset in the document >= 0
Returns:
the position >= 0 if the request can be computed, otherwise a value of -1 will be returned.
Throws:
BadLocationException - if the offset is out of range

getRowStart

public static final int getRowStart(JTextComponent c,
                                    int offs)
                             throws BadLocationException
Determines the starting row model position of the row that contains the specified model position. The component given must have a size to compute the result. If the component doesn't have a size a value of -1 will be returned.

Parameters:
c - the editor
offs - the offset in the document >= 0
Returns:
the position >= 0 if the request can be computed, otherwise a value of -1 will be returned.
Throws:
BadLocationException - if the offset is out of range

getTabbedTextOffset

public static final int getTabbedTextOffset(Segment s,
                                            FontMetrics metrics,
                                            int x0,
                                            int x,
                                            TabExpander e,
                                            int startOffset)
Determines the relative offset into the given text that best represents the given span in the view coordinate system. This is implemented in a 1.1 style coordinate system where ints are used and 72dpi is assumed.

Parameters:
s - the source of the text
metrics - the font metrics to use for the calculation
x0 - the starting view location representing the start of the given text >= 0.
x - the target view location to translate to an offset into the text >= 0.
e - how to expand the tabs. If this value is null, tabs will be expanded as a space character.
startOffset - starting offset of the text in the document >= 0
Returns:
the offset into the text >= 0

getTabbedTextOffset

public static final int getTabbedTextOffset(Segment s,
                                            FontMetrics metrics,
                                            int x0,
                                            int x,
                                            TabExpander e,
                                            int startOffset,
                                            boolean round)
Parameters:
s
metrics
x0
x
e
startOffset
round

getTabbedTextWidth

public static final int getTabbedTextWidth(Segment s,
                                           FontMetrics metrics,
                                           int x,
                                           TabExpander e,
                                           int startOffset)
Determines the width of the given segment of text taking tabs into consideration. This is implemented in a 1.1 style coordinate system where ints are used and 72dpi is assumed.

Parameters:
s - the source of the text
metrics - the font metrics to use for the calculation
x - the X origin >= 0
e - how to expand the tabs. If this value is null, tabs will be expanded as a space character.
startOffset - starting offset of the text in the document >= 0
Returns:
the width of the text

getWordEnd

public static final int getWordEnd(JTextComponent c,
                                   int offs)
                            throws BadLocationException
Determines the end of a word for the given location. Uses BreakIterator.getWordInstance() to actually get the words.

Parameters:
c - the editor
offs - the offset in the document >= 0
Returns:
the location in the model of the word end >= 0
Throws:
BadLocationException - if the offset is out of range

getWordStart

public static final int getWordStart(JTextComponent c,
                                     int offs)
                              throws BadLocationException
Determines the start of a word for the given model location. Uses BreakIterator.getWordInstance() to actually get the words.

Parameters:
c - the editor
offs - the offset in the document >= 0
Returns:
the location in the model of the word start >= 0
Throws:
BadLocationException - if the offset is out of range


This documentation differs from the official API. Jadeite adds extra features to the API including: variable font sizes, constructions examples, placeholders for classes and methods, and auto-generated “See Also” links. Additionally it is missing some items found in standard Javadoc documentation, including: generics type information, “Deprecated” tags and comments, “See Also” links, along with other minor differences. Please send any questions or feedback to bam@cs.cmu.edu.
This page displays the Jadeite version of the documention, which is derived from the offical documentation that contains this copyright notice:
Copyright 2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.
The official Sun™ documentation can be found here at http://java.sun.com/javase/6/docs/api/.