{ "type": "interface",
  "qname": "mx.core.ILayoutElement",
"baseInterfaceNames": [
"org.apache.royale.events.IEventDispatcher"]
,
    "description": "The ILayoutElement interface is used primarily by the layout classes to query, size and position the elements of GroupBase containers.",
  "tags": [
  {  "tagName": "playerversion",
         "values": ["Flash 10", "AIR 1.5"]},
      {  "tagName": "productversion",
         "values": ["Flex 4"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "left",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The horizontal distance in pixels from the left edge of the component to the anchor target's left edge.  <p>By default the anchor target is the container's content area. In layouts with advanced constraints, the target can be a constraint column.</p>  <p>Setting the property to a number or to a numerical string like &quot;10&quot; specifies use of the default anchor target.</p>  <p>To specify an anchor target, set the property value to a string in the format &quot;anchorTargetName:value&quot;. For example, &quot;col1:10&quot;.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["null"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "right",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The horizontal distance in pixels from the right edge of the component to the anchor target's right edge.  <p>By default the anchor target is the container's content area. In layouts with advanced constraints, the target can be a constraint column.</p>  <p>Setting the property to a number or to a numerical string like &quot;10&quot; specifies use of the default anchor target.</p>  <p>To specify an anchor target, set the property value to a string in the format &quot;anchorTargetName:value&quot;. For example, &quot;col1:10&quot;.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["null"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "top",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The vertical distance in pixels from the top edge of the component to the anchor target's top edge.  <p>By default the anchor target is the container's content area. In layouts with advanced constraints, the target can be a constraint row.</p>  <p>Setting the property to a number or to a numerical string like &quot;10&quot; specifies use of the default anchor target.</p>  <p>To specify an anchor target, set the property value to a string in the format &quot;anchorTargetName:value&quot;. For example, &quot;row1:10&quot;.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["null"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "bottom",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The vertical distance in pixels from the bottom edge of the component to the anchor target's bottom edge.  <p>By default the anchor target is the container's content area. In layouts with advanced constraints, the target can be a constraint row.</p>  <p>Setting the property to a number or to a numerical string like &quot;10&quot; specifies use of the default anchor target.</p>  <p>To specify an anchor target, set the property value to a string in the format: &quot;anchorTargetName:value&quot;. For example, &quot;row1:10&quot;.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["null"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "horizontalCenter",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The horizontal distance in pixels from the center of the component to the center of the anchor target's content area.  <p>The default anchor target is the container itself.</p>  <p>In layouts with advanced constraints, the anchor target can be a constraint column. Then the content area is the space between the preceding column (or container side) and the target column.</p>  <p>Setting the property to a number or to a numerical string like &quot;10&quot; specifies use of the default anchor target.</p>  <p>To specify an anchor target, set the property value to a string in the format &quot;constraintColumnId:value&quot;. For example, &quot;col1:10&quot;.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["null"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "verticalCenter",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The vertical distance in pixels from the center of the component to the center of the anchor target's content area.  <p>The default anchor target is the container itself.</p>  <p>In layouts with advanced constraints, the anchor target can be a constraint row. Then the content area is the space between the preceding row (or container side) and the target row.</p>  <p>Setting the property to a number or to a numerical string like &quot;10&quot; specifies use of the default anchor target.</p>  <p>To specify an anchor target, set the property value to a string in the format &quot;constraintColumnId:value&quot;. For example, &quot;row1:10&quot;.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["null"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "baseline",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The vertical distance in pixels from the anchor target to the control's baseline position.  <p>By default the anchor target is the top edge of the container's content area. In layouts with advanced constraints, the target can be a constraint row.</p>  <p>Setting the property to a number or to a numerical string like &quot;10&quot; specifies use of the default anchor target.</p>  <p>To specify an anchor target, set the property value to a string in the format: &quot;anchorTargetName:value&quot;. For example, &quot;row1:10&quot;.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["null"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-only",
    "return": "Number",
    "qname": "baselinePosition",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The y-coordinate of the baseline of the first line of text of the component.  <p>This property is used to implement the <code>baseline</code> constraint style. It is also used to align the label of a FormItem with the controls in the FormItem.</p>  <p>Each component should override this property.</p>",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Number",
    "qname": "percentWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Specifies the width of a component as a percentage of its parent's size. Allowed values are 0-100. Setting the <code>width</code> or <code>explicitWidth</code> properties resets this property to NaN.  <p>This property returns a numeric value only if the property was previously set; it does not reflect the exact size of the component in percent.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["NaN"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Number",
    "qname": "percentHeight",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Specifies the height of a component as a percentage of its parent's size. Allowed values are 0-100. Setting the <code>height</code> or <code>explicitHeight</code> properties resets this property to NaN.  <p>This property returns a numeric value only if the property was previously set; it does not reflect the exact size of the component in percent.</p>",
    "tags": [
    {  "tagName": "default",
           "values": ["NaN"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "Boolean",
    "qname": "includeInLayout",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "copy",
           "values": ["mx.core.UIComponent#includeInLayout"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ]},
  { "type": "method",
    "qname": "getPreferredBoundsWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's preferred width.  the method returns the element's bounding box width. The bounding box is in the element's parent coordinate space and is calculated from  the element's preferred size and layout transform matrix.  usually based on the default element size and any explicit overrides. For UIComponent this is the same value as returned by the <code>getExplicitOrMeasuredWidth()</code> method.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getPreferredBoundsHeight()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is <code>true</code>,"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["Returns the element's preferred width.  Preferred width is"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getPreferredBoundsHeight",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's preferred height.  the method returns the element's bounding box height. The bounding box is in the element's parent coordinate space and is calculated from  the element's preferred size and layout transform matrix.  usually based on the default element size and any explicit overrides. For UIComponent this is the same value as returned by the <code>getExplicitOrMeasuredHeight()</code> method.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getPreferredBoundsWidth()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is <code>true</code>,"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["Returns the element's preferred height.  Preferred height is"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getMinBoundsWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's minimum width.  the method returns the element's bounding box width. The bounding box is in the element's parent coordinate space and is calculated from the element's minimum size and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getMinBoundsHeight()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is <code>true</code>,"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The element's maximum width."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getMinBoundsHeight",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's minimum height.  the method returns the element's bounding box height. The bounding box is in the element's parent coordinate space and is calculated from the element's minimum size and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getMinBoundsWidth()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is <code>true</code>,"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The element's maximum height."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getMaxBoundsWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's maximum width.  the element's bounding box width. The bounding box is in the element's parent coordinate space and is calculated from the element's maximum size and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getMaxBoundsHeight()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The element's maximum width."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getMaxBoundsHeight",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's maximum height.  the element's bounding box height. The bounding box is in the element's parent coordinate space and is calculated from the element's maximum size and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getMaxBoundsWidth()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The element's maximum height."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getBoundsXAtSize",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the x coordinate of the element's bounds at the specified element size.  <p>This method is typically used by layouts during a call to the <code>measure()</code> method to predict what the element position will be, if the element is resized to particular dimensions.</p>  x coordinate of the element's bounding box top-left corner. The bounding box is in element's parent coordinate space and is calculated from the specified bounds size, layout position and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#setLayoutBoundsSize()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["width The element's bounds width, or NaN to use the preferred width.", "height The element's bounds height, or NaN to use the preferred height.", "postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The x coordinate of the element's bounds at the specified element size."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "width", "type": "Number"},
    { "name": "height", "type": "Number"},
    { "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getBoundsYAtSize",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the y coordinate of the element's bounds at the specified element size.  This method is typically used by layouts during a call to the <code>measure()</code> to predict what the element position will be, if the element is resized to particular dimensions.  the y coordinate of the element's bounding box top-left corner. The bounding box is in element's parent coordinate space and is calculated from the specified bounds size, layout position and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#setLayoutBoundsSize()", "#getLayoutBoundsY()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["width The element's bounds width, or NaN to use the preferred width.", "height The element's bounds height, or NaN to use the preferred height.", "postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The y coordinate of the element's bounds at the specified element size."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "width", "type": "Number"},
    { "name": "height", "type": "Number"},
    { "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getLayoutBoundsWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's layout width. This is the size that the element uses to draw on screen.  the element's bounding box width. The bounding box is in element's parent coordinate space and is calculated from the element's layout size and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getLayoutBoundsHeight()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The element's layout width."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getLayoutBoundsHeight",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the element's layout height. This is the size that the element uses to draw on screen.  the element's bounding box width. The bounding box is in the element's parent coordinate space and is calculated from the element's layout size and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getLayoutBoundsWidth()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The element's layout height."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getLayoutBoundsX",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the x coordinate that the element uses to draw on screen.  x coordinate of the element's bounding box top-left corner. The bounding box is in the element's parent coordinate space and is calculated from the element's layout size, layout position and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getLayoutBoundsY()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The x coordinate that the element uses to draw on screen."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "getLayoutBoundsY",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Returns the y coordinate that the element uses to draw on screen.  y coordinate of the element's bounding box top-left corner. The bounding box is in the element's parent coordinate space and is calculated from the element's layout size, layout position, and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#getLayoutBoundsX()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["postLayoutTransform When <code>postLayoutTransform</code> is true, the method returns"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "return",
           "values": ["The y coordinate that the element uses to draw on screen."]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "Number",
      "params": [{ "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "setLayoutBoundsPosition",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Sets the coordinates that the element uses to draw on screen.  <p>Note that calls to the <code>setLayoutBoundSize()</code> method can affect the layout position, so call <code>setLayoutBoundPosition()</code> after calling <code>setLayoutBoundSize()</code>.</p>    the element is positioned in such a way that the top-left corner of its bounding box is (x, y). The bounding box is in the element's parent coordinate space and is calculated from the element's layout size, layout position and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#setLayoutBoundsSize()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["x The x-coordinate of the top-left corner of the bounding box.", "y The y-coordinate of the top-left corner of the bounding box.", "postLayoutTransform When <code>postLayoutTransform</code> is <code>true</code>,"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "void",
      "params": [{ "name": "x", "type": "Number"},
    { "name": "y", "type": "Number"},
    { "name": "postLayoutTransform", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "setLayoutBoundsSize",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Sets the layout size of the element. This is the size that the element uses to draw on screen.  <p>If the <code>width</code> and/or <code>height</code> parameters are left unspecified (NaN), Flex sets the element's layout size to its preferred width and/or preferred height.</p>  <p>Note that calls to the <code>setLayoutBoundSize()</code> method can affect the layout position, so call <code>setLayoutBoundPosition()</code> after calling <code>setLayoutBoundSize()</code>.</p>    are those of the element's bounding box. The bounding box is in the element's parent coordinate space and is calculated from the element's layout size, layout position, and layout transform matrix.",
    "tags": [
    {  "tagName": "see",
           "values": ["#setLayoutBoundsPosition()", "#getLayoutMatrix()", "#getLayoutMatrix3D()"]},
        {  "tagName": "param",
           "values": ["width The element's layout width.", "height The element's layout height.", "postLayoutTransform When <code>postLayoutTransform</code> is true, the specified sizes"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5"]},
        {  "tagName": "productversion",
           "values": ["Flex 4"]},
        {  "tagName": "langversion",
           "values": ["3.0"]}  ],
      "return": "void",
      "params": [{ "name": "width", "type": "Number"},
    { "name": "height", "type": "Number"},
    { "name": "postLayoutTransform", "type": "Boolean"}]}
  ]
  }
