com.jgoodies.forms.layout
Class ConstantSize

java.lang.Object
  extended by com.jgoodies.forms.layout.ConstantSize
All Implemented Interfaces:
Size, java.io.Serializable

public final class ConstantSize
extends java.lang.Object
implements Size, java.io.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.18 $
Author:
Karsten Lentzsch
See Also:
Size, Sizes, Serialized Form

Nested Class Summary
static class ConstantSize.Unit
          An ordinal-based serializable typesafe enumeration for units as used in instances of ConstantSize.
 
Field Summary
static ConstantSize.Unit CENTIMETER
           
static ConstantSize.Unit CM
           
static ConstantSize.Unit DIALOG_UNITS_X
           
static ConstantSize.Unit DIALOG_UNITS_Y
           
static ConstantSize.Unit DLUX
           
static ConstantSize.Unit DLUY
           
static ConstantSize.Unit IN
           
static ConstantSize.Unit INCH
           
static ConstantSize.Unit MILLIMETER
           
static ConstantSize.Unit MM
           
static ConstantSize.Unit PIXEL
           
static ConstantSize.Unit POINT
           
static ConstantSize.Unit PT
           
static ConstantSize.Unit PX
           
 
Constructor Summary
ConstantSize(double value, ConstantSize.Unit unit)
          Constructs a ConstantSize for the given size and unit.
ConstantSize(int value, ConstantSize.Unit unit)
          Constructs a ConstantSize for the given size and unit.
 
Method Summary
 boolean compressible()
          Describes if this Size can be compressed, if container space gets scarce.
 java.lang.String encode()
          Returns a parseable string representation of this constant size.
 boolean equals(java.lang.Object o)
          Indicates whether some other ConstantSize is "equal to" this one.
 int getPixelSize(java.awt.Component component)
          Converts the size if necessary and returns the value in pixels.
 ConstantSize.Unit getUnit()
          Returns this size's unit.
 double getValue()
          Returns this size's value.
 int hashCode()
          Returns a hash code value for the object.
 int maximumSize(java.awt.Container container, java.util.List components, FormLayout.Measure minMeasure, FormLayout.Measure prefMeasure, FormLayout.Measure defaultMeasure)
          Returns this size as pixel size.
 java.lang.String toString()
          Returns a string representation of this size object.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

PIXEL

public static final ConstantSize.Unit PIXEL

POINT

public static final ConstantSize.Unit POINT

DIALOG_UNITS_X

public static final ConstantSize.Unit DIALOG_UNITS_X

DIALOG_UNITS_Y

public static final ConstantSize.Unit DIALOG_UNITS_Y

MILLIMETER

public static final ConstantSize.Unit MILLIMETER

CENTIMETER

public static final ConstantSize.Unit CENTIMETER

INCH

public static final ConstantSize.Unit INCH

PX

public static final ConstantSize.Unit PX

PT

public static final ConstantSize.Unit PT

DLUX

public static final ConstantSize.Unit DLUX

DLUY

public static final ConstantSize.Unit DLUY

MM

public static final ConstantSize.Unit MM

CM

public static final ConstantSize.Unit CM

IN

public static final ConstantSize.Unit IN
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

getValue

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

Returns:
the size value
Since:
1.1

getUnit

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

Returns:
the size unit
Since:
1.1

getPixelSize

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

Parameters:
component - the associated component
Returns:
the size in pixels

maximumSize

public int maximumSize(java.awt.Container container,
                       java.util.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.

Specified by:
maximumSize in interface Size
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

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.

Specified by:
compressible in interface Size
Returns:
false
Since:
1.1

equals

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

Overrides:
equals in class java.lang.Object
Parameters:
o - the Object with which to compare
Returns:
true if this object is the same as the obj argument; false otherwise.
See Also:
Object.hashCode(), Hashtable

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.

Overrides:
hashCode in class java.lang.Object
Returns:
a hash code value for this object.
See Also:
Object.equals(java.lang.Object), Hashtable

toString

public java.lang.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.

Overrides:
toString in class java.lang.Object
Returns:
a string representation of the constant size

encode

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

Specified by:
encode in interface Size
Returns:
a String that can be parsed by the Forms parser
Since:
1.2


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