Package org.eclipse.draw2d
Class FlowLayout
java.lang.Object
org.eclipse.draw2d.AbstractLayout
org.eclipse.draw2d.AbstractHintLayout
org.eclipse.draw2d.OrderedLayout
org.eclipse.draw2d.FlowLayout
- All Implemented Interfaces:
LayoutManager
Lays out children in rows or columns, wrapping when the current row/column is
filled. The aligment and spacing of rows in the parent can be configured. The
aligment and spacing of children within a row can be configured.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected class
Holds the necessary information for layout calculations. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Deprecated.static final int
Deprecated.UseOrderedLayout.ALIGN_BOTTOMRIGHT
instead.protected FlowLayout.WorkingData
protected boolean
Deprecated.protected int
Deprecated.UsegetMajorAlignment()
andsetMajorAlignment(int)
instead.protected int
Deprecated.UsegetMajorSpacing()
andsetMajorSpacing(int)
instead.protected int
Deprecated.UsegetMinorSpacing()
andsetMinorSpacing(int)
instead.Fields inherited from class org.eclipse.draw2d.OrderedLayout
ALIGN_BOTTOMRIGHT, ALIGN_CENTER, ALIGN_TOPLEFT, horizontal, HORIZONTAL, minorAlignment, transposer, VERTICAL
Fields inherited from class org.eclipse.draw2d.AbstractLayout
isObservingVisibility, preferredSize
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a FlowLayout with horizontal orientation.FlowLayout
(boolean isHorizontal) Constructs a FlowLayout whose orientation is given in the input. -
Method Summary
Modifier and TypeMethodDescriptionprotected Dimension
calculatePreferredSize
(IFigure container, int wHint, int hHint) Calculates the preferred size of the given figure, using width and height hints.protected Dimension
getChildSize
(IFigure child, int wHint, int hHint) Provides the given child's preferred size.protected int
ReturnsPositionConstants.HORIZONTAL
by default.int
Returns the alignment used for an entire row/column.int
Returns the spacing in pixels to be used between children in the direction parallel to the layout's orientation.int
Returns the spacing to be used between children within a row/column.protected void
initRow()
Initializes the state of row data, which is internal to the layout process.protected void
initVariables
(IFigure parent) Initializes state data for laying out children, based on the Figure given as input.protected boolean
isSensitiveHorizontally
(IFigure parent) Returns whether this layout manager is sensitive to changes in the horizontal hint.protected boolean
isSensitiveVertically
(IFigure parent) Returns whether this layout manager is sensitive to changes in the vertical hint.boolean
Overwritten to guarantee backwards compatibility withfill
field.void
Lays out the given figure.protected void
Layouts one row of components.protected void
setBoundsOfChild
(IFigure parent, IFigure child, Rectangle bounds) Sets the given bounds for the child figure input.void
setMajorAlignment
(int align) Sets the alignment for an entire row/column within the parent figure.void
setMajorSpacing
(int n) Sets the spacing in pixels to be used between children in the direction parallel to the layout's orientation.void
setMinorSpacing
(int n) Sets the spacing to be used between children within a row/column.void
setStretchMinorAxis
(boolean value) Overwritten to guarantee backwards compatibility withfill
field.Methods inherited from class org.eclipse.draw2d.OrderedLayout
getMinorAlignment, isHorizontal, setHorizontal, setMinorAlignment
Methods inherited from class org.eclipse.draw2d.AbstractHintLayout
calculateMinimumSize, getMinimumSize, getPreferredSize, invalidate
Methods inherited from class org.eclipse.draw2d.AbstractLayout
calculatePreferredSize, getBorderPreferredSize, getConstraint, getMinimumSize, getPreferredSize, invalidate, isObservingVisibility, remove, setConstraint, setObserveVisibility
-
Field Details
-
ALIGN_LEFTTOP
Deprecated.UseOrderedLayout.ALIGN_TOPLEFT
instead.Constant to specify components to be aligned on the left/top- See Also:
-
ALIGN_RIGHTBOTTOM
Deprecated.UseOrderedLayout.ALIGN_BOTTOMRIGHT
instead.Constant to specify components to be aligned on the right/bottom- See Also:
-
data
-
fill
Deprecated.The property that determines whether leftover space at the end of a row/column should be filled by the last item in that row/column. -
majorAlignment
Deprecated.UsegetMajorAlignment()
andsetMajorAlignment(int)
instead.The alignment along the major axis. -
majorSpacing
Deprecated.UsegetMajorSpacing()
andsetMajorSpacing(int)
instead.The spacing along the major axis. -
minorSpacing
Deprecated.UsegetMinorSpacing()
andsetMinorSpacing(int)
instead.The spacing along the minor axis.
-
-
Constructor Details
-
FlowLayout
public FlowLayout()Constructs a FlowLayout with horizontal orientation.- Since:
- 2.0
-
FlowLayout
public FlowLayout(boolean isHorizontal) Constructs a FlowLayout whose orientation is given in the input.- Parameters:
isHorizontal
-true
if the layout should be horizontal- Since:
- 2.0
-
-
Method Details
-
calculatePreferredSize
Description copied from class:AbstractLayout
Calculates the preferred size of the given figure, using width and height hints.- Specified by:
calculatePreferredSize
in classAbstractLayout
- Parameters:
container
- The figurewHint
- The width hinthHint
- The height hint- Returns:
- The preferred size
- See Also:
-
getChildSize
Provides the given child's preferred size.- Parameters:
child
- the Figure whose preferred size needs to be calculatedwHint
- the width hinthHint
- the height hint- Returns:
- the child's preferred size
-
getDefaultOrientation
protected int getDefaultOrientation()ReturnsPositionConstants.HORIZONTAL
by default.- Specified by:
getDefaultOrientation
in classOrderedLayout
- Returns:
- one of
PositionConstants.HORIZONTAL
orPositionConstants.VERTICAL
- See Also:
-
getMajorAlignment
public int getMajorAlignment()Returns the alignment used for an entire row/column.Possible values are :
- Returns:
- the major alignment
- Since:
- 2.0
-
getMajorSpacing
public int getMajorSpacing()Returns the spacing in pixels to be used between children in the direction parallel to the layout's orientation.- Returns:
- the major spacing
-
getMinorSpacing
public int getMinorSpacing()Returns the spacing to be used between children within a row/column.- Returns:
- the minor spacing
-
initRow
protected void initRow()Initializes the state of row data, which is internal to the layout process. -
initVariables
Initializes state data for laying out children, based on the Figure given as input.- Parameters:
parent
- the parent figure- Since:
- 2.0
-
isSensitiveHorizontally
Description copied from class:AbstractHintLayout
Returns whether this layout manager is sensitive to changes in the horizontal hint. By default, this method returnstrue
.- Overrides:
isSensitiveHorizontally
in classAbstractHintLayout
- Parameters:
parent
- the layout's container- Returns:
true
if this layout is sensite to horizontal hint changes- See Also:
-
isSensitiveVertically
Description copied from class:AbstractHintLayout
Returns whether this layout manager is sensitive to changes in the vertical hint. By default, this method returnstrue
.- Overrides:
isSensitiveVertically
in classAbstractHintLayout
- Parameters:
parent
- the layout's container- Returns:
true
if this layout is sensite to vertical hint changes- See Also:
-
isStretchMinorAxis
public boolean isStretchMinorAxis()Overwritten to guarantee backwards compatibility withfill
field.- Specified by:
isStretchMinorAxis
in classOrderedLayout
- Returns:
- whether children are to be stretched in the minor axis.
- See Also:
-
layout
Description copied from interface:LayoutManager
Lays out the given figure.- Parameters:
parent
- The figure- See Also:
-
layoutRow
Layouts one row of components. This is done based on the layout's orientation, minor alignment and major alignment.- Parameters:
parent
- the parent figure- Since:
- 2.0
-
setBoundsOfChild
Sets the given bounds for the child figure input.- Parameters:
parent
- the parent figurechild
- the child figurebounds
- the size of the child to be set- Since:
- 2.0
-
setMajorAlignment
public void setMajorAlignment(int align) Sets the alignment for an entire row/column within the parent figure.Possible values are :
- Parameters:
align
- the major alignment- Since:
- 2.0
-
setMajorSpacing
public void setMajorSpacing(int n) Sets the spacing in pixels to be used between children in the direction parallel to the layout's orientation.- Parameters:
n
- the major spacing- Since:
- 2.0
-
setMinorSpacing
public void setMinorSpacing(int n) Sets the spacing to be used between children within a row/column.- Parameters:
n
- the minor spacing- Since:
- 2.0
-
setStretchMinorAxis
public void setStretchMinorAxis(boolean value) Overwritten to guarantee backwards compatibility withfill
field.- Specified by:
setStretchMinorAxis
in classOrderedLayout
- Parameters:
value
- whether children should be stretched in the minor axis.- See Also:
-
OrderedLayout.ALIGN_TOPLEFT
instead.