{ "type": "interface",
  "qname": "org.apache.royale.textLayout.elements.IFlowElement",
"baseInterfaceNames": [
"org.apache.royale.textLayout.formats.ITextLayoutFormat"]
,
  "members": [
  { "type": "method",
    "qname": "getText",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "String",
      "params": [{ "name": "relativeStart", "type": "int"},
    { "name": "relativeEnd", "type": "int"},
    { "name": "paragraphSeparator", "type": "String"}]}
  ,
  { "type": "method",
    "qname": "getAncestorWithContainer",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IContainerFormattedElement",
      "params": []}
  ,
  { "type": "method",
    "qname": "getPrivateStyle",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "*",
      "params": [{ "name": "styleName", "type": "String"}]}
  ,
  { "type": "method",
    "qname": "formatChanged",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "notifyModelChanged", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "setStyle",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "styleProp", "type": "String"},
    { "name": "newValue", "type": "*"}]}
  ,
  { "type": "method",
    "qname": "getEffectivePaddingLeft",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectivePaddingRight",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectivePaddingTop",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectivePaddingBottom",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveBorderLeftWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveBorderRightWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveBorderTopWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveBorderBottomWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveMarginLeft",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveMarginRight",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveMarginTop",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getEffectiveMarginBottom",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Number",
      "params": []}
  ,
  { "type": "method",
    "qname": "getAbsoluteStart",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "int",
      "params": []}
  ,
  { "type": "method",
    "qname": "getElementRelativeStart",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "int",
      "params": [{ "name": "ancestorElement", "type": "org.apache.royale.textLayout.elements.IFlowElement"}]}
  ,
  { "type": "method",
    "qname": "getTextFlow",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.ITextFlow",
      "params": []}
  ,
  { "type": "method",
    "qname": "getParagraph",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IParagraphElement",
      "params": []}
  ,
  { "type": "method",
    "qname": "getParentCellElement",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.ITableCellElement",
      "params": []}
  ,
  { "type": "method",
    "qname": "getParentByType",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IFlowElement",
      "params": [{ "name": "elementType", "type": "String"}]}
  ,
  { "type": "method",
    "qname": "getPreviousSibling",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IFlowElement",
      "params": []}
  ,
  { "type": "method",
    "qname": "getNextSibling",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IFlowElement",
      "params": []}
  ,
  { "type": "method",
    "qname": "getCharAtPosition",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "String",
      "params": [{ "name": "relativePosition", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "getCharCodeAtPosition",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "int",
      "params": [{ "name": "relativePosition", "type": "int"}]}
  ,
  { "type": "accessor",
    "access": "read-only",
    "return": "String",
    "qname": "className",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-write",
    "return": "Object",
    "qname": "userStyles",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "Object",
    "qname": "coreStyles",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "Object",
    "qname": "styles",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-write",
    "return": "Boolean",
    "qname": "bindableElement",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "org.apache.royale.textLayout.elements.IFlowGroupElement",
    "qname": "parent",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "int",
    "qname": "textLength",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "int",
    "qname": "parentRelativeStart",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "int",
    "qname": "parentRelativeEnd",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-write",
    "return": "String",
    "qname": "id",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-write",
    "return": "String",
    "qname": "typeName",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "String",
    "qname": "defaultTypeName",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-write",
    "return": "Boolean",
    "qname": "impliedElement",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "org.apache.royale.textLayout.formats.ITextLayoutFormat",
    "qname": "formatForCascade",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "accessor",
    "access": "read-only",
    "return": "org.apache.royale.textLayout.formats.ITextLayoutFormat",
    "qname": "computedFormat",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "method",
    "qname": "getUserStyleWorker",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "*",
      "params": [{ "name": "styleProp", "type": "String"}]}
  ,
  { "type": "method",
    "qname": "modelChanged",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "changeType", "type": "String"},
    { "name": "element", "type": "org.apache.royale.textLayout.elements.IFlowElement"},
    { "name": "changeStart", "type": "int"},
    { "name": "changeLen", "type": "int"},
    { "name": "needNormalize", "type": "Boolean"},
    { "name": "bumpGeneration", "type": "Boolean"}]}
  ,
  { "type": "accessor",
    "access": "write-only",
    "return": "Object",
    "qname": "tracking",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "method",
    "qname": "splitAtPosition",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IFlowElement",
      "params": [{ "name": "i", "type": "int"}]}
  ,
  { "type": "accessor",
    "access": "read-write",
    "return": "org.apache.royale.textLayout.formats.ITextLayoutFormat",
    "qname": "format",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {}},
  { "type": "method",
    "qname": "hasActiveEventMirror",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Boolean",
      "params": []}
  ,
  { "type": "method",
    "qname": "deepCopy",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IFlowElement",
      "params": [{ "name": "relativeStart", "type": "int"},
    { "name": "relativeEnd", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "shallowCopy",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.elements.IFlowElement",
      "params": [{ "name": "relativeStart", "type": "int"},
    { "name": "relativeEnd", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "normalizeRange",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "normalizeStart", "type": "uint"},
    { "name": "normalizeEnd", "type": "uint"}]}
  ,
  { "type": "method",
    "qname": "quickCloneTextLayoutFormat",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "sibling", "type": "org.apache.royale.textLayout.elements.IFlowElement"}]}
  ,
  { "type": "method",
    "qname": "applyFunctionToElements",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Boolean",
      "params": [{ "name": "func", "type": "Function"}]}
  ,
  { "type": "method",
    "qname": "removed",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": []}
  ,
  { "type": "method",
    "qname": "setParentAndRelativeStart",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "newParent", "type": "org.apache.royale.textLayout.elements.IFlowGroupElement"},
    { "name": "newStart", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "setParentAndRelativeStartOnly",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "newParent", "type": "org.apache.royale.textLayout.elements.IFlowGroupElement"},
    { "name": "newStart", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "setParentRelativeStart",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "newStart", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "applyWhiteSpaceCollapse",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "collapse", "type": "String"}]}
  ,
  { "type": "method",
    "qname": "appendElementsForDelayedUpdate",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "tf", "type": "org.apache.royale.textLayout.elements.ITextFlow"},
    { "name": "changeType", "type": "String"}]}
  ,
  { "type": "method",
    "qname": "updateRange",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "len", "type": "int"}]}
  ,
  { "type": "method",
    "qname": "releaseContentElement",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": []}
  ,
  { "type": "method",
    "qname": "createContentElement",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": []}
  ,
  { "type": "method",
    "qname": "updateLengths",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "startIdx", "type": "int"},
    { "name": "len", "type": "int"},
    { "name": "updateLines", "type": "Boolean"}]}
  ,
  { "type": "method",
    "qname": "setStylesInternal",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "void",
      "params": [{ "name": "styles", "type": "Object"}]}
  ,
  { "type": "method",
    "qname": "mergeToPreviousIfPossible",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "Boolean",
      "params": []}
  ,
  { "type": "accessor",
    "access": "read-write",
    "return": "*",
    "qname": "backgroundAlpha",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Alpha (transparency) value for the background (adopts default value if undefined during cascade). A value of 0 is fully transparent, and a value of 1 is fully opaque. Display objects with alpha set to 0 are active, even though they are invisible. <p>Legal values are numbers from 0 to 1 and FormatValue.INHERIT.</p> <p>Default value is undefined indicating not set.</p> <p>If undefined during the cascade this property will have a value of 1.</p>",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
        {  "tagName": "throws",
           "values": ["RangeError when set value is not within range for this property", "RangeError when set value is not within range for this property"]},
        {  "tagName": "langversion",
           "values": ["3.0", "3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "*",
    "qname": "backgroundColor",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Background color of the text (adopts default value if undefined during cascade). Can be either the constant value  <code>BackgroundColor.TRANSPARENT</code>, or a hexadecimal value that specifies the three 8-bit RGB (red, green, blue) values; for example, 0xFF0000 is red and 0x00FF00 is green. <p>Legal values as a string are BackgroundColor.TRANSPARENT, FormatValue.INHERIT and uints from 0x0 to 0xffffffff.</p> <p>Default value is undefined indicating not set.</p> <p>If undefined during the cascade this property will have a value of BackgroundColor.TRANSPARENT.</p>",
    "tags": [
    {  "tagName": "see",
           "values": ["org.apache.royale.textLayout.formats.BackgroundColor", "org.apache.royale.textLayout.formats.BackgroundColor"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
        {  "tagName": "throws",
           "values": ["RangeError when set value is not within range for this property", "RangeError when set value is not within range for this property"]},
        {  "tagName": "langversion",
           "values": ["3.0", "3.0"]}  ]},
  { "type": "method",
    "qname": "getEventMirror",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.events.IEventDispatcher",
      "params": []}
  ,
  { "type": "accessor",
    "access": "read-write",
    "return": "*",
    "qname": "listMarkerFormat",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Defines the formatting attributes list markers. This value will cascade down the hierarchy and apply to any links that are descendants. Accepts <code>inherit</code>, an <code>IListMarkerFormat</code> or converts an array of objects with key and value as members to a ListMarkerFormat. <p>Legal values include FormatValue.INHERIT.</p> <p>Default value is undefined indicating not set.</p> <p>If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of null.</p>",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
        {  "tagName": "throws",
           "values": ["RangeError when set value is not within range for this property", "RangeError when set value is not within range for this property"]},
        {  "tagName": "langversion",
           "values": ["3.0", "3.0"]}  ]},
  { "type": "method",
    "qname": "calculateComputedFormat",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "return": "org.apache.royale.textLayout.formats.ITextLayoutFormat",
      "params": []}
  ,
  { "type": "accessor",
    "access": "read-write",
    "return": "*",
    "qname": "fontSize",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The size of the text in pixels. <p>Legal values are numbers from 1 to 720 and FormatValue.INHERIT.</p> <p>Default value is undefined indicating not set.</p> <p>If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 12.</p>",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
        {  "tagName": "throws",
           "values": ["RangeError when set value is not within range for this property", "RangeError when set value is not within range for this property"]},
        {  "tagName": "langversion",
           "values": ["3.0", "3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "*",
    "qname": "xScale",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The horizontal scale of the text as a multiplier. <p>Legal values are numbers from 0.01 to 100 and FormatValue.INHERIT.</p> <p>Default value is undefined indicating not set.</p> <p>If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 1.</p>",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
        {  "tagName": "throws",
           "values": ["RangeError when set value is not within range for this property", "RangeError when set value is not within range for this property"]},
        {  "tagName": "langversion",
           "values": ["3.0", "3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "*",
    "qname": "yScale",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "The vertical scale of the text as a multiplier. <p>Legal values are numbers from 0.01 to 100 and FormatValue.INHERIT.</p> <p>Default value is undefined indicating not set.</p> <p>If undefined during the cascade this property will inherit its value from an ancestor. If no ancestor has set this property, it will have a value of 1.</p>",
    "tags": [
    {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
        {  "tagName": "throws",
           "values": ["RangeError when set value is not within range for this property", "RangeError when set value is not within range for this property"]},
        {  "tagName": "langversion",
           "values": ["3.0", "3.0"]}  ]},
  { "type": "accessor",
    "access": "read-write",
    "return": "*",
    "qname": "columnWidth",
    "namespace": "public",
    "bindable": [],
    "details": [],
    "deprecated": {},
      "description": "Column width in pixels (adopts default value if undefined during cascade). If you specify the width of the columns, but not the count, TextLayout will create as many columns of that width as possible, given the  container width and <code>columnGap</code> settings. Any remainder space is left after the last column. Value is a Number. <p>Legal values as a string are FormatValue.AUTO, FormatValue.INHERIT and numbers from 0 to 8000.</p> <p>Default value is undefined indicating not set.</p> <p>If undefined during the cascade this property will have a value of FormatValue.AUTO.</p>",
    "tags": [
    {  "tagName": "see",
           "values": ["org.apache.royale.textLayout.formats.FormatValue", "org.apache.royale.textLayout.formats.FormatValue"]},
        {  "tagName": "playerversion",
           "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
        {  "tagName": "throws",
           "values": ["RangeError when set value is not within range for this property", "RangeError when set value is not within range for this property"]},
        {  "tagName": "langversion",
           "values": ["3.0", "3.0"]}  ]}]
  }
