Package com.jgoodies.forms.layout
Class ColumnSpec
- java.lang.Object
-
- com.jgoodies.forms.layout.FormSpec
-
- com.jgoodies.forms.layout.ColumnSpec
-
- All Implemented Interfaces:
java.io.Serializable
public final class ColumnSpec extends FormSpec
Specifies columns in FormLayout by their default orientation, start size and resizing behavior.Examples:
The following examples specify a column with FILL alignment, a size of 10 dlu that won't grow.new ColumnSpec(Sizes.dluX(10)); new ColumnSpec(ColumnSpec.FILL, Sizes.dluX(10), 0.0); new ColumnSpec(ColumnSpec.FILL, Sizes.dluX(10), ColumnSpec.NO_GROW); ColumnSpec.parse("10dlu"); ColumnSpec.parse("10dlu:0"); ColumnSpec.parse("fill:10dlu:0");
The
FormSpecs
provides predefined frequently used ColumnSpec instances.- Version:
- $Revision: 1.20 $
- See Also:
FormSpecs
, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.jgoodies.forms.layout.FormSpec
FormSpec.DefaultAlignment
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.Map<java.lang.String,ColumnSpec>
CACHE
Maps encoded column specifications to ColumnSpec instances.static FormSpec.DefaultAlignment
CENTER
By default put the components in the center.static FormSpec.DefaultAlignment
DEFAULT
Unless overridden the default alignment for a column is FILL.static FormSpec.DefaultAlignment
FILL
By default fill the component into the column.static FormSpec.DefaultAlignment
LEFT
By default put components in the left.static FormSpec.DefaultAlignment
NONE
A special alignment value for table column alignment specifications.static FormSpec.DefaultAlignment
RIGHT
By default put components in the right.-
Fields inherited from class com.jgoodies.forms.layout.FormSpec
BOTTOM_ALIGN, CENTER_ALIGN, DEFAULT_GROW, FILL_ALIGN, LEFT_ALIGN, NO_ALIGN, NO_GROW, RIGHT_ALIGN, TOP_ALIGN
-
-
Constructor Summary
Constructors Modifier Constructor Description ColumnSpec(FormSpec.DefaultAlignment defaultAlignment, Size size, double resizeWeight)
Constructs a ColumnSpec for the given default alignment, size and resize weight.ColumnSpec(Size size)
Constructs a ColumnSpec for the given size using the default alignment, and no resizing.private
ColumnSpec(java.lang.String encodedDescription)
Constructs a ColumnSpec from the specified encoded description.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ColumnSpec
createGap(ConstantSize gapWidth)
Creates and returns aColumnSpec
that represents a gap with the specifiedConstantSize
.static ColumnSpec
decode(java.lang.String encodedColumnSpec)
Parses the encoded column specification and returns a ColumnSpec object that represents the string.static ColumnSpec
decode(java.lang.String encodedColumnSpec, LayoutMap layoutMap)
Parses the encoded column specifications and returns a ColumnSpec object that represents the string.(package private) static ColumnSpec
decodeExpanded(java.lang.String expandedTrimmedLowerCaseSpec)
Decodes an expanded, trimmed, lower case column spec.static ColumnSpec[]
decodeSpecs(java.lang.String encodedColumnSpecs)
Parses and splits encoded column specifications using the defaultLayoutMap
and returns an array of ColumnSpec objects.static ColumnSpec[]
decodeSpecs(java.lang.String encodedColumnSpecs, LayoutMap layoutMap)
Splits and parses the encoded column specifications using the givenLayoutMap
and returns an array of ColumnSpec objects.protected boolean
isHorizontal()
Returns if this is a horizontal specification (vs.-
Methods inherited from class com.jgoodies.forms.layout.FormSpec
canGrow, encode, getDefaultAlignment, getDefaultAlignmentExplictlySet, getResizeWeight, getSize, maximumSize, setDefaultAlignment, setResizeWeight, setSize, toShortString, toString
-
-
-
-
Field Detail
-
LEFT
public static final FormSpec.DefaultAlignment LEFT
By default put components in the left.
-
CENTER
public static final FormSpec.DefaultAlignment CENTER
By default put the components in the center.
-
RIGHT
public static final FormSpec.DefaultAlignment RIGHT
By default put components in the right.
-
FILL
public static final FormSpec.DefaultAlignment FILL
By default fill the component into the column.
-
NONE
public static final FormSpec.DefaultAlignment NONE
A special alignment value for table column alignment specifications. Some cell renderers shall not be aligned during the renderer preparation.- Since:
- 1.8
-
DEFAULT
public static final FormSpec.DefaultAlignment DEFAULT
Unless overridden the default alignment for a column is FILL.
-
CACHE
private static final java.util.Map<java.lang.String,ColumnSpec> CACHE
Maps encoded column specifications to ColumnSpec instances.
-
-
Constructor Detail
-
ColumnSpec
public ColumnSpec(FormSpec.DefaultAlignment defaultAlignment, Size size, double resizeWeight)
Constructs a ColumnSpec for the given default alignment, size and resize weight.The resize weight must be a non-negative double; you can use
NO_GROW
as a convenience value for no resize.- Parameters:
defaultAlignment
- the column's default alignmentsize
- constant, component size or bounded sizeresizeWeight
- the column's non-negative resize weight- Throws:
java.lang.NullPointerException
- if thesize
isnull
java.lang.IllegalArgumentException
- if the size is invalid or theresizeWeight
is negative
-
ColumnSpec
public ColumnSpec(Size size)
Constructs a ColumnSpec for the given size using the default alignment, and no resizing.- Parameters:
size
- constant size, component size, or bounded size- Throws:
java.lang.IllegalArgumentException
- if the size is invalid
-
ColumnSpec
private ColumnSpec(java.lang.String encodedDescription)
Constructs a ColumnSpec from the specified encoded description. The description will be parsed to set initial values.Unlike the factory method
decode(String)
, this constructor does not expand layout variables, and it cannot vend cached objects.- Parameters:
encodedDescription
- the encoded description
-
-
Method Detail
-
createGap
public static ColumnSpec createGap(ConstantSize gapWidth)
Creates and returns aColumnSpec
that represents a gap with the specifiedConstantSize
.- Parameters:
gapWidth
- specifies the gap width- Returns:
- a ColumnSpec that describes a horizontal gap
- Throws:
java.lang.NullPointerException
- ifgapWidth
isnull
- Since:
- 1.2
-
decode
public static ColumnSpec decode(java.lang.String encodedColumnSpec)
Parses the encoded column specification and returns a ColumnSpec object that represents the string. Variables are expanded using the default LayoutMap.- Parameters:
encodedColumnSpec
- the encoded column specification- Returns:
- a ColumnSpec instance for the given specification
- Throws:
java.lang.NullPointerException
- ifencodedColumnSpec
isnull
- Since:
- 1.2
- See Also:
decode(String, LayoutMap)
,LayoutMap.getRoot()
-
decode
public static ColumnSpec decode(java.lang.String encodedColumnSpec, LayoutMap layoutMap)
Parses the encoded column specifications and returns a ColumnSpec object that represents the string. Variables are expanded using the given LayoutMap.- Parameters:
encodedColumnSpec
- the encoded column specificationlayoutMap
- expands layout column variables- Returns:
- a ColumnSpec instance for the given specification
- Throws:
java.lang.NullPointerException
- ifencodedColumnSpec
orlayoutMap
isnull
java.lang.IllegalArgumentException
- ifencodedColumnSpec
is empty or whitespace- Since:
- 1.2
- See Also:
decodeSpecs(String, LayoutMap)
-
decodeExpanded
static ColumnSpec decodeExpanded(java.lang.String expandedTrimmedLowerCaseSpec)
Decodes an expanded, trimmed, lower case column spec. Called by the public ColumnSpec factory methods. Looks up and returns the ColumnSpec object from the cache - if any, or constructs and returns a new ColumnSpec instance.- Parameters:
expandedTrimmedLowerCaseSpec
- the encoded column specification- Returns:
- a ColumnSpec for the given encoded column spec
-
decodeSpecs
public static ColumnSpec[] decodeSpecs(java.lang.String encodedColumnSpecs)
Parses and splits encoded column specifications using the defaultLayoutMap
and returns an array of ColumnSpec objects.- Parameters:
encodedColumnSpecs
- comma separated encoded column specifications- Returns:
- an array of decoded column specifications
- Throws:
java.lang.NullPointerException
- ifencodedColumnSpecs
isnull
- See Also:
decodeSpecs(String, LayoutMap)
,decode(String)
,LayoutMap.getRoot()
-
decodeSpecs
public static ColumnSpec[] decodeSpecs(java.lang.String encodedColumnSpecs, LayoutMap layoutMap)
Splits and parses the encoded column specifications using the givenLayoutMap
and returns an array of ColumnSpec objects.- Parameters:
encodedColumnSpecs
- comma separated encoded column specificationslayoutMap
- expands layout column variables- Returns:
- an array of decoded column specifications
- Throws:
java.lang.NullPointerException
- ifencodedColumnSpecs
orlayoutMap
isnull
- Since:
- 1.2
- See Also:
decodeSpecs(String)
,decode(String, LayoutMap)
-
isHorizontal
protected boolean isHorizontal()
Returns if this is a horizontal specification (vs. vertical). Used to distinct between horizontal and vertical dialog units, which have different conversion factors.- Specified by:
isHorizontal
in classFormSpec
- Returns:
- always
true
(for horizontal)
-
-