com.jgoodies.forms.layout

## Class ConstantSize

- java.lang.Object
- - com.jgoodies.forms.layout.ConstantSize

- All Implemented Interfaces:
    Size, Serializable

      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
  Millimeter | mm | 0.1 cm
  Centimeter | cm | 10.0 mm
  Inch | in | 25.4 mm
  DTP Point | pt | 1/72 in
  Pixel | px | 1/(resolution in dpi) in
  Dialog Unit | dlu | honors l&f, resolution, and dialog font size

  Examples:

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

  Version:
    $Revision: 1.21 $
  Author:
    Karsten Lentzsch
  See Also:
    `Size`, `Sizes`, Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `ConstantSize.Unit` An ordinal-based serializable typesafe enumeration for units as used in instances of `ConstantSize`.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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

    Constructors
    Constructor and Description
    `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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `compressible()` Describes if this Size can be compressed, if container space gets scarce.
    `String` | `encode()` Returns a parseable string representation of this constant size.
    `boolean` | `equals(Object o)` Indicates whether some other ConstantSize is "equal to" this one.
    `int` | `getPixelSize(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(Container container, List components, FormLayout.Measure minMeasure, FormLayout.Measure prefMeasure, FormLayout.Measure defaultMeasure)` Returns this size as pixel size.
    `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(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(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.

      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(Object o)

      Indicates whether some other ConstantSize is "equal to" this one.
      Overrides:
        `equals` in class `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 `Object`
      Returns:
        a hash code value for this object.
      See Also:
        `Object.equals(java.lang.Object)`, `Hashtable`

    - #### 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.
      Overrides:
        `toString` in class `Object`
      Returns:
        a string representation of the constant size

    - #### encode

          public 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-2014 JGoodies Software GmbH. All Rights Reserved.