com.google.gwt.layout.client

## Class Layout.Layer

- java.lang.Object
- - com.google.gwt.layout.client.Layout.Layer

- Enclosing class:
    Layout

      public class Layout.Layer
      extends java.lang.Object

  This class is used to set the position and size of child elements.

  Each child element has three values associated with each axis: {left, right, width} on the horizontal axis, and {top, bottom, height} on the vertical axis. Precisely two of three values may be set at a time, or the system will be over- or under-contrained. For this reason, the following methods are provided for setting these values:

  - `setLeftRight(double, com.google.gwt.dom.client.Style.Unit, double, com.google.gwt.dom.client.Style.Unit)`
  - `setLeftWidth(double, com.google.gwt.dom.client.Style.Unit, double, com.google.gwt.dom.client.Style.Unit)`
  - `setRightWidth(double, com.google.gwt.dom.client.Style.Unit, double, com.google.gwt.dom.client.Style.Unit)`
  - `setTopBottom(double, com.google.gwt.dom.client.Style.Unit, double, com.google.gwt.dom.client.Style.Unit)`
  - `setTopHeight(double, com.google.gwt.dom.client.Style.Unit, double, com.google.gwt.dom.client.Style.Unit)`
  - `setBottomHeight(double, com.google.gwt.dom.client.Style.Unit, double, com.google.gwt.dom.client.Style.Unit)`

  By default, each layer is set to fill the entire parent (i.e., {left, top, right, bottom} = {0, 0, 0, 0}).

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `(package private) double` | `bottom`
    `(package private) Style.Unit` | `bottomUnit`
    `(package private) Element` | `child`
    `(package private) Element` | `container`
    `(package private) double` | `height`
    `(package private) Style.Unit` | `heightUnit`
    `(package private) Layout.Alignment` | `hPos`
    `(package private) double` | `left`
    `(package private) Style.Unit` | `leftUnit`
    `(package private) double` | `right`
    `(package private) Style.Unit` | `rightUnit`
    `(package private) boolean` | `setBottom`
    `(package private) boolean` | `setHeight`
    `(package private) boolean` | `setLeft`
    `(package private) boolean` | `setRight`
    `(package private) boolean` | `setTargetBottom`
    `(package private) boolean` | `setTargetHeight`
    `(package private) boolean` | `setTargetLeft`
    `(package private) boolean` | `setTargetRight`
    `(package private) boolean` | `setTargetTop`
    `(package private) boolean` | `setTargetWidth`
    `(package private) boolean` | `setTop`
    `(package private) boolean` | `setWidth`
    `(package private) double` | `sourceBottom`
    `(package private) double` | `sourceHeight`
    `(package private) double` | `sourceLeft`
    `(package private) double` | `sourceRight`
    `(package private) double` | `sourceTop`
    `(package private) double` | `sourceWidth`
    `(package private) double` | `targetBottom`
    `(package private) Style.Unit` | `targetBottomUnit`
    `(package private) double` | `targetHeight`
    `(package private) Style.Unit` | `targetHeightUnit`
    `(package private) double` | `targetLeft`
    `(package private) Style.Unit` | `targetLeftUnit`
    `(package private) double` | `targetRight`
    `(package private) Style.Unit` | `targetRightUnit`
    `(package private) double` | `targetTop`
    `(package private) Style.Unit` | `targetTopUnit`
    `(package private) double` | `targetWidth`
    `(package private) Style.Unit` | `targetWidthUnit`
    `(package private) double` | `top`
    `(package private) Style.Unit` | `topUnit`
    `(package private) java.lang.Object` | `userObject`
    `(package private) boolean` | `visible`
    `(package private) Layout.Alignment` | `vPos`
    `(package private) double` | `width`
    `(package private) Style.Unit` | `widthUnit`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Layer(Element container, Element child, java.lang.Object userObject)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Element` | `getContainerElement()` Gets the container element associated with this layer.
    `java.lang.Object` | `getUserObject()` Gets the user-data associated with this layer.
    `void` | `setBottomHeight(double bottom, Style.Unit bottomUnit, double height, Style.Unit heightUnit)` Sets the layer's bottom and height values.
    `void` | `setChildHorizontalPosition(Layout.Alignment position)` Sets the child element's horizontal position within the layer.
    `void` | `setChildVerticalPosition(Layout.Alignment position)` Sets the child element's vertical position within the layer.
    `void` | `setLeftRight(double left, Style.Unit leftUnit, double right, Style.Unit rightUnit)` Sets the layer's left and right values.
    `void` | `setLeftWidth(double left, Style.Unit leftUnit, double width, Style.Unit widthUnit)` Sets the layer's left and width values.
    `void` | `setRightWidth(double right, Style.Unit rightUnit, double width, Style.Unit widthUnit)` Sets the layer's right and width values.
    `void` | `setTopBottom(double top, Style.Unit topUnit, double bottom, Style.Unit bottomUnit)` Sets the layer's top and bottom values.
    `void` | `setTopHeight(double top, Style.Unit topUnit, double height, Style.Unit heightUnit)` Sets the layer's top and height values.
    `void` | `setVisible(boolean visible)` Sets the layer's visibility.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### container

          final Element container

    - #### child

          final Element child

    - #### userObject

          java.lang.Object userObject

    - #### setLeft

          boolean setLeft

    - #### setRight

          boolean setRight

    - #### setTop

          boolean setTop

    - #### setBottom

          boolean setBottom

    - #### setWidth

          boolean setWidth

    - #### setHeight

          boolean setHeight

    - #### setTargetLeft

          boolean setTargetLeft

    - #### setTargetRight

          boolean setTargetRight

    - #### setTargetTop

          boolean setTargetTop

    - #### setTargetBottom

          boolean setTargetBottom

    - #### setTargetWidth

          boolean setTargetWidth

    - #### setTargetHeight

          boolean setTargetHeight

    - #### leftUnit

          Style.Unit leftUnit

    - #### topUnit

          Style.Unit topUnit

    - #### rightUnit

          Style.Unit rightUnit

    - #### bottomUnit

          Style.Unit bottomUnit

    - #### widthUnit

          Style.Unit widthUnit

    - #### heightUnit

          Style.Unit heightUnit

    - #### targetLeftUnit

          Style.Unit targetLeftUnit

    - #### targetTopUnit

          Style.Unit targetTopUnit

    - #### targetRightUnit

          Style.Unit targetRightUnit

    - #### targetBottomUnit

          Style.Unit targetBottomUnit

    - #### targetWidthUnit

          Style.Unit targetWidthUnit

    - #### targetHeightUnit

          Style.Unit targetHeightUnit

    - #### left

          double left

    - #### top

          double top

    - #### right

          double right

    - #### bottom

          double bottom

    - #### width

          double width

    - #### height

          double height

    - #### sourceLeft

          double sourceLeft

    - #### sourceTop

          double sourceTop

    - #### sourceRight

          double sourceRight

    - #### sourceBottom

          double sourceBottom

    - #### sourceWidth

          double sourceWidth

    - #### sourceHeight

          double sourceHeight

    - #### targetLeft

          double targetLeft

    - #### targetTop

          double targetTop

    - #### targetRight

          double targetRight

    - #### targetBottom

          double targetBottom

    - #### targetWidth

          double targetWidth

    - #### targetHeight

          double targetHeight

    - #### hPos

          Layout.Alignment hPos

    - #### vPos

          Layout.Alignment vPos

    - #### visible

          boolean visible

  - ### Constructor Detail

    - #### Layer

          Layer(Element container,
                Element child,
                java.lang.Object userObject)

  - ### Method Detail

    - #### getContainerElement

          public Element getContainerElement()

      Gets the container element associated with this layer.

      This is the element that sits between the parent and child elements. It is normally necessary to operate on this element only when you need to modify CSS properties that are not directly modeled by the Layer class.

      Returns:
        the container element

    - #### getUserObject

          public java.lang.Object getUserObject()

      Gets the user-data associated with this layer.
      Returns:
        the layer's user-data object

    - #### setBottomHeight

          public void setBottomHeight(double bottom,
                                      Style.Unit bottomUnit,
                                      double height,
                                      Style.Unit heightUnit)

      Sets the layer's bottom and height values.
      Parameters:
        `bottom` -
        `bottomUnit` -
        `height` -
        `heightUnit` -

    - #### setChildHorizontalPosition

          public void setChildHorizontalPosition(Layout.Alignment position)

      Sets the child element's horizontal position within the layer.
      Parameters:
        `position` -

    - #### setChildVerticalPosition

          public void setChildVerticalPosition(Layout.Alignment position)

      Sets the child element's vertical position within the layer.
      Parameters:
        `position` -

    - #### setLeftRight

          public void setLeftRight(double left,
                                   Style.Unit leftUnit,
                                   double right,
                                   Style.Unit rightUnit)

      Sets the layer's left and right values.
      Parameters:
        `left` -
        `leftUnit` -
        `right` -
        `rightUnit` -

    - #### setLeftWidth

          public void setLeftWidth(double left,
                                   Style.Unit leftUnit,
                                   double width,
                                   Style.Unit widthUnit)

      Sets the layer's left and width values.
      Parameters:
        `left` -
        `leftUnit` -
        `width` -
        `widthUnit` -

    - #### setRightWidth

          public void setRightWidth(double right,
                                    Style.Unit rightUnit,
                                    double width,
                                    Style.Unit widthUnit)

      Sets the layer's right and width values.
      Parameters:
        `right` -
        `rightUnit` -
        `width` -
        `widthUnit` -

    - #### setTopBottom

          public void setTopBottom(double top,
                                   Style.Unit topUnit,
                                   double bottom,
                                   Style.Unit bottomUnit)

      Sets the layer's top and bottom values.
      Parameters:
        `top` -
        `topUnit` -
        `bottom` -
        `bottomUnit` -

    - #### setTopHeight

          public void setTopHeight(double top,
                                   Style.Unit topUnit,
                                   double height,
                                   Style.Unit heightUnit)

      Sets the layer's top and height values.
      Parameters:
        `top` -
        `topUnit` -
        `height` -
        `heightUnit` -

    - #### setVisible

          public void setVisible(boolean visible)

      Sets the layer's visibility.
      Parameters:
        `visible` -