Package org.eclipse.draw2d
Class ToolbarLayout
java.lang.Object
org.eclipse.draw2d.AbstractLayout
org.eclipse.draw2d.AbstractHintLayout
org.eclipse.draw2d.OrderedLayout
org.eclipse.draw2d.ToolbarLayout
- All Implemented Interfaces:
LayoutManager
Arranges figures in a single row or column. Orientation can be set to produce
either a row or column layout. This layout tries to fit all children within
the parent's client area. To do this, it compresses the children by some
amount, but will not compress them smaller than their minimum size. If a
child's preferred size is smaller than the row's or column's minor dimension,
the layout can be configured to stretch the child.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final boolean
Deprecated.Unused.protected boolean
Deprecated.protected int
Deprecated.UsegetSpacing()
andsetSpacing(int)
instead.static final boolean
Deprecated.Unused.Fields inherited from class org.eclipse.draw2d.OrderedLayout
ALIGN_BOTTOMRIGHT, ALIGN_CENTER, ALIGN_TOPLEFT, horizontal, minorAlignment, transposer
Fields inherited from class org.eclipse.draw2d.AbstractLayout
isObservingVisibility, preferredSize
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a vertically oriented ToolbarLayout with child spacing of 0 pixels,setStretchMinorAxis(boolean)
true
, andOrderedLayout.ALIGN_TOPLEFT
minor alignment.ToolbarLayout
(boolean isHorizontal) Constructs a ToolbarLayout with a specified orientation. -
Method Summary
Modifier and TypeMethodDescriptionprotected Dimension
calculateMinimumSize
(IFigure container, int wHint, int hHint) Calculates the minimum size of the container based on the given hints.protected Dimension
calculatePreferredSize
(IFigure container, int wHint, int hHint) Calculates the preferred size of the container based on the given hints.protected Dimension
getChildMinimumSize
(IFigure child, int wHint, int hHint) protected Dimension
getChildPreferredSize
(IFigure child, int wHint, int hHint) protected int
ReturnsPositionConstants.VERTICAL
by default.int
boolean
Deprecated.UseisStretchMinorAxis()
instead.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 withmatchWidth
field.void
Lays out the given figure.void
setMatchWidth
(boolean match) Deprecated.void
setSpacing
(int space) Sets the amount of space between children.void
setStretchMinorAxis
(boolean value) Overwritten to guarantee backwards compatibility withmatchWidth
field.void
setVertical
(boolean flag) Deprecated.UseOrderedLayout.setHorizontal(boolean)
with argumentfalse
instead.Methods inherited from class org.eclipse.draw2d.OrderedLayout
getMinorAlignment, isHorizontal, setHorizontal, setMinorAlignment
Methods inherited from class org.eclipse.draw2d.AbstractHintLayout
getMinimumSize, getPreferredSize, invalidate
Methods inherited from class org.eclipse.draw2d.AbstractLayout
calculatePreferredSize, getBorderPreferredSize, getConstraint, getMinimumSize, getPreferredSize, invalidate, isObservingVisibility, remove, setConstraint, setObserveVisibility
-
Field Details
-
HORIZONTAL
Deprecated.Unused.Constant for horizontal alignment- See Also:
-
VERTICAL
Deprecated.Unused.Constant for vertical alignment- See Also:
-
matchWidth
Deprecated.Sets whether children should "stretch" with their container -
spacing
Deprecated.UsegetSpacing()
andsetSpacing(int)
instead.Space in pixels between Figures
-
-
Constructor Details
-
ToolbarLayout
public ToolbarLayout()Constructs a vertically oriented ToolbarLayout with child spacing of 0 pixels,setStretchMinorAxis(boolean)
true
, andOrderedLayout.ALIGN_TOPLEFT
minor alignment.- Since:
- 2.0
-
ToolbarLayout
public ToolbarLayout(boolean isHorizontal) Constructs a ToolbarLayout with a specified orientation. Default values are: child spacing 0 pixels,setStretchMinorAxis(boolean)
false
, andOrderedLayout.ALIGN_TOPLEFT
alignment.- Parameters:
isHorizontal
- whether the children are oriented horizontally- Since:
- 2.0
-
-
Method Details
-
calculateMinimumSize
Calculates the minimum size of the container based on the given hints. If this is a vertically-oriented Toolbar Layout, then only the widthHint is respected (which means that the children can be as tall as they desire). In this case, the minimum width is that of the widest child, and the minimum height is the sum of the minimum heights of all children, plus the spacing between them. The border and insets of the container figure are also accounted for.- Overrides:
calculateMinimumSize
in classAbstractHintLayout
- Parameters:
container
- the figure whose minimum size has to be calculatedwHint
- the width hint (the desired width of the container)hHint
- the height hint (the desired height of the container)- Returns:
- the minimum size of the container
- Since:
- 2.1
- See Also:
-
calculatePreferredSize
Calculates the preferred size of the container based on the given hints. If this is a vertically-oriented Toolbar Layout, then only the widthHint is respected (which means that the children can be as tall as they desire). In this case, the preferred width is that of the widest child, and the preferred height is the sum of the preferred heights of all children, plus the spacing between them. The border and insets of the container figure are also accounted for.- Specified by:
calculatePreferredSize
in classAbstractLayout
- Parameters:
container
- the figure whose preferred size has to be calculatedwHint
- the width hint (the desired width of the container)hHint
- the height hint (the desired height of the container)- Returns:
- the preferred size of the container
- Since:
- 2.0
- See Also:
-
getChildMinimumSize
- Parameters:
child
- the figure whose minimum size is to be determinedwHint
- the width hinthHint
- the height hint- Returns:
- the given figure's minimum size
- Since:
- 3.3
-
getChildPreferredSize
- Parameters:
child
- the figure whose preferred size is to be determinedwHint
- the width hinthHint
- the height hint- Returns:
- given figure's preferred size
- Since:
- 3.3
-
getDefaultOrientation
protected int getDefaultOrientation()ReturnsPositionConstants.VERTICAL
by default.- Specified by:
getDefaultOrientation
in classOrderedLayout
- Returns:
- one of
PositionConstants.HORIZONTAL
orPositionConstants.VERTICAL
- See Also:
-
getSpacing
public int getSpacing()- Returns:
- the spacing between children
-
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:
-
getStretchMinorAxis
Deprecated.UseisStretchMinorAxis()
instead.Returnstrue
if stretch minor axis has been enabled. The default value is false.- Returns:
true
if stretch minor axis is enabled
-
isStretchMinorAxis
public boolean isStretchMinorAxis()Overwritten to guarantee backwards compatibility withmatchWidth
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:
-
setMatchWidth
Deprecated.Sets children's width (if vertically oriented) or height (if horizontally oriented) to stretch with their container.- Parameters:
match
- whether to stretch children- Since:
- 2.0
-
setSpacing
public void setSpacing(int space) Sets the amount of space between children.- Parameters:
space
- the amount of space between children- Since:
- 2.0
-
setStretchMinorAxis
public void setStretchMinorAxis(boolean value) Overwritten to guarantee backwards compatibility withmatchWidth
field.- Specified by:
setStretchMinorAxis
in classOrderedLayout
- Parameters:
value
- whether children should be stretched in the minor axis.- See Also:
-
setVertical
Deprecated.UseOrderedLayout.setHorizontal(boolean)
with argumentfalse
instead.Sets the orientation of the layout- Parameters:
flag
- whether the orientation should be vertical- Since:
- 2.0
-