Class 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 FormFactory provides predefined frequently used ColumnSpec instances.

    Version:
    $Revision: 1.17 $
    Author:
    Karsten Lentzsch
    See Also:
    FormFactory, Serialized Form
    • 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 alignment
        size - constant, component size or bounded size
        resizeWeight - the column's non-negative resize weight
        Throws:
        java.lang.NullPointerException - if the size is null
        java.lang.IllegalArgumentException - if the size is invalid or the resizeWeight 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

        public ColumnSpec​(java.lang.String encodedDescription)
        Deprecated.
        Replaced by decode(String)
        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.

        Note: This constructor will become private in the next Forms version.

        Parameters:
        encodedDescription - the encoded description
    • Method Detail

      • createGap

        public static ColumnSpec createGap​(ConstantSize gapWidth)
        Creates and returns a ColumnSpec that represents a gap with the specified ConstantSize.
        Parameters:
        gapWidth - specifies the gap width
        Returns:
        a ColumnSpec that describes a horizontal gap
        Throws:
        java.lang.NullPointerException - if gapWidth is null
        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 - if encodedColumnSpec is null
        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 specification
        layoutMap - expands layout column variables
        Returns:
        a ColumnSpec instance for the given specification
        Throws:
        java.lang.NullPointerException - if encodedColumnSpec or layoutMap is null
        Since:
        1.2
        See Also:
        decodeSpecs(String, LayoutMap)
      • decodeSpecs

        public static ColumnSpec[] decodeSpecs​(java.lang.String encodedColumnSpecs)
        Parses and splits encoded column specifications using the default LayoutMap 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 - if encodedColumnSpecs is null
        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 given LayoutMap and returns an array of ColumnSpec objects.
        Parameters:
        encodedColumnSpecs - comma separated encoded column specifications
        layoutMap - expands layout column variables
        Returns:
        an array of decoded column specifications
        Throws:
        java.lang.NullPointerException - if encodedColumnSpecs or layoutMap is null
        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.
        Returns:
        always true (for horizontal)