com.jgoodies.forms.layout

Class ConstantSize

public final class ConstantSize extends Object implements Size, Serializable

An implementation of the Size interface that represents constant sizes described by a value and unit, for example: 10 pixel, 15 point or 4 dialog units. You can get instances of ConstantSize using the factory methods and constants in the Sizes class. Logical constant sizes that vary with the current layout style are delivered by the LayoutStyle class.

This class supports different size units:

Unit   Abbreviation   Size
Millimetermm0.1 cm
Centimetercm10.0 mm
Inchin25.4 mm
DTP Pointpt1/72 in
Pixelpx1/(resolution in dpi) in
Dialog Unitdluhonors l&f, resolution, and dialog font size

Examples:

 Sizes.ZERO;
 Sizes.DLUX9;
 Sizes.dluX(42);
 Sizes.pixel(99);
 

Version: $Revision: 1.17 $

Author: Karsten Lentzsch

See Also: Size Sizes

Nested Class Summary
static classConstantSize.Unit
An ordinal-based serializable typesafe enumeration for units as used in instances of ConstantSize.
Field Summary
static ConstantSize.UnitCENTIMETER
static ConstantSize.UnitCM
static ConstantSize.UnitDIALOG_UNITS_X
static ConstantSize.UnitDIALOG_UNITS_Y
static ConstantSize.UnitDLUX
static ConstantSize.UnitDLUY
static ConstantSize.UnitIN
static ConstantSize.UnitINCH
static ConstantSize.UnitMILLIMETER
static ConstantSize.UnitMM
static ConstantSize.UnitPIXEL
static ConstantSize.UnitPOINT
static ConstantSize.UnitPT
static ConstantSize.UnitPX
Constructor Summary
ConstantSize(int value, ConstantSize.Unit unit)
Constructs a ConstantSize for the given size and unit.
ConstantSize(double value, ConstantSize.Unit unit)
Constructs a ConstantSize for the given size and unit.
Method Summary
booleancompressible()
Describes if this Size can be compressed, if container space gets scarce.
Stringencode()
Returns a parseable string representation of this constant size.
booleanequals(Object o)
Indicates whether some other ConstantSize is "equal to" this one.
intgetPixelSize(Component component)
Converts the size if necessary and returns the value in pixels.
ConstantSize.UnitgetUnit()
Returns this size's unit.
doublegetValue()
Returns this size's value.
inthashCode()
Returns a hash code value for the object.
intmaximumSize(Container container, List components, FormLayout.Measure minMeasure, FormLayout.Measure prefMeasure, FormLayout.Measure defaultMeasure)
Returns this size as pixel size.
StringtoString()
Returns a string representation of this size object.

Field Detail

CENTIMETER

public static final ConstantSize.Unit CENTIMETER

CM

public static final ConstantSize.Unit CM

DIALOG_UNITS_X

public static final ConstantSize.Unit DIALOG_UNITS_X

DIALOG_UNITS_Y

public static final ConstantSize.Unit DIALOG_UNITS_Y

DLUX

public static final ConstantSize.Unit DLUX

DLUY

public static final ConstantSize.Unit DLUY

IN

public static final ConstantSize.Unit IN

INCH

public static final ConstantSize.Unit INCH

MILLIMETER

public static final ConstantSize.Unit MILLIMETER

MM

public static final ConstantSize.Unit MM

PIXEL

public static final ConstantSize.Unit PIXEL

POINT

public static final ConstantSize.Unit POINT

PT

public static final ConstantSize.Unit PT

PX

public static final ConstantSize.Unit PX

Constructor Detail

ConstantSize

public ConstantSize(int value, ConstantSize.Unit unit)
Constructs a ConstantSize for the given size and unit.

Parameters: value the size value interpreted in the given units unit the size's unit

Since: 1.1

ConstantSize

public ConstantSize(double value, ConstantSize.Unit unit)
Constructs a ConstantSize for the given size and unit.

Parameters: value the size value interpreted in the given units unit the size's unit

Since: 1.1

Method Detail

compressible

public boolean compressible()
Describes if this Size can be compressed, if container space gets scarce. Used by the FormLayout size computations in #compressedSizes to check whether a column or row can be compressed or not.

ConstantSizes are incompressible.

Returns: false

Since: 1.1

encode

public String encode()
Returns a parseable string representation of this constant size.

Returns: a String that can be parsed by the Forms parser

Since: 1.2

equals

public boolean equals(Object o)
Indicates whether some other ConstantSize is "equal to" this one.

Parameters: o the Object with which to compare

Returns: true if this object is the same as the obj argument; false otherwise.

See Also: java.lang.Object#hashCode() java.util.Hashtable

getPixelSize

public int getPixelSize(Component component)
Converts the size if necessary and returns the value in pixels.

Parameters: component the associated component

Returns: the size in pixels

getUnit

public ConstantSize.Unit getUnit()
Returns this size's unit.

Returns: the size unit

Since: 1.1

getValue

public double getValue()
Returns this size's value.

Returns: the size value

Since: 1.1

hashCode

public int hashCode()
Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable.

Returns: a hash code value for this object.

See Also: java.lang.Object#equals(java.lang.Object) java.util.Hashtable

maximumSize

public int maximumSize(Container container, List components, FormLayout.Measure minMeasure, FormLayout.Measure prefMeasure, FormLayout.Measure defaultMeasure)
Returns this size as pixel size. Neither requires the component list nor the specified measures.

Invoked by FormSpec to determine the size of a column or row.

Parameters: container the layout container components the list of components used to compute the size minMeasure the measure that determines the minimum sizes prefMeasure the measure that determines the preferred sizes defaultMeasure the measure that determines the default sizes

Returns: the computed maximum size in pixel

toString

public String toString()
Returns a string representation of this size object. Note: This string representation may change at any time. It is intended for debugging purposes. For parsing, use encode instead.

Returns: a string representation of the constant size

Copyright © 2002-2008 JGoodies Karsten Lentzsch. All Rights Reserved.