org.eclipse.draw2d
Class ToolbarLayout
java.lang.Object
org.eclipse.draw2d.AbstractLayout
org.eclipse.draw2d.AbstractHintLayout
org.eclipse.draw2d.ToolbarLayout
-
All Implemented Interfaces:
-
LayoutManager
- public class ToolbarLayout
- extends
AbstractHintLayout
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
|
static int
|
ALIGN_BOTTOMRIGHT
Constant for bottom-right alignment |
static int
|
ALIGN_CENTER
Constant for center alignment |
static int
|
ALIGN_TOPLEFT
Constant for top-left alignment |
protected boolean
|
horizontal
Orientation of layout |
static boolean
|
HORIZONTAL
Constant for horizontal alignment |
protected boolean
|
matchWidth
Sets whether children should "stretch" with their container |
protected int
|
minorAlignment
Alignment of layout |
protected int
|
spacing
Space in pixels between Figures |
protected
Transposer
|
transposer
Transposer object used in layout calculations |
static boolean
|
VERTICAL
Constant for vertical alignment |
Constructor Summary
|
ToolbarLayout
()
Constructs a vertically oriented ToolbarLayout with child spacing of 0 pixels,
matchWidth true , and
ALIGN_TOPLEFT alignment. |
ToolbarLayout
(boolean isHorizontal)
Constructs a ToolbarLayout with a specified orientation. |
Methods inherited from class java.lang.Object
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
|
spacing
protected int spacing
- Space in pixels between Figures
matchWidth
protected boolean matchWidth
- Sets whether children should "stretch" with their container
horizontal
protected boolean horizontal
- Orientation of layout
minorAlignment
protected int minorAlignment
- Alignment of layout
ALIGN_CENTER
public static final int ALIGN_CENTER
- Constant for center alignment
-
See Also:
-
Constant Field Values
ALIGN_TOPLEFT
public static final int ALIGN_TOPLEFT
- Constant for top-left alignment
-
See Also:
-
Constant Field Values
ALIGN_BOTTOMRIGHT
public static final int ALIGN_BOTTOMRIGHT
- Constant for bottom-right alignment
-
See Also:
-
Constant Field Values
HORIZONTAL
public static final boolean HORIZONTAL
- Constant for horizontal alignment
-
See Also:
-
Constant Field Values
VERTICAL
public static final boolean VERTICAL
- Constant for vertical alignment
-
See Also:
-
Constant Field Values
transposer
protected
Transposer transposer
- Transposer object used in layout calculations
ToolbarLayout
public ToolbarLayout()
- Constructs a vertically oriented ToolbarLayout with child spacing of 0 pixels,
matchWidth
true
, and
ALIGN_TOPLEFT
alignment.
-
Since:
- 2.0
ToolbarLayout
public ToolbarLayout(boolean isHorizontal)
- Constructs a ToolbarLayout with a specified orientation. Default values are: child
spacing 0 pixels, matchWidth
false
, and
ALIGN_TOPLEFT
alignment.
-
Parameters:
-
isHorizontal
- whether the children are oriented horizontally -
Since:
- 2.0
calculateMinimumSize
protected
Dimension calculateMinimumSize(
IFigure container,
int wHint,
int hHint)
- 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 class
AbstractHintLayout
-
-
Parameters:
-
container
- the figure whose minimum size has to be calculated -
wHint
- 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:
-
AbstractHintLayout.getMinimumSize(IFigure, int, int)
calculatePreferredSize
protected
Dimension calculatePreferredSize(
IFigure container,
int wHint,
int hHint)
- 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 class
AbstractLayout
-
-
Parameters:
-
container
- the figure whose preferred size has to be calculated -
wHint
- 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:
-
AbstractHintLayout.getPreferredSize(IFigure, int, int)
getChildMinimumSize
protected
Dimension getChildMinimumSize(
IFigure child,
int wHint,
int hHint)
-
-
Parameters:
-
child
- the figure whose minimum size is to be determined -
wHint
- the width hint -
hHint
- the height hint
-
Returns:
- the given figure's minimum size
-
Since:
- 3.3
getChildPreferredSize
protected
Dimension getChildPreferredSize(
IFigure child,
int wHint,
int hHint)
-
-
Parameters:
-
child
- the figure whose preferred size is to be determined -
wHint
- the width hint -
hHint
- the height hint
-
Returns:
- given figure's preferred size
-
Since:
- 3.3
getMinorAlignment
public int getMinorAlignment()
- Returns the minor aligment of the layout. Minor minor axis is the axis perpindicular
to the overall orientation set in the contructor.
-
-
Returns:
- the minor aligment
getSpacing
public int getSpacing()
-
-
Returns:
- the spacing between children
getStretchMinorAxis
public boolean getStretchMinorAxis()
- Returns
true
if stretch minor axis has been enabled. The default value is
false.
-
-
Returns:
-
true
if stretch minor axis is enabled
isHorizontal
public boolean isHorizontal()
-
-
Returns:
- whether the orientation of the layout is horizontal
-
Since:
- 2.0
isSensitiveHorizontally
protected boolean isSensitiveHorizontally(
IFigure parent)
-
Description copied from class:
AbstractHintLayout
- Returns whether this layout manager is sensitive to changes in the horizontal hint. By
default, this method returns
true
.
-
-
Overrides:
-
isSensitiveHorizontally
in class
AbstractHintLayout
-
-
Parameters:
-
parent
- the layout's container
-
Returns:
-
true
if this layout is sensite to horizontal hint changes -
See Also:
-
AbstractHintLayout.isSensitiveHorizontally(IFigure)
isSensitiveVertically
protected boolean isSensitiveVertically(
IFigure parent)
-
Description copied from class:
AbstractHintLayout
- Returns whether this layout manager is sensitive to changes in the vertical hint. By
default, this method returns
true
.
-
-
Overrides:
-
isSensitiveVertically
in class
AbstractHintLayout
-
-
Parameters:
-
parent
- the layout's container
-
Returns:
-
true
if this layout is sensite to vertical hint changes -
See Also:
-
AbstractHintLayout.isSensitiveVertically(IFigure)
layout
public void layout(
IFigure parent)
-
Description copied from interface:
LayoutManager
- Lays out the given figure.
-
-
Parameters:
-
parent
- The figure -
See Also:
-
LayoutManager.layout(IFigure)
setMinorAlignment
public void setMinorAlignment(int align)
- Sets the alignment of the children contained in the layout. Possible values are
ALIGN_CENTER
,
ALIGN_BOTTOMRIGHT
and
ALIGN_TOPLEFT
.
-
-
Parameters:
-
align
- the minor alignment -
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
setMatchWidth
public void setMatchWidth(boolean match)
-
Deprecated. use
setStretchMinorAxis(boolean)
- 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
setStretchMinorAxis
public void setStretchMinorAxis(boolean stretch)
- Causes children that are smaller in the dimension of the minor axis to be stretched to
fill the minor axis. The minor axis is the opposite of the orientation.
-
-
Parameters:
-
stretch
- whether to stretch children -
Since:
- 2.0
setVertical
public void setVertical(boolean flag)
- Sets the orientation of the children in the ToolbarLayout.
-
-
Parameters:
-
flag
- whether the orientation should be vertical -
Since:
- 2.0
Copyright (c) IBM Corp. and others 2000, 2007. All Rights Reserved.