Eclipse Draw2d 3.2

## org.eclipse.draw2d.text
Class TextFlow

    java.lang.Object
      org.eclipse.draw2d.Figure
          org.eclipse.draw2d.text.FlowFigure
              org.eclipse.draw2d.text.InlineFlow
                  org.eclipse.draw2d.text.TextFlow

All Implemented Interfaces:
  IFigure

public class TextFlow
extends InlineFlow

An inline flow figure that renders a string of text across one or more lines. A TextFlow can not contain children. All `InlineFlow` figure's must be parented by a `FlowFigure`.

WARNING: This class is not intended to be subclassed by clients.

Since:
  2.1

Nested Class Summary

Nested classes inherited from class org.eclipse.draw2d.Figure
`Figure.FigureIterator, Figure.IdentitySearch`

Nested classes inherited from class org.eclipse.draw2d.IFigure
`IFigure.NoInsets`

Field Summary

Fields inherited from class org.eclipse.draw2d.text.FlowFigure
`selectionStart`

Fields inherited from class org.eclipse.draw2d.Figure
`bgColor, border, bounds, fgColor, flags, font, MAX_FLAG, maxSize, minSize, NO_MANAGER, prefSize, toolTip`

Fields inherited from interface org.eclipse.draw2d.IFigure
`MAX_DIMENSION, MIN_DIMENSION, NO_INSETS`

Constructor Summary
`TextFlow()` Constructs a new TextFlow with the empty String.
`TextFlow(String s)` Constructs a new TextFlow with the specified String.

Method Summary
`boolean` `addLeadingWordRequirements(int[] width)` Returns the width of the text until the first line-break.
`protected void` `contributeBidi(BidiProcessor proc)` A TextFlow contributes its text.
`protected FlowFigureLayout` `createDefaultFlowLayout()` Creates the default layout manager
`BidiInfo` `getBidiInfo()` Returns the BidiInfo for this figure or `null`.
`CaretInfo` `getCaretPlacement(int offset, boolean trailing)` Returns the CaretInfo in absolute coordinates.
`int` `getFirstOffsetForLine(int baseline)` Returns the minimum character offset which is on the given baseline y-coordinate.
`int` `getLastOffsetForLine(int baseline)` Returns the maximum offset for a character which is on the given baseline y-coordinate.
`int` `getNextOffset(Point p, boolean down, int[] trailing)` Returns the offset nearest the given point either up or down one line.
`int` `getNextVisibleOffset(int offset)` Returns the next offset which is visible in at least one fragment or -1 if there is not one.
`int` `getOffset(Point p, int[] trailing, Dimension proximity)` Returns the offset of the character directly below or nearest the given location.
`int` `getPreviousVisibleOffset(int offset)` Returns the previous offset which is visible in at least one fragment or -1 if there is not one.
`String` `getText()`
`boolean` `isTextTruncated()` Returns `true` if a portion if the text is truncated using ellipses ("...").
`protected void` `paintFigure(Graphics g)` Paints this Figure's primary representation, or background.
`protected void` `paintSelection(Graphics graphics)` Renders the XOR selection rectangles to the graphics.
`void` `setBidiInfo(BidiInfo info)` Sets the bidi information for this figure.
`void` `setSelection(int start, int end)` Sets the extent of selection.
`void` `setText(String s)` Sets the text being displayed.
`String` `toString()`

Methods inherited from class org.eclipse.draw2d.text.InlineFlow
`containsPoint, getFragments, paintBorder, postValidate, setBorder`

Methods inherited from class org.eclipse.draw2d.text.FlowFigure
`add, remove, revalidateBidi, setBounds, setFlowContext`

Methods inherited from class org.eclipse.draw2d.Figure

`add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addListener, addMouseListener, addMouseMotionListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, containsPoint, erase, findDescendantAtExcluding, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, findMouseEventTargetInDescendantsAt, fireCoordinateSystemChanged, fireFigureMoved, fireMoved, firePropertyChange, firePropertyChange, firePropertyChange, getBackgroundColor, getBorder, getBounds, getChildren, getClientArea, getClientArea, getCursor, getFlag, getFont, getForegroundColor, getInsets, getLayoutManager, getListeners, getLocalBackgroundColor, getLocalFont, getLocalForegroundColor, getLocation, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isMouseEventTarget, isOpaque, isRequestFocusEnabled, isShowing, isValid, isValidationRoot, isVisible, layout, paint, paintChildren, paintClientArea, primTranslate, removeAll, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, revalidate, setBackgroundColor, setChildrenDirection, setChildrenEnabled, setChildrenOrientation, setConstraint, setCursor, setEnabled, setFlag, setFocusTraversable, setFont, setForegroundColor, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setValid, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, useLocalCoordinates, validate`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### TextFlow

    public TextFlow()

  Constructs a new TextFlow with the empty String.

See Also:
  `Object.Object()`

### TextFlow

    public TextFlow(String s)

  Constructs a new TextFlow with the specified String.

Parameters:
  `s` - the string

Method Detail

### addLeadingWordRequirements

    public boolean addLeadingWordRequirements(int[] width)

  Returns the width of the text until the first line-break.

  Overrides:
    `addLeadingWordRequirements` in class `InlineFlow`
  See Also:
    `FlowFigure.addLeadingWordRequirements(int[])`

### contributeBidi

    protected void contributeBidi(BidiProcessor proc)

  A TextFlow contributes its text.

  Overrides:
    `contributeBidi` in class `FlowFigure`
  Parameters:
    `proc` - the BidiProcessor to which contributions should be made
  See Also:
    `FlowFigure.contributeBidi(org.eclipse.draw2d.text.BidiProcessor)`

### createDefaultFlowLayout

    protected FlowFigureLayout createDefaultFlowLayout()

  Description copied from class: `FlowFigure`
  Creates the default layout manager

  Overrides:
    `createDefaultFlowLayout` in class `InlineFlow`
  See Also:
    `InlineFlow.createDefaultFlowLayout()`

### getBidiInfo

    public BidiInfo getBidiInfo()

  Returns the BidiInfo for this figure or `null`.

  Returns:
    `null` or the info
  Since:
    3.1

### getCaretPlacement

    public CaretInfo getCaretPlacement(int offset,
                                       boolean trailing)

  Returns the CaretInfo in absolute coordinates. The offset must be between 0 and the length of the String being displayed.

  Parameters:
    `offset` - the location in this figure's text
    `trailing` - true if the caret is being placed after the offset
  Returns:
    the caret bounds relative to this figure
  Throws:
    `IllegalArgumentException` - If the offset is not between `0` and the length of the string inclusively
  Since:
    3.1

### getFirstOffsetForLine

    public int getFirstOffsetForLine(int baseline)

  Returns the minimum character offset which is on the given baseline y-coordinate. The y location should be relative to this figure. The return value will be between 0 and N-1. If no fragment is located on the baseline, `-1` is returned.

  Parameters:
    `baseline` - the relative baseline coordinate
  Returns:
    -1 or the lowest offset for the line
  Since:
    3.1

### getLastOffsetForLine

    public int getLastOffsetForLine(int baseline)

  Returns the maximum offset for a character which is on the given baseline y-coordinate. The y location should be relative to this figure. The return value will be between 0 and N-1. If no fragment is located on the baseline, `-1` is returned.

  Parameters:
    `baseline` - the relative baseline coordinate
  Returns:
    -1 or the highest offset at the given baseline
  Since:
    3.1

### getNextOffset

    public int getNextOffset(Point p,
                             boolean down,
                             int[] trailing)

  Returns the offset nearest the given point either up or down one line. If no offset is found, -1 is returned. `trailing[0]` will be set to 1 if the reference point is closer to the trailing edge of the offset than it is to the leading edge.

  Parameters:
    `p` - a reference point
    `down` - `true` if the search is down
    `trailing` - an int array
  Returns:
    the next offset or `-1`
  Since:
    3.1

### getNextVisibleOffset

    public int getNextVisibleOffset(int offset)

  Returns the next offset which is visible in at least one fragment or -1 if there is not one. A visible offset means that the character or the one preceding it is displayed, which implies that a caret can be positioned at such an offset. This is useful for advancing a caret past characters which resulted in a line wrap.

  Parameters:
    `offset` - the reference offset
  Returns:
    the next offset which is visible
  Since:
    3.1

### getOffset

    public int getOffset(Point p,
                         int[] trailing,
                         Dimension proximity)

  Returns the offset of the character directly below or nearest the given location. The point must be relative to this figure. The return value will be between 0 and N-1. If the proximity argument is not `null`, the result may also be `-1` if no offset was found within the proximity.

  For a typical character, the trailing argument will be filled in to indicate whether the point is closer to the leading edge (0) or the trailing edge (1). When the point is over a cluster composed of multiple characters, the trailing argument will be filled with the position of the character in the cluster that is closest to the point.

  If the proximity argument is not `null`, then the location may be no further than the proximity given. Passing `null` is equivalent to passing `new Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE)`. The `width` field of the proximity will contain the horizontal distance, `height` will contain vertical. Vertical proximity is more important than horizontal. The returned offset is the lowest index with minimum vertical proximity not exceeding the given limit, with horizontal proximity not exceeding the given limit. If an offset that is within the proximity is found, then the given `Dimension` will be updated to reflect the new proximity.

  Parameters:
    `p` - the point relative to this figure
    `trailing` - the trailing buffer
    `proximity` - restricts and records the distance of the returned offset
  Returns:
    the nearest offset in this figure's text
  Since:
    3.1

### getPreviousVisibleOffset

    public int getPreviousVisibleOffset(int offset)

  Returns the previous offset which is visible in at least one fragment or -1 if there is not one. See `getNextVisibleOffset(int)` for more.

  Parameters:
    `offset` - a reference offset
  Returns:
    -1 or the previous offset which is visible
  Since:
    3.1

### getText

    public String getText()

  Returns:
    the String being displayed; will not be `null`

### isTextTruncated

    public boolean isTextTruncated()

  Returns `true` if a portion if the text is truncated using ellipses ("...").

  Returns:
    `true` if the text is truncated with ellipses

### paintFigure

    protected void paintFigure(Graphics g)

  Description copied from class: `Figure`
  Paints this Figure's primary representation, or background. Changes made to the graphics to the graphics current state will not affect the subsequent calls to `Figure.paintClientArea(Graphics)` and `Figure.paintBorder(Graphics)`. Furthermore, it is safe to call `graphics.restoreState()` within this method, and doing so will restore the graphics to its original state upon entry.

  Overrides:
    `paintFigure` in class `Figure`
  Parameters:
    `g` - The Graphics used to paint
  See Also:
    `Figure.paintFigure(Graphics)`

### paintSelection

    protected void paintSelection(Graphics graphics)

  Description copied from class: `InlineFlow`
  Renders the XOR selection rectangles to the graphics.

  Overrides:
    `paintSelection` in class `InlineFlow`
  Parameters:
    `graphics` - the graphics to paint on
  See Also:
    `InlineFlow.paintSelection(org.eclipse.draw2d.Graphics)`

### setBidiInfo

    public void setBidiInfo(BidiInfo info)

  Description copied from class: `FlowFigure`
  Sets the bidi information for this figure. A flow figure contributes bidi text in `FlowFigure.contributeBidi(BidiProcessor)`. If the figure contributes text associated with it, this method is called back to indicate the bidi properties for that text within its block.

  Overrides:
    `setBidiInfo` in class `FlowFigure`
  Parameters:
    `info` - the BidiInfo for this figure
  See Also:
    `FlowFigure.setBidiInfo(org.eclipse.draw2d.text.BidiInfo)`

### setSelection

    public void setSelection(int start,
                             int end)

  Sets the extent of selection. The selection range is inclusive. For example, the range [0, 0] indicates that the first character is selected.

  Overrides:
    `setSelection` in class `FlowFigure`
  Parameters:
    `start` - the start offset
    `end` - the end offset
  Since:
    3.1

### setText

    public void setText(String s)

  Sets the text being displayed. The string may not be `null`.

  Parameters:
    `s` - The new text

### toString

    public String toString()

  See Also:
    `Object.toString()`

Eclipse Draw2d 3.2

Copyright (c) IBM Corp. and others 2000, 2006. All Rights Reserved.