|
org.eclipse.draw2d.text
Class FlowFigure
java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.draw2d.text.FlowFigure
-
All Implemented Interfaces:
-
IFigure
-
Direct Known Subclasses:
-
BlockFlow,
FlowAdapter,
InlineFlow
- public abstract class FlowFigure
- extends
Figure
The base implementation for text flow figures. A flow figure is used to render a
document in which elements are laid out horizontally within a "line" until that line is
filled. Layout continues on the next line.
WARNING: This class is not intended to be subclassed by clients. Future versions may
contain additional abstract methods.
-
Since:
- 2.1
Field Summary
|
protected int
|
selectionStart
integer indicating whether selection should be displayed. |
Fields inherited from class org.eclipse.draw2d.
Figure
|
bgColor,
border,
bounds,
fgColor,
flags,
font,
MAX_FLAG,
maxSize,
minSize,
NO_MANAGER,
prefSize,
toolTip
|
Constructor Summary
|
FlowFigure
()
Constructs a new FlowFigure. |
Method Summary
|
void
|
add
(
IFigure child,
java.lang.Object constraint,
int index)
If the child is a FlowFigure , its FlowContext is passed to it. |
boolean
|
addLeadingWordRequirements
(int[] width)
Calculates the width of text before the next line-break is encountered.
|
protected void
|
contributeBidi
(
BidiProcessor proc)
FlowFigures can contribute text for their block to the given
BidiProcessor ,
which will process the contributions to determine Bidi levels and shaping requirements.
|
protected abstract
FlowFigureLayout
|
createDefaultFlowLayout
()
Creates the default layout manager |
abstract void
|
postValidate
()
Called after validate has occurred. |
void
|
remove
(
IFigure figure)
Overridden to revalidateBidi when fragments are removed. |
protected void
|
revalidateBidi
(
IFigure origin)
This method should be invoked whenever a change that can potentially affect the
Bidi evaluation is made (eg., adding or removing children, changing text, etc.).
|
void
|
setBidiInfo
(
BidiInfo info)
Sets the bidi information for this figure. |
void
|
setBounds
(
Rectangle r)
FlowFigures override setBounds() to prevent translation of children. |
void
|
setFlowContext
(
FlowContext flowContext)
Sets the flow context. |
void
|
setSelection
(int start,
int end)
Sets the selection or a range of selection. |
Methods inherited from class org.eclipse.draw2d.
Figure
|
add,
add,
add,
addAncestorListener,
addCoordinateListener,
addFigureListener,
addFocusListener,
addKeyListener,
addLayoutListener,
addListener,
addMouseListener,
addMouseMotionListener,
addNotify,
addPropertyChangeListener,
addPropertyChangeListener,
containsPoint,
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,
paintBorder,
paintChildren,
paintClientArea,
paintFigure,
primTranslate,
removeAll,
removeAncestorListener,
removeCoordinateListener,
removeFigureListener,
removeFocusListener,
removeKeyListener,
removeLayoutListener,
removeListener,
removeMouseListener,
removeMouseMotionListener,
removeNotify,
removePropertyChangeListener,
removePropertyChangeListener,
repaint,
repaint,
repaint,
requestFocus,
revalidate,
setBackgroundColor,
setBorder,
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, toString, wait, wait, wait
|
selectionStart
protected int selectionStart
- integer indicating whether selection should be displayed.
FlowFigure
public FlowFigure()
- Constructs a new FlowFigure.
add
public void add(
IFigure child,
java.lang.Object constraint,
int index)
- If the child is a
FlowFigure , its FlowContext is passed to it.
-
-
Specified by:
-
add
in interface
IFigure
-
Overrides:
-
add
in class
Figure
-
-
See Also:
-
IFigure.add(IFigure, Object, int)
addLeadingWordRequirements
public boolean addLeadingWordRequirements(int[] width)
- Calculates the width of text before the next line-break is encountered.
Default implementation treats each FlowFigure as a line-break. It adds no width and
returns true . Sub-classes should override as needed.
-
-
Parameters:
-
width - the width before the next line-break (if one's found; all the width,
otherwise) will be added on to the first int in the given array
-
Returns:
- boolean indicating whether or not a line-break was found
-
Since:
- 3.1
contributeBidi
protected void contributeBidi(
BidiProcessor proc)
- FlowFigures can contribute text for their block to the given
BidiProcessor ,
which will process the contributions to determine Bidi levels and shaping requirements.
This method is invoked as part of validating Bidi.
Sub-classes that cache the BidiInfo and/or the bidi level in ContentBoxes should clear
the cached values when this method is invoked.
-
-
Parameters:
-
proc - the BidiProcessor to which contributions should be made -
Since:
- 3.1
-
See Also:
-
BidiProcessor.add(FlowFigure, String)
createDefaultFlowLayout
protected abstract
FlowFigureLayout createDefaultFlowLayout()
- Creates the default layout manager
-
-
Returns:
- The default layout
postValidate
public abstract void postValidate()
- Called after validate has occurred. This is used to update the bounds of the FlowFigure
to encompass its new flow boxed created during validate.
-
remove
public void remove(
IFigure figure)
- Overridden to revalidateBidi when fragments are removed.
-
-
Specified by:
-
remove
in interface
IFigure
-
Overrides:
-
remove
in class
Figure
-
-
Parameters:
-
figure - The Figure to remove -
See Also:
-
IFigure.remove(org.eclipse.draw2d.IFigure)
revalidateBidi
protected void revalidateBidi(
IFigure origin)
- This method should be invoked whenever a change that can potentially affect the
Bidi evaluation is made (eg., adding or removing children, changing text, etc.).
The default implementation delegates the revalidation task to the parent. Only
blocks perform the actual revalidation.
The given IFigure is the one that triggered the revalidation. This can be used to
optimize bidi evaluation.
-
-
Parameters:
-
origin - the figure that was revalidated -
Since:
- 3.1
setBidiInfo
public void setBidiInfo(
BidiInfo info)
- Sets the bidi information for this figure. A flow figure contributes bidi text in
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.
-
-
Parameters:
-
info - the BidiInfo for this figure -
Since:
- 3.1
setBounds
public void setBounds(
Rectangle r)
- FlowFigures override setBounds() to prevent translation of children. "bounds" is a
derived property for FlowFigures, calculated from the fragments that make up the
FlowFigure.
-
-
Specified by:
-
setBounds
in interface
IFigure
-
Overrides:
-
setBounds
in class
Figure
-
-
Parameters:
-
r - The new bounds -
See Also:
-
Figure.setBounds(Rectangle)
setFlowContext
public void setFlowContext(
FlowContext flowContext)
- Sets the flow context.
-
-
Parameters:
-
flowContext - the flow context for this flow figure
setSelection
public void setSelection(int start,
int end)
- Sets the selection or a range of selection. A start value of -1 is used to indicate no
selection. A start value >=0 indicates show selection. A start and end value can be
used to represent a range of offsets which should render selection.
-
-
Parameters:
-
start - the start offset -
end - the end offset -
Since:
- 3.1
Copyright (c) IBM Corp. and others 2000, 2007. All Rights Reserved.
|
|