ch.randelshofer.quaqua
Class QuaquaLayoutStyle
java.lang.Object
javax.swing.LayoutStyle
ch.randelshofer.quaqua.QuaquaLayoutStyle
public class QuaquaLayoutStyle
- extends javax.swing.LayoutStyle
A QuaquaLayoutStyle can be queried for the preferred gaps between two
JComponents, or between a JComponent and a parent Container.
- Version:
- $Id: QuaquaLayoutStyle.java 361 2010-11-21 11:19:20Z wrandelshofer $
- Author:
- Werner Randelshofer
Nested classes/interfaces inherited from class javax.swing.LayoutStyle |
javax.swing.LayoutStyle.ComponentPlacement |
Method Summary |
int |
getContainerGap(javax.swing.JComponent component,
int position,
java.awt.Container parent)
Returns the amount of space to position a component inside its
parent. |
int |
getPreferredGap(javax.swing.JComponent component1,
javax.swing.JComponent component2,
javax.swing.LayoutStyle.ComponentPlacement type,
int position,
java.awt.Container parent)
Returns the amount of space to use between two components. |
Methods inherited from class javax.swing.LayoutStyle |
getInstance, setInstance |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
QuaquaLayoutStyle
public QuaquaLayoutStyle()
- Creates a new instance.
getPreferredGap
public int getPreferredGap(javax.swing.JComponent component1,
javax.swing.JComponent component2,
javax.swing.LayoutStyle.ComponentPlacement type,
int position,
java.awt.Container parent)
- Returns the amount of space to use between two components.
The return value indicates the distance to place
component2
relative to component1
.
For example, the following returns the amount of space to place
between component2
and component1
when component2
is placed vertically above
component1
:
int gap = getPreferredGap(component1, component2,
LayoutStyle.RELATED,
SwingConstants.NORTH, parent);
The type
parameter indicates the type
of gap being requested. It can be one of the following values:
RELATED
| If the two components will be contained in
the same parent and are showing similar logically related
items, use RELATED .
|
UNRELATED
| If the two components will be
contained in the same parent but show logically unrelated items
use UNRELATED .
|
INDENT
| Used to obtain the preferred distance to indent a component
relative to another. For example, if you want to horizontally
indent a JCheckBox relative to a JLabel use INDENT .
This is only useful for the horizontal axis.
|
It's important to note that some look and feels may not distinguish
between RELATED
and UNRELATED
.
The return value is not intended to take into account the
current size and position of component2
or
component1
. The return value may take into
consideration various properties of the components. For
example, the space may vary based on font size, or the preferred
size of the component.
- Specified by:
getPreferredGap
in class javax.swing.LayoutStyle
- Parameters:
component1
- the JComponent
component2
is being placed relative tocomponent2
- the JComponent
being placedtype
- how the two components are being placedposition
- the position component2
is being placed
relative to component1
; one of
SwingConstants.NORTH
,
SwingConstants.SOUTH
,
SwingConstants.EAST
or
SwingConstants.WEST
parent
- the parent of component2
; this may differ
from the actual parent and may be null
- Returns:
- the amount of space to place between the two components
- Throws:
java.lang.IllegalArgumentException
- if position
is not
one of SwingConstants.NORTH
,
SwingConstants.SOUTH
,
SwingConstants.EAST
or
SwingConstants.WEST
; type
not one
of INDENT
, RELATED
or UNRELATED
; or component1
or
component2
is null
getContainerGap
public int getContainerGap(javax.swing.JComponent component,
int position,
java.awt.Container parent)
- Returns the amount of space to position a component inside its
parent.
- Specified by:
getContainerGap
in class javax.swing.LayoutStyle
- Parameters:
component
- the Component
being positionedposition
- the position component
is being placed
relative to its parent; one of
SwingConstants.NORTH
,
SwingConstants.SOUTH
,
SwingConstants.EAST
or
SwingConstants.WEST
parent
- the parent of component
; this may differ
from the actual parent and may be null
- Returns:
- the amount of space to place between the component and specified
edge
- Throws:
java.lang.IllegalArgumentException
- if position
is not
one of SwingConstants.NORTH
,
SwingConstants.SOUTH
,
SwingConstants.EAST
or
SwingConstants.WEST
;
or component
is null