{  "classes": [{ "name": "FontAwesome4IconType",
  "description": "The FontAwesome4IconType class list all possible icons for Font Awesome version 4 found in https://fontawesome.com/ to use with the FontAwesomeIcon class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "FontAwesome5IconType",
  "description": "The FontAwesome4IconType class list all possible icons for Font Awesome version 5 found in https://fontawesome.com/ to use with the FontAwesomeIcon class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "MaterialIconType",
  "description": "The MaterialIconType class list all possible icons found in https://material.io/icons/ to use with the Icon class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "Promise",
  "description": ""},
{ "name": "google.maps.Animation",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.LatLng",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.MVCObject",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.MapsEventListener",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.Marker",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "mx.binding.BindabilityInfo",
  "description": "Bindability information for children (properties or methods) of a given class, based on the describeType() structure for that class.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.binding.utils.BindingUtils",
  "description": "The BindingUtils class defines utility methods for performing data binding from ActionScript. You can use the methods defined in this class to configure data bindings.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.binding.utils.ChangeWatcher",
  "description": "The ChangeWatcher class defines utility methods that you can use with bindable Flex properties. These methods let you define an event handler that is executed whenever a bindable property is updated.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.AreaChart",
  "description": "The AreaChart control represents data as an area bounded by a line connecting the values in the data. The AreaChart control can be used to represent different variations, including simple areas, stacked, 100% stacked, and high/low.  <p>The AreaChart control expects its <code>series</code> property to contain an Array of AreaSeries objects.</p>  <p>Stacked and 100% area charts override the <code>minField</code> property of their AreaSeries objects.</p>   <p>The <code>&lt;mx:AreaChart&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:AreaChart\\n <strong>Properties</strong>\\n type=&quot;<i>overlaid|stacked|100%</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/Line_AreaChartExample.mxml", "examples/Line_AreaChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.AreaSeries", "mx.charts.series.AreaSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.AxisLabel",
  "description": "An AxisLabel object represents a single label on the chart axis. AxisLabel objects are generated by IAxis objects. The AxisLabel object is also passed as the data to custom AxisLabel objects that implement the IDataRenderer interface.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.AxisRenderer", "mx.charts.chartClasses.IAxis", "mx.charts.AxisRenderer", "mx.charts.chartClasses.IAxis"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.AxisRenderer",
  "description": "You use the AxisRenderer class to describe the horizontal and vertical axes of a chart. An axis is responsible for rendering the labels, tick marks, and title along its length.  <p>AxisRenderer objects inherit some of their visual properties from the enclosing chart object. The text format of the labels and title defaults to the CSS text properties of the renderer. You can control the formatting of the axis title separately by specifying a <code>axisTitleStyleName</code>, either on the AxisRenderer or on the enclosing chart.</p>  <p>When positioning and sizing labels, the AxisRenderer takes a minimum amount of the chart's available space. If labels take too much space, then the AxisRenderer scales them. However, the AxisRenderer does not scale the labels to too small of a point size. To increase readability, the AxisRenderer chooses one of the following layout methods based on the one that requires the least scaling:</p>  <ul> <li>Render the labels horizontally end to end.</li> <li>Stagger the labels horizontally in two rows.</li> <li>Rotate the labels to fit them in the space provided. The AxisRenderer rotates the labels to the minimum angle needed to prevent them from overlapping. The maximum angle is 90 degrees.</li> </ul>  <p>The AxisRenderer adjusts the boundaries of the chart's data area to ensure that it can draw the labels without pushing outside of the boundaries.</p>   <p>The <code>&lt;mx:AxisRenderer&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:AxisRenderer\\n <strong>Properties</strong>\\n axis=&quot;<i>IAxis</i>&quot;\\n chart=&quot;<i>ChartBase</i>&quot;\\n gutters=&quot;<i>Rectangle</i>&quot;\\n heightLimit=&quot;<i>Number</i>&quot;\\n labelRenderer=&quot;<i>IFactory</i>&quot;\\n labelFunction=&quot;<i>Function</i>&quot;\\n length=&quot;<i>Number</i>&quot;\\n otherAxes=&quot;<i>Array</i>&quot;\\n placement=&quot;right|left|bottom|top&quot;\\n ticks=&quot;<i>Array</i>&quot;\\n titleRenderer=&quot;<i>IFactory</i>&quot;\\n \\n <strong>Styles</strong>\\n axisStroke=&quot;<i>No default</i>&quot;\\n axisTitleStyleName=&quot;<i>No default</i>&quot;\\n canDropLabels=&quot;true|false&quot;\\n canStagger=&quot;true|false&quot;\\n labelAlign=&quot;center|left|right&quot; (horizontal axes) or &quot;center|top|bottom&quot; (vertical axes)\\n labelGap=&quot;3&quot;\\n labelRotation=&quot;<i>No default</i>&quot;\\n minorTickLength=&quot;<i>Default depends on axis</i>&quot;\\n minorTickPlacement=&quot;none|inside|outside|cross&quot;\\n minorTickStroke=&quot;<i>No default</i>&quot;\\n showLabels=&quot;true|false&quot;\\n showLine=&quot;true|false&quot;\\n tickLength=&quot;<i>Default depends on axis</i>&quot;\\n tickPlacement=&quot;inside|outside|cross|none&quot;\\n tickStroke=&quot;<i>No default</i>&quot;\\n verticalAxisTitleAlignment=&quot;flippedVertical|vertical&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HLOCChartExample.mxml", "examples/HLOCChartExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.BarChart",
  "description": "The BarChart control represents data as a series of horizontal bars whose length is determined by values in the data. A BarChart control can represent different chart variations, including simple bars, clustered bars, stacked, 100% stacked, and high/low.  <p>The BarChart control expects its <code>series</code> property to contain an array of BarSeries objects.</p>  <p>Stacked and 100% bar charts override the <code>minField</code> property of their BarSeries objects.</p>   <p>The <code>&lt;mx:BarChart&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:BarChart\\n <strong>Properties</strong>\\n type=&quot;clustered|overlaid|stacked|100%&quot;\\n \\n <strong>Styles</strong>\\n barWidthRatio=&quot;.65&quot;\\n maxBarWidth=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/Column_BarChartExample.mxml", "examples/Column_BarChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.BarSeries", "mx.charts.series.BarSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.BubbleChart",
  "description": "The BubbleChart control represents data with three values for each data point. Each data point is defined by a value determining its position along the horizontal axis, a value determining its position along the vertical axis, and a value determining the size of the chart element, relative to the other data points on the chart.  <p>The BubbleChart control expects its <code>series</code> property to contain an array of BubbleSeries objects.</p>   The <code>&lt;mx:BubbleChart&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:BubbleChart\\n <strong>Properties</strong>\\n radiusAxis=&quot;<i>LinearAxis</i>&quot;\\n \\n <strong>Styles</strong>\\n maxRadius=&quot;50&quot;\\n minRadius=&quot;0&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/BubbleChartExample.mxml", "examples/BubbleChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.BubbleSeries", "mx.charts.series.BubbleSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.CandlestickChart",
  "description": "The CandlestickChart control represents financial data as a series of candlesticks representing the high, low, opening, and closing values of a data series. The top and bottom of the vertical line in each candlestick represent the high and low values for the datapoint, while the top and bottom of the filled box represents the opening and closing values. Each candlestick is filled differently depending on whether the closing value for the datapoint is higher or lower than the opening value.  <p>A CandlestickChart control expects its <code>series</code> property to contain an array of CandlestickSeries objects.</p>   The <code>&lt;mx:CandlestickChart&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:CandlestickChart\\n <strong>Styles</strong>\\n columnWidthRatio=&quot;.65&quot;\\n maxColumnWidth=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/CandlestickChartExample.mxml", "examples/CandlestickChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.CandlestickSeries", "mx.charts.series.CandlestickSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.CategoryAxis",
  "description": "The CategoryAxis class lets charts represent data grouped by a set of discrete values along an axis. You typically use the CategoryAxis class to define a set of labels that appear along an axis of a chart. For example, charts that render data according to City, Year, Business unit, and so on.  <p>You are not required to explicitly set the <code>dataProvider</code> property on a CategoryAxis. A CategoryAxis used in a chart inherits its <code>dataProvider</code> property from the containing chart.</p>  <p>While you can use the same data provider to provide data to the chart and categories to the CategoryAxis, a CategoryAxis can optimize rendering if its data provider is relatively static. If possible, ensure that the categories are relatively static and that changing data is stored in separate data providers.</p>  <p>The <code>dataProvider</code> property can accept either an array of strings or an array of records (Objects) with a property that specifies the category name. If you specify a <code>categoryField</code> property, the CategoryAxis assumes that the data provider is an array of Objects. If the value of the <code>categoryField</code> property is <code>null</code>, the CategoryAxis assumes that the data provider is an array of Strings.</p>   <p>The <code>&lt;mx:CategoryAxis&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:CategoryAxis\\n <strong>Properties</strong>\\n categoryField=&quot;null&quot;\\n dataFunction=&quot;<i>No default</i>&quot;\\n dataProvider=&quot;<i>No default</i>&quot;\\n labelFunction=&quot;<i>No default</i>&quot;\\n padding=&quot;<i>Default depends on chart type</i>&quot;\\n ticksBetweenLabels=&quot;<i>true</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HLOCChartExample.mxml", "examples/HLOCChartExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.ChartItem",
  "description": "A ChartItem represents a single item in a ChartSeries. In most standard series, there is one ChartItem created for each item in the series' dataProvider collection. ChartItems are passed to the instances of a series' itemRenderer for rendering. Most Series types extend ChartItem to contain additional information specific to the chart type.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.ColumnChart",
  "description": "The ColumnChart control represents data as a series of vertical columns whose height is determined by values in the data. You can use the ColumnChart to represent a variety of different charts including simple columns, clustered columns, stacked, 100% stacked, and high/low.  <p>A ColumnChart control expects its <code>series</code> property to contain an array of ColumnSeries objects.</p>  <p>Stacked and 100% column charts override the <code>minField</code> property of their ColumnSeries objects.</p>   <p>The <code>&lt;mx:ColumnChart&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:ColumnChart\\n <strong>Properties</strong>\\n extendLabelToEnd=&quot;false|true&quot;\\n maxLabelWidth=&quot;<i>50</i>&quot;\\n showLabelVertically=&quot;false|true&quot;\\n type=&quot;<i>clustered|overlaid|stacked|100%</i>&quot;\\n \\n <strong>Styles</strong>\\n columnWidthRatio=&quot;.65&quot;\\n maxColumnWidth=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/Column_BarChartExample.mxml", "examples/Column_BarChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.ColumnSeries", "mx.charts.series.ColumnSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.DateTimeAxis",
  "description": "The DateTimeAxis class maps time values evenly between a minimum and maximum value along a chart axis. It can plot values represented either as instances of the Date class, as numeric values representing the number of milliseconds since the epoch (midnight on January 1, 1970, GMT), or as String values when you provide a custom parsing function.  <p>The DateTimeAxis chooses the most reasonable units to mark the axis by examining the range between the minimum and maximum values of the axis. The Axis chooses the largest unit that generates a reasonable number of labels for the given range. You can restrict the set of units the chart considers, or specify exactly which units it should use, by setting the <code>labelUnits</code> property.</p>  <p>You can specifiy the minimum and maximum values explicitly, or let the axis automatically determine them by examining the values being renderered in the chart. By default, the DateTimeAxis chooses the smallest possible range to contain all the values represented in the chart. Optionally, you can request that the minimum and maximum values be rounded to whole units (milliseconds, seconds, minutes, hours, days, weeks, months, years) by setting the <code>autoAdjust</code> property to <code>true</code>.</p>  <p>You can specify disabled days of a week and disabled ranges of dates in order to show only working days on the axis but not all days between minimum and maximum. It also filters data and shows only data corresponding to working days on the chart</p>   <p>The <code>&lt;mx:DateTimeAxis&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:DateTimeAxis\\n <strong>Properties</strong>\\n alignLabelsToUnits=&quot;true|false&quot;\\n dataUnits=&quot;milliseconds|seconds|minutes|hours|days|weeks|months|years&quot;\\n disabledDays=&quot;<i>Array; No default</i>&quot;\\n disabledRanges=&quot;<i>Array; No default</i>&quot;\\n displayLocalTime=&quot;<i>false</i>&quot;\\n interval=&quot;<i>Number</i>&quot;\\n labelUnits=&quot;milliseconds|seconds|minutes|hours|days|weeks|months|years&quot;\\n maximum=&quot;<i>Date</i>&quot;\\n minimum=&quot;<i>Date</i>&quot;\\n minorTickInterval=&quot;<i>Number</i>&quot;\\n minorTickUnits=&quot;milliseconds|seconds|minutes|hours|days|weeks|months|years&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DateTimeAxisExample.mxml", "examples/DateTimeAxisExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.chartClasses.IAxis", "mx.charts.chartClasses.IAxis"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.GridLines",
  "description": "The GridLines class draws grid lines inside the data area of the chart. Flex can draw lines horizontally, vertically, or both.  <p>Flex draws grid lines aligned to the tick marks of the parent chart. By default, Flex draws one line for every tick mark along the appropriate axis.</p>  <p>You typically use the GridLines class as a child tag of a chart control's <code>backgroundElements</code> property or <code>annotationElements</code> property.</p>   <p>The <code>&lt;mx:GridLines&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:GridLines\\n <strong>Styles</strong>\\n gridDirection=&quot;horizontal|vertical|both&quot;\\n horizontalAlternateFill=&quot;null&quot;\\n horizontalChangeCount=&quot;1&quot;\\n horizontalFill=&quot;null&quot;\\n horizontalOriginStroke=&quot;<i>IStroke; No default</i>&quot;\\n horizontalShowOrigin=&quot;<i>Default depends on type of chart</i>&quot;\\n horizontalStroke=&quot;<i>IStroke; No default</i>&quot;\\n horizontalTickAligned=&quot;true|false&quot;\\n verticalAlternateFill=&quot;null&quot;\\n verticalChangeCount=&quot;1&quot;\\n verticalFill=&quot;null&quot;\\n verticalOriginStroke=&quot;<i>IStroke; No default</i>&quot;\\n verticalShowOrigin=&quot;<i>Default depends on type of chart</i>&quot;\\n verticalStroke=&quot;<i>IStroke; No default</i>&quot;\\n verticalTickAligned=&quot;true|false&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GridLinesExample.mxml", "examples/GridLinesExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.HLOCChart",
  "description": "The HLOCChart (High Low Open Close) control represents financial data as a series of elements representing the high, low, closing, and optionally opening values of a data series. The top and bottom of the vertical line in each element represent the high and low values for the datapoint. The right-facing tick represents the closing values, and the left tick represents the opening value if one was specified.  <p>An HLOCChart control expects its <code>series</code> property to contain an Array of HLOCSeries objects.</p>   The <code>&lt;mx:HLOCChart&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:HLOCChart\\n <strong>Styles</strong>\\n columnWidthRatio=&quot;.65&quot;\\n maxColumnWidth=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HLOCChartExample.mxml", "examples/HLOCChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.HLOCSeries", "mx.charts.series.HLOCSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.HitData",
  "description": "The HitData class represents information about the data item at a specific location on the screen. Flex returns the HitData structure for mouse events on chart data points. It describes what data points are under the current mouse position.  <p>You can also get a HitData structure describing the data point at a specific location in the chart using the chart control's <code>findDataPoints()</code> method.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.ChartItem", "mx.charts.ChartItem"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.Legend",
  "description": "The Legend control adds a legend to your charts, where the legend displays the label for each data series in the chart and a key showing the chart element for the series.  <p>You can initialize a Legend control by binding a chart control identifier to the Legend control's <code>dataProvider</code> property, or you can define an Array of LegendItem objects.</p>   <p>The <code>&lt;mx:Legend&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:Legend\\n <strong>Properties</strong>\\n autoLayout=&quot;true|false&quot;\\n clipContent=&quot;true|false&quot;\\n creationIndex=&quot;undefined&quot;\\n creationPolicy=&quot;auto|all|queued|none&quot;\\n dataProvider=&quot;<i>No default</i>&quot;\\n direction=&quot;horizontal|vertical&quot;\\n horizontalScrollPosition=&quot;0&quot;\\n legendItemClass=&quot;<i>No default</i>&quot;\\n verticalScrollPosition=&quot;0&quot;\\n \\n <strong>Styles</strong>\\n backgroundAlpha=&quot;1.0&quot;\\n backgroundAttachment=&quot;scroll&quot;\\n backgroundColor=&quot;undefined&quot;\\n backgroundDisabledColor=&quot;undefined&quot;\\n backgroundImage=&quot;undefined&quot;\\n backgroundSize=&quot;auto&quot;\\n barColor=&quot;undefined&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n borderSides=&quot;left top right bottom&quot;\\n borderSkin=&quot;mx.skins.halo.HaloBorder&quot;\\n borderStyle=&quot;inset|none|solid|outset&quot;\\n borderThickness=&quot;1&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;0&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n disbledOverlayAlpha=&quot;undefined&quot;\\n dropShadowColor=&quot;0x000000&quot;\\n dropShadowEnabled=&quot;false&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontfamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal&quot;\\n horizontalAlign=&quot;left|center|right&quot;\\n horizontalGap=&quot;<i>8</i>&quot;\\n labelPlacement=&quot;right|left|top|bottom&quot;\\n markerHeight=&quot;15&quot;\\n markerWidth=&quot;10&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n shadowDirection=&quot;center&quot;\\n shadowDistance=&quot;2&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n textAlign=&quot;left&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n verticalAlign=&quot;top|middle|bottom&quot;\\n verticalGap=&quot;<i>6</i>&quot;\\n \\n <strong>Events</strong>\\n childAdd=&quot;<i>No default</i>&quot;\\n childIndexChange=&quot;<i>No default</i>&quot;\\n childRemove=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n itemClick=&quot;<i>Event; no default</i>&quot;\\n itemMouseDown=&quot;<i>Event; no default</i>&quot;\\n itemMouseOut=&quot;<i>Event; no default</i>&quot;\\n itemMouseOver=&quot;<i>Event; no default</i>&quot;\\n itemMouseUp=&quot;<i>Event; no default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PlotChartExample.mxml", "examples/PlotChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.LegendItem", "mx.charts.LegendItem"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.LegendItem",
  "description": "Controls the individual legend elements in a chart legend.   <p>The <code>&lt;mx:LegendItem&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:LegendItem\\n <strong>Properties</strong>\\n element=&quot;<i>No default</i>&quot;\\n label=&quot;<i>No default</i>&quot;\\n source=&quot;<i>No default</i>&quot;\\n legendData=&quot;<i>No default</i>&quot;\\n marker=&quot;<i>No default</i>&quot;\\n markerAspectRatio=&quot;<i>No default</i>&quot;\\n \\n <strong>Styles</strong>\\n fill=&quot;<i>IFill; no default.</i>&quot;\\n fontWeight=&quot;normal|bold&quot;\\n fontSize=&quot;10&quot;\\n horizontalGap=&quot;8&quot;\\n labelPlacement=&quot;right|left|top|bottom&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n markerHeight=&quot;15&quot;\\n markerWidth=&quot;10&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n textDecoration=&quot;underline|none&quot;\\n verticalGap=&quot;6&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.Legend", "mx.charts.chartClasses.LegendData", "mx.charts.Legend", "mx.charts.chartClasses.LegendData"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.LineChart",
  "description": "The LineChart control represents a data series as points connected by a continuous line. You can use an icon or symbol to represent each data point along the line, or show a simple line with no icons.  <p>The LineChart control expects its <code>series</code> property to contain an Array of LineSeries objects.</p>   The <code>&lt;mx:LineChart&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:LineChart\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/Line_AreaChartExample.mxml", "examples/Line_AreaChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.LineSeries", "mx.charts.series.LineSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.LinearAxis",
  "description": "The LinearAxis class maps numeric values evenly between a minimum and maximum value along a chart axis. By default, it determines <code>minimum</code>, <code>maximum</code>, and <code>interval</code> values from the charting data to fit all of the chart elements on the screen. You can also explicitly set specific values for these properties.  <p>The auto-determination of range values works as follows:  <ol> <li> Flex determines a minimum and maximum value that accomodates all the data being displayed in the chart.</li> <li> If the <code>autoAdjust</code> and <code>baseAtZero</code> properties are set to <code>true</code>, Flex makes the following adjustments: <ul> <li>If all values are positive, Flex sets the <code>minimum</code> property to zero.</li> <li>If all values are negative, Flex sets the <code>maximum</code> property to zero.</li> </ul> </li> <li> If the <code>autoAdjust</code> property is set to <code>true</code>, Flex adjusts values of the <code>minimum</code> and <code>maximum</code> properties by rounding them up or down.</li> <li> Flex checks if any of the elements displayed in the chart require extra padding to display properly (for example, for labels). It adjusts the values of the <code>minimum</code> and <code>maximum</code> properties accordingly.</li> <li> Flex determines if you have explicitly specified any padding around the <code>minimum</code> and <code>maximum</code> values, and adjusts their values accordingly.</li> </ol> </p>   <p>The <code>&lt;mx:LinearAxis&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:LinearAxis\\n <strong>Properties</strong>\\n interval=&quot;null&quot;\\n maximum=&quot;null&quot;\\n maximumLabelPrecision=&quot;null&quot;\\n minimum=&quot;null&quot;\\n minorInterval=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HLOCChartExample.mxml", "examples/HLOCChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.chartClasses.IAxis", "mx.charts.chartClasses.IAxis"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.LogAxis",
  "description": "The LogAxis class maps numeric values logarithmically between a minimum and maximum value along a chart axis. By default, it determines <code>minimum</code>, <code>maximum</code>, and <code>interval</code> values from the charting data to fit all of the chart elements on the screen. You can also explicitly set specific values for these properties. A LogAxis object cannot correctly render negative values, as Log10() of a negative number is <code>undefined</code>.   <p>The <code>&lt;mx:LogAxis&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:LogAxis\\n <strong>Properties</strong>\\n interval=&quot;10&quot;\\n maximum=&quot;null&quot;\\n maximumLabelPrecision=&quot;null&quot;\\n minimum=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LogAxisExample.mxml", "examples/LogAxisExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.chartClasses.IAxis", "mx.charts.chartClasses.IAxis"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.PieChart",
  "description": "The PieChart control represents a data series as a standard pie chart. The data for the data provider determines the size of each wedge in the pie chart relative to the other wedges. You can use the PieSeries class to create standard pie charts, doughnut charts, or stacked pie charts.  <p>The PieChart control expects its <code>series</code> property to contain an Array of PieSeries objects.</p>   <p>The <code>&lt;mx:PieChart&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:  <pre>\\n &lt;mx:PieChart\\n <strong>Styles</strong>\\n innerRadius=&quot;0&quot;\\n textAlign=&quot;left&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PieChartExample.mxml", "examples/PieChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.PieSeries", "mx.charts.series.PieSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.PlotChart",
  "description": "The PlotChart control represents data with two values for each data point. One value determines the position of the data point along the horizontal axis, and one value determines its position along the vertical axis.  <p>The PlotChart control expects its <code>series</code> property to contain an Array of PlotSeries objects.</p>   The <code>&lt;mx:PlotChart&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:PlotChart\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PlotChartExample.mxml", "examples/PlotChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.series.PlotSeries", "mx.charts.series.PlotSeries"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.AxisBase",
  "description": "The AxisBase class serves as a base class for the various axis types supported in Flex.   <p>Flex components inherit the following properties from the AxisBase class:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n displayName=&quot;<i>No default</i>&quot;\\n title=&quot;<i>No default</i>&quot;\\n &gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.AxisLabelSet",
  "description": "An AxisLabelSet represents the label and tick data generated by an implementation of IAxis.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.chartClasses.BoundedValue",
  "description": "A bounded value is used to represent a datapoint that a chart element intends to render on screen. ChartElements report BoundedValues, describing their data to an Axis object. The axis computes autogenerated ranges. A BoundedValue encapsulates both the value of the datapoint in a particualr dimension, as well as a margin, in pixels, that a ChartElement needs above or below the value in order to render it. Plots on a plot chart, for example, report their data with margins to accomodate the size of the plots. A column chart might report a margin in the Y axis to accomodate a label rendered above the chart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.chartClasses.CartesianCanvasValue",
  "description": "Defines the position of objects on a data canvas. This class has a data coordinate and an optional offset that are used by the CartesianDataCanvas class to calculate pixel coordinates.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.chartClasses.CartesianDataCanvas", "mx.charts.chartClasses.CartesianDataCanvas"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.CartesianChart",
  "description": "The CartesianChart class is a base class for the common chart types. CartesianChart defines the basic layout behavior of the standard rectangular, two-dimensional charts.   <p>The <code>&lt;mx:CartesianChart&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:CartesianChart\\n <strong>Properties</strong>\\n computedGutters=&quot;<i>No default</i>&quot;\\n dataRegion=&quot;<i>Rectangle; no default</i>&quot;\\n horizontalAxis=&quot;<i>Axis; no default</i>&quot;\\n horizontalAxisRatio=&quot;.33&quot;\\n horizontalAxisRenderers=&quot;<i>Array; no default</i>&quot;\\n selectedChartItems=&quot;<i>Array; no default</i>&quot;\\n verticalAxis=&quot;<i>Axis; no default</i>&quot;\\n verticalAxisRatio=&quot;.33&quot;\\n verticalAxisRenderers=&quot;<i>Array; no default</i>&quot;\\n \\n <strong>Styles</strong>\\n axisTitleStyleName=&quot;<i>Style; no default</i>&quot;\\n gridLinesStyleName=&quot;<i>Style; no default</i>&quot;\\n gutterBottom=&quot;<i>No default</i>&quot;\\n gutterLeft=&quot;<i>No default</i>&quot;\\n gutterRight=&quot;<i>No default</i>&quot;\\n gutterTop=&quot;<i>No default</i>&quot;\\n horizontalAxisStyleNames=<i>Array; no default</i>&quot;\\n verticalAxisStyleNames = <i>Array; no default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.CategoryAxis", "mx.charts.LinearAxis", "mx.charts.chartClasses.ChartBase", "mx.charts.CategoryAxis", "mx.charts.LinearAxis", "mx.charts.chartClasses.ChartBase"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.CartesianDataCanvas",
  "description": "This class lets you use add graphical elements such as lines, ellipses, and other shapes by using a graphics API. The values that you pass to the graphics API are in data coordinates rather than screen coordinates. You can also add any DisplaObject to the canvas, in the same way that you add children to containers.  <p>The drawing region for the canvas is determined by the <code>verticalAxis</code> and <code>horizontalAxis</code>, if they are specified. Otherwise, the canvas uses the default axes of the chart to compute the drawing region.</p>  <p>The data coordinates passed as parameters to the drawing APIs can be actual values of the data coordinate or an object of type <code>CartesianCanvasValue</code>, which can hold a data coordinate value and an offset, in pixels.</p>   <p>The <code>&lt;mx:CartesianDataCanvas&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:CartesianDataCanvas\\n <strong>Properties</strong>\\n dataChildren=&quot;<i>No default</i>&quot;\\n horizontalAxis=&quot;<i>No default</i>&quot;\\n includeInRanges=&quot;<i>false</i>&quot;\\n verticalAxis=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.CartesianTransform",
  "description": "The CartesianTransform object represents a set of axes that maps data values to x/y Cartesian screen coordinates and vice versa.  <p>When using charts in your applications, you typically will not need to interact with the CartesianTransform object. Transforms are created automatically by the built-in chart types and used by the series contained within so that they can transform data into rendering coordinates.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.ChartBase",
  "description": "The ChartBase class is the link between the Flex component architecture and the DualStyleObject architecture. It extends the Flex UIComponent base class, but contains DualStyleObject classes.  <p>You typically do not use the ChartBase class directly. Instead you use one of its subclasses, such as PlotChart or BubbleChart. It acts as the base class for the common chart types provided in the mx.charts package.</p>  <p>This class defines a number of CSS styles and properties that provide easy access to the more common features of the framework.</p>  <p>A chart's minimum size is 20 x 20 pixels. A chart's maximum size is unbounded. A chart's preferred size is 400 x 400 pixels.</p>  <p>ChartBase objects, and its subclasses, augment the normal mouse event objects with additional data that describes the nearest chart data point under the mouse. The event object for mouse events contains an additional property, <code>hitData</code>, which contains a HitData object that describes the nearest data point. See mx.charts.HitData for more information on the contents of the HitData object.</p>  <p>ChartBase objects consider data points only within a certain radius of the mouse pointer. You can set this radius using the <code>mouseSensitivity</code> property. If there is no data point within the <code>mouseSensitivity</code> radius, event.hitData is <code>null</code>.</p>   <p>Flex components inherit the following properties from the ChartBase class:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <strong>Properties</strong>\\n allElements=&quot;<i>Array; No default</i>&quot;\\n annotationElements=&quot;<i>Array; No default</i>&quot;\\n backgroundElements=&quot;<i>Array; No default</i>&quot;\\n chartState=&quot;<i></i>&quot;\\n clipContent=&quot;false|true&quot;\\n dataProvider=&quot;<i>No default</i>&quot;\\n dataRegion&quot;<i>No default</i>&quot;\\n dataTipFunction=&quot;<i>No default</i>&quot;\\n dataTipLayerIndex&quot;<i>No default</i>&quot;\\n dataTipMode&quot;<i>No default</i>&quot;\\n description&quot;<i>No default</i>&quot;\\n dragEnabled=&quot;false|true&quot;\\n dragMoveEnabled=&quot;false|true&quot;\\n dropEnabled=&quot;false|true&quot;\\n labelElements&quot;<i>No default</i>&quot;\\n legendData&quot;<i>No default</i>&quot;\\n mouseSensitivity=&quot;5&quot;\\n selectedChartItem=<i>ChartItem; No default</i>&quot;\\n selectedChartItems=<i>Array; No default</i>&quot;\\n selectionMode=&quot;none|single|multiple&quot;\\n series=&quot;<i>No default</i>&quot;\\n seriesFilters&quot;<i>No default</i>&quot;\\n showAllDataTips=&quot;true|false&quot;\\n showDataTips=&quot;true|false&quot;\\n transforms=&quot;<i>No default</i>&quot;\\n \\n <strong>Styles</strong>\\n chartSeriesStyles=&quot;<i>Style; No default</i>&quot;\\n dataTipCalloutStroke=&quot;<i>Stroke; No default</i>&quot;\\n dataTipRenderer=&quot;<i>Renderer; No default</i>&quot;\\n fill=&quot;<i>IFill; No default</i>&quot;\\n fontFamily=&quot;<i>Verdana</i>&quot;\\n fontSize=&quot;<i>10</i>&quot;\\n itemDisabledColor=&quot;<i>uint; No default</i>&quot;\\n itemRollOverColor=&quot;<i>uint; No default</i>&quot;\\n itemSelectionColor=&quot;<i>uint; No default</i>&quot;\\n maximumDataTipCount=&quot;NaN&quot;\\n paddingBottom=&quot;<i>No default</i>&quot;\\n paddingTop=&quot;<i>No default</i>&quot;\\n paddingLeft=&quot;<i>0</i>&quot;\\n paddingRight=&quot;<i>0</i>&quot;\\n showDataTipTargets=&quot;true|false&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>Event; No default</i>&quot;\\n itemClick=&quot;<i>Event; No default</i>&quot;\\n itemDoubleClick=&quot;<i>Event; No default</i>&quot;\\n itemMouseDown=&quot;<i>Event; No default</i>&quot;\\n itemMouseMove=&quot;<i>Event; No default</i>&quot;\\n itemMouseUp=&quot;<i>Event; No default</i>&quot;\\n itemRollOut=&quot;<i>Event; No default</i>&quot;\\n itemRollOver=&quot;<i>Event; No default</i>&quot;\\n &gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.HitData", "mx.charts.CategoryAxis", "mx.charts.LinearAxis", "mx.charts.HitData", "mx.charts.CategoryAxis", "mx.charts.LinearAxis"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.ChartElement",
  "description": "The ChartElement class is the base class for visual chart elements.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.ChartItemDragProxy",
  "description": "The default drag proxy used when dragging items from a chart control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.ChartLabel",
  "description": "Draws data labels on chart controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.ChartState",
  "description": "Describes the current state of a chart. Series implementations can examine the Chart.state value to determine whether the chart is showing or hiding data, and how to render in response.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.DataDescription",
  "description": "The DataDescription structure is used by ChartElements to describe the characteristics of the data they represent to Axis objects that auto-generate values from the data represented in the chart. ChartElements displaying data should construct and return DataDescriptions from their <code>describeData()</code> method when invoked.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.chartClasses.DataTip",
  "description": "The DataTip control provides information about a data point to chart users. When a user moves their mouse over a graphical element, the DataTip control displays text that provides information about the element. You can use DataTip controls to guide users as they work with your application or customize the DataTips to provide additional functionality.  <p>To enable DataTips on a chart, set its <code>showDataTips</code> property to <code>true</code>.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.DataTransform",
  "description": "The DataTransform object represents a portion of a chart that contains glyphs and can transform values to screen coordinates and vice versa. Each DataTransform object has a horizontal axis, a vertical axis, and a set of glyphs (background, data, and overlay) to render.  <p>In theory, a chart can contain multiple overlaid DataTransform objects. This allows you to display a chart with multiple data sets rendered in the same area but with different ranges. For example, you might want to show monthly revenues compared to the number of units sold. If revenue was typically in millions while units was typically in the thousands, it would be difficult to render these effectively along the same range. Overlaying them in different DataTransform objects allows the end user to compare trends in the values when they are rendered with different ranges.</p>  <p>Charts can only contain one set of DataTransform.</p>  <p>Most of the time, you will use the ChartBase object, which hides the existance of the DataTransform object between the chart and its contained glyphs and axis objects. If you create your own ChartElement objects, you must understand the methods of the DataTransform class to correctly implement their element.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.DateRangeUtilities",
  "description": "A set of disabled date range utilities used by DateTimeAxis",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.DualStyleObject",
  "description": "The DualStyleObject class serves as a base class for components that have a need to assign class selectors outside of the client developer's control. DualStyleObject instances have two styleName properties...the standard styleName, and the additional internalStyleName.  A component can assign the internalStyleName property as necessary and leave the styleName property for the client developer to assign.  <p><b>Common MXML Syntax Inherited from DualStyleObject</b></p>  <p>Flex components inherit the following properties from the DualStyleObject class:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n internalStyleName=&quot;<i>Style; No default</i>&quot;\\n &gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.GraphicsUtilities",
  "description": "A set of internal graphics rendering utilities used by the various chart classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.HLOCSeriesBase",
  "description": "HLOCSeriesBase is the base class for the two financial series types, HLOCSeries and CandlestickSeries. Most of the behavior related to charting open, close, high and low values resides in this class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IAxis",
  "description": "The IAxis class is an abstract interface for defining label, tick mark, and data positioning properties for a chart axis.  <p>Classes implement this interface to provide range definition functionality.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.CategoryAxis", "mx.charts.LinearAxis", "mx.charts.CategoryAxis", "mx.charts.LinearAxis"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IAxisRenderer",
  "description": "The IAxis class is an abstract interface for defining label, tick mark, and data positioning properties for a chart axis.  <p>Classes implement this interface to provide range definition functionality.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.CategoryAxis", "mx.charts.LinearAxis", "mx.charts.CategoryAxis", "mx.charts.LinearAxis"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IBar",
  "description": "The IBar interface is implemented by any any series that can be clustered vertically, such as a BarSeries. The BarSet series type requires that any sub-series assigned to it implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IChartElement",
  "description": "IChartElement defines the base set of properties and methods required by a UIComponent to be representable in the data space of a chart. Any component assigned to the series, backgroundElements, or annotationElements Arrays of a chart must implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IChartElement2",
  "description": "IChartElement2 defines the base set of properties and methods required by a UIComponent to be representable in the data space of a chart. Any component assigned to the series, backgroundElements, or annotationElements Arrays of a chart must implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IColumn",
  "description": "ChartElements that can be clustered along the vertical axis should implement this interface. Any element implementing this interface can be used as a child series of a ColumnSet element with its <code>type</code> property set to &quot;clustered&quot;. The ColumnSeries, HLOCSeries, CandleStickSeries, and ColumnSet classes all implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IDataCanvas",
  "description": "This interface is for internal use only.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IStackable",
  "description": "The IStackable interface is implemented by any series that can be stacked. Stacking sets (ColumnSet, BarSet, AreaSet) require that any sub-series assigned to it when stacking implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.IStackable2",
  "description": "The IStackable2 interface is implemented by any series that can be stacked. Stacking sets (ColumnSet, BarSet, AreaSet) require that any sub-series assigned to it when stacking implement this interface if they should show negative values also while stacking.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.InstanceCache",
  "description": "InstanceCache is a utility that governs the task of creating and managing a set of <i>n</i> object instances, where <i>n</i> changes frequently.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.chartClasses.LegendData",
  "description": "The LegendData structure is used by charts to describe the items that should be displayed in an auto-generated legend. A chart's <code>legendData</code> property contains an Array of LegendData objects, one for each item in the Legend.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.chartClasses.NumericAxis",
  "description": "The NumericAxis class acts as a common base class for axis types representing a continuous range of values between a defined minimum and maximum. The built-in LinearAxis, LogAxis, and DateTimeAxis classes all extend this base class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.DateTimeAxis", "mx.charts.LinearAxis", "mx.charts.LogAxis", "mx.charts.DateTimeAxis", "mx.charts.LinearAxis", "mx.charts.LogAxis"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.PolarChart",
  "description": "The PolarChart control serves as base class for circular charts based in polar coordinates.  <p>A chart's minimum size is 20,20 pixels. </p> <p>A chart's maximum size is unbounded. </p> <p>A chart's preferred size is 400,400 pixels. </p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.CategoryAxis", "mx.charts.LinearAxis", "mx.charts.chartClasses.ChartBase", "mx.charts.CategoryAxis", "mx.charts.LinearAxis", "mx.charts.chartClasses.ChartBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.PolarDataCanvas",
  "description": "PolarDataCanvas class enables user to use graphics API with respect to data coordinates instead of screen coordinates.  <p>The drawing region for canvas is determined by <code>radialAxis</code> and <code>angularAxis</code> if they are specified. Otherwise, default axes of chart will be considered to compute canvas drawing region.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.PolarTransform",
  "description": "The PolarTransform object represents a set of axes used to map data values to angle/distance polar coordinates and vice versa.  <p>You typically do not need to interact with the PolarTransform object. Transforms are created automatically by the built-in chart types and are used by the series contained within to transform data into rendering coordinates.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.RenderData",
  "description": "RenderData structures are used by chart elements to store all of the relevant values and data needed to fully render the chart. Storing these values in a separate structure lets chart elements decouple their rendering from their assigned properties and data as necessary. This ability is used by the chart effects: effects such as SeriesInterpolate substitute temporary values calculated from previous and future renderData structures. Effects such as SeriesSlide and SeriesZoom substitute temporary RenderData structures with values calculated to render the effect correctly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.chartClasses.Series",
  "description": "The Series class is the base class for the classes that let you specify a data series for a chart control. You use the subclasses of the Series class with the associated chart control. You can use a Series class to specify the fill pattern and stroke characteristics for the chart elements that are associated with the data series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.chartClasses.StackedSeries",
  "description": "Stacked Series serves as the common base class for all of the stacking set series (BarSet, ColumnSet, and AreaSet). A StackedSeries accepts an Array of sub-series elements and does the appropriate calculations to stack them vertically so that each series renders the sum of the previous series's data plus its own value. This class is not intended for direct use.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.effects.SeriesEffect",
  "description": "The base class for chart effects.   <p>The <code>&lt;mx:SeriesEffect&gt;</code> tag inherits the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <strong>Properties</strong>\\n elementOffset=&quot;20&quot;\\n minimumElementDuration=&quot;0&quot;\\n offset=&quot;0&quot;\\n type=&quot;show|hide <i>(Default value is set by chart)</i>&quot;\\n &gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.effects.SeriesInterpolate",
  "description": "The SeriesInterpolate effect moves the graphics that represent the existing data in a series to the new points. Instead of clearing the chart and then repopulating it as with SeriesZoom and SeriesSlide, this effect keeps the data on the screen at all times.  <p>You only use the SeriesInterpolate effect with a <code>showDataEffect</code> effect trigger. It has no effect if set with a <code>hideDataEffect</code>.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SeriesInterpolateExample.mxml", "examples/SeriesInterpolateExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.effects.SeriesSlide",
  "description": "The SeriesSlide effect slides a data series into and out of the chart's boundaries. You use the <code>direction</code> property to specify the location from which the series slides.  <p>If you use SeriesSlide with a <code>hideDataEffect</code> effect trigger, the series slides from the current position onscreen to a position off of the screen, in the indicated direction. If you use SeriesSlide as a <code>showDataEffect</code>, the series slides from offscreen to a position onto the screen, in the indicated direction.</p>   <p>The <code>&lt;mx:SeriesSlide&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:SeriesSlide\\n <strong>Properties</strong>\\n direction=&quot;<i>left|right|up|down</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SeriesSlideExample.mxml", "examples/SeriesSlideExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.effects.SeriesZoom",
  "description": "The SeriesZoom effect implodes and explodes chart data into and out of the focal point that you specify. As with the SeriesSlide effect, whether the effect is zooming to or from this point depends on whether it is assigned to the <code>showDataEffect</code> or <code>hideDataEffect</code> effect trigger.   <p>The <code>&lt;mx:SeriesZoom&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:SeriesZoom\\n <strong>Properties</strong>\\n horizontalFocus=&quot;center|left|right|null&quot;\\n relativeTo=&quot;series|chart&quot;\\n verticalFocus=&quot;top|center|bottom|null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SeriesZoomExample.mxml", "examples/SeriesZoomExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.effects.effectClasses.SeriesEffectInstance",
  "description": "The SeriesEffectInstance class implements the base instance class for the chart series effects.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.effects.SeriesEffect", "mx.charts.effects.SeriesEffect"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.effects.effectClasses.SeriesInterpolateInstance",
  "description": "The SeriesInterpolateInstance class implements the instance class for the SeriesInterpolate effect. Flex creates an instance of this class when it plays a SeriesInterpolate effect; you do not create one yourself.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.effects.SeriesInterpolate", "mx.charts.effects.SeriesInterpolate"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.effects.effectClasses.SeriesSlideInstance",
  "description": "The SeriesSlideInstance class implements the instance class for the SeriesSlide effect. Flex creates an instance of this class when it plays a SeriesSlide effect; you do not create one yourself.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.effects.SeriesSlide", "mx.charts.effects.SeriesSlide"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.effects.effectClasses.SeriesZoomInstance",
  "description": "The SeriesZoomInstance class implements the instance class for the SeriesZoom effect. Flex creates an instance of this class when it plays a SeriesZoom effect; you do not create one yourself.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.effects.SeriesZoom", "mx.charts.effects.SeriesZoom"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.events.ChartEvent",
  "description": "The ChartEvent class represents events that are specific to the chart control, such as when a chart is clicked. This event is only triggered if there are no ChartItem objects underneath the mouse.",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.events.ChartItemEvent", "mx.charts.events.ChartItemEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.events.ChartItemEvent",
  "description": "The ChartItemEvent class represents events that are specific to the chart components, such as when a chart item is clicked.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.events.LegendMouseEvent",
  "description": "The LegendMouseEvent class represents event objects that are specific to the chart legend components. such as when a legend item is clicked on.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.renderers.AreaRenderer",
  "description": "The default class used to render the area beneath the dataPoints of an AreaSeries object. This class renders the area using the fill, stroke, and line type as specified by the AreaSeries object's <code>areaFill</code>, <code>areaStroke</code>, and <code>form</code> styles, respectively.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.BoxItemRenderer",
  "description": "A simple chart itemRenderer implementation that fills a rectangular area. This class is the default itemRenderer for ColumnSeries and BarSeries objects. It can be used as an itemRenderer for ColumnSeries, BarSeries, AreaSeries, LineSeries, PlotSeries, and BubbleSeries objects. This class renders its area on screen using the <code>fill</code> and <code>stroke</code> styles of its associated series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.CandlestickItemRenderer",
  "description": "The default itemRenderer for a CandlestickSeries object. This class renders a standard CandlestickChart item by using the <code>stroke</code>, <code>boxStroke</code>, <code>fill</code>, and <code>declineFill</code> styles of its associated series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.CircleItemRenderer",
  "description": "A simple chart itemRenderer implementation that fills an elliptical area. This class can be used as an itemRenderer for ColumnSeries, BarSeries, AreaSeries, LineSeries, PlotSeries, and BubbleSeries objects. It renders its area on screen using the <code>fill</code> and <code>stroke</code> styles of its associated series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.CrossItemRenderer",
  "description": "A simple chart itemRenderer implementation that fills a cross in its assigned area. This class can be used as an itemRenderer for ColumnSeries, BarSeries, AreaSeries, LineSeries, PlotSeries, and BubbleSeries objects. It renders its area on screen using the <code>fill</code> and <code>stroke</code> styles of its associated series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.DiamondItemRenderer",
  "description": "A simple chart itemRenderer implementation that fills a diamond in its assigned area. This class can be used as an itemRenderer for ColumnSeries, BarSeries, AreaSeries, LineSeries, PlotSeries, and BubbleSeries objects. It renders its area on screen using the <code>fill</code> and <code>stroke</code> styles of its associated series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.HLOCItemRenderer",
  "description": "The default item renderer for an HLOCSeries object. This class renders a vertical line from high to low with tick marks at the open and close points of the chart item.  <p>The vertical line is rendered by using the value of the owning series's <code>stroke</code> style. The open and close tick marks are rendered by using the owning series's <code>openTickStroke</code> and <code>closeTickStroke</code> styles, respectively. The lengths of the open and close tick marks are determined by the owning series's <code>openTickLength</code> and <code>closeTickLength</code>styles, respectively.</p>  <p>Both the open tick and close tick values are optional; an HLOCItemRenderer only renders the tick marks if the open and close values on the associated chart item are non-<code>NaN</code> values.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.charts.series.HLOCSeries", "mx.charts.series.HLOCSeriesItem", "mx.charts.series.HLOCSeries", "mx.charts.series.HLOCSeriesItem"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.LineRenderer",
  "description": "A simple implementation of a line segment renderer that is used by LineSeries objects. This class renders a line on screen using the stroke and form defined by the owning series's <code>lineStroke</code> and <code>form</code> styles, respectively.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.ShadowBoxItemRenderer",
  "description": "A simple chart itemRenderer implementation that fills a rectangular area and surrounds it with a drop shadow. This class can be used as an itemRenderer for ColumnSeries, BarSeries, AreaSeries, LineSeries, PlotSeries, and BubbleSeries objects. It renders its area on screen using the <code>fill</code> and <code>stroke</code> styles of its associated series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.ShadowLineRenderer",
  "description": "An implementation of a line segment renderer that is used by LineSeries objects. This class renders a line on screen with a dropshadow by using the stroke and form defined by the owning series's <code>lineStroke</code> and <code>form</code> styles, respectively. <p>ShadowLineRenderer is the default lineSegmentRenderer for the LineSeries class.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.TriangleItemRenderer",
  "description": "A simple chart itemRenderer implementation that fills an upright triangle in its assigned area. This class can be used as an itemRenderer for ColumnSeries, BarSeries, AreaSeries, LineSeries, PlotSeries, and BubbleSeries objects. It renders its area on screen using the <code>fill</code> and <code>stroke</code> styles of its associated series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.renderers.WedgeItemRenderer",
  "description": "The default itemRenderer for a PieSeries object. This class renders a wedge using the <code>stroke</code> and <code>radialStroke</code> styles of the owning series to draw the inner and outer edges and side edges of the wedge, respectively. The wedge is filled using the value of the <code>fill</code> property of the associated chart item.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.AreaSeries",
  "description": "Defines a data series for an AreaChart control. By default, this class uses the AreaRenderer itemRenderer. Optionally, you can define a different itemRenderer for the data series. The itemRenderer must implement the IDataRenderer interface.   <p>The <code>&lt;mx:AreaSeries&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:AreaSeries\\n <strong>Properties</strong>\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n horizontalAxis=&quot;<i>No default</i>&quot;\\n minField=&quot;null&quot;\\n sortOnXField=&quot;<i>true</i>&quot;\\n stacker=&quot;<i>No default</i>&quot;\\n stackTotals=&quot;<i>No default</i>&quot;\\n xField=&quot;null&quot;\\n verticalAxis=&quot;<i>No default</i>&quot;\\n yField=&quot;null&quot;\\n \\n <strong>Styles</strong>\\n adjustedRadius=&quot;2&quot;\\n areaFill=&quot;<i>IFill</i>&quot;\\n areaRenderer=&quot;<i>areaRenderer</i>&quot;\\n areaStroke=&quot;<i>Stroke</i>&quot;\\n fill=&quot;<i>IFill; no default</i>&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n form=&quot;<i>segment|curve|horizontal|reverseStep|step|vertical</i>&quot;\\n itemRenderer=&quot;<i>itemRenderer</i>&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n radius=&quot;4&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/Line_AreaChartExample.mxml", "../examples/Line_AreaChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.AreaChart", "mx.charts.AreaChart"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.AreaSet",
  "description": "A grouping set that can be used to stack AreaSeries objects in any chart. An AreaSet encapsulates the same stacking behavior that is used in an AreaChart control, but can be used to assemble custom charts that are based on the CartesianChart class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.BarSeries",
  "description": "Defines a data series for a BarChart control. By default, this class uses the BoxItemRenderer class. Optionally, you can define an itemRenderer for the data series. The itemRenderer must implement the IDataRenderer interface.   <p>The <code>&lt;mx:BarSeries&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:BarSeries\\n <strong>Properties</strong>\\n barWidthRatio=&quot;.65&quot;\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n horizontalAxis=&quot;<i>No default</i>&quot;\\n labelField=&quot;<i>No default</i>&quot;\\n labelFunction=&quot;<i>No default</i>&quot;\\n maxBarWidth=&quot;<i>No default</i>&quot;\\n minField=&quot;null&quot;\\n offset=&quot;<i>No default</i>&quot;\\n stacker=&quot;<i>No default</i>&quot;\\n stackTotals=&quot;<i>No default</i>&quot;\\n verticalAxis=&quot;<i>No default</i>&quot;\\n xField=&quot;null&quot;\\n yField=&quot;null&quot;\\n \\n <strong>Styles</strong>\\n fill=&quot;<i>IFill; no default</i>&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;italic|normal&quot;\\n fontWeight=&quot;bold|normal&quot;\\n labelAlign=&quot;center|left|right&quot;\\n labelPosition=&quot;none|inside|outside&quot;\\n labelSizeLimit=&quot;9&quot;\\n itemRenderer=&quot;<i>itemRenderer</i>&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n textDecoration=&quot;underline|none&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/Column_BarChartExample.mxml", "../examples/Column_BarChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.BarChart", "mx.charts.BarChart"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.BarSet",
  "description": "A grouping set that can be used to stack or cluster BarSeries objects in any chart. A BarSet encapsulates the same grouping behavior that is used in a BarChart control, but it can be used to assemble custom charts that are based on the CartesianChart class. BarSets can be used to cluster any chart element type that implements the IBar interface. It can stack any chart element type that implements the IBar and IStackable interfaces. Because the BarSet class implements the IBar interface, you can use BarSets to cluster other BarSets to build more advanced custom charts.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.BubbleSeries",
  "description": "Defines a data series for a BubbleChart control. The default itemRenderer is the CircleRenderer class. Optionally, you can define an itemRenderer for the data series. The itemRenderer must implement the IDataRenderer interface.  <p> The <code>&lt;mx:BubbleSeries&gt;</code> tag inherits all the properties of its parent classes, and the following properties: </p> <pre>\\n &lt;mx:BubbleSeries\\n <strong>Properties</strong>\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n horizontalAxis=&quot;<i>No default</i>&quot;\\n itemType=&quot;<i>No default</i>&quot;\\n legendData=&quot;<i>No default</i>&quot;\\n maxRadius=&quot;50&quot;\\n minRadius=&quot;0&quot;\\n radiusAxis=&quot;<i>No default</i>&quot;\\n radiusField=&quot;<i>No default</i>&quot;\\n renderData=&quot;<i>No default</i>&quot;\\n renderDataType=&quot;<i>No default</i>&quot;\\n verticalAxis=&quot;<i>No default</i>&quot;\\n xField=&quot;null&quot;\\n yField=&quot;null&quot;\\n \\n <strong>Styles</strong>\\n fill=&quot;<i>IFill; no default</i>&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n itemRenderer=&quot;<i>itemRenderer</i>&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/BubbleChartExample.mxml", "../examples/BubbleChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.BubbleChart", "mx.charts.BubbleChart"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.CandlestickSeries",
  "description": "Represents financial data as a series of candlesticks representing the high, low, opening, and closing values of a data series. The top and bottom of the vertical line in each candlestick represent the high and low values for the datapoint, while the top and bottom of the filled box represent the opening and closing values. Each candlestick is filled differently depending on whether the closing value for the datapoint is higher or lower than the opening value.  <p> The <code>&lt;mx:CandlestickSeries&gt;</code> tag inherits all the properties of its parent classes, and the following properties: </p> <pre>\\n &lt;mx:CandlestickSeries\\n <strong>Properties</strong>\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n \\n <strong>Styles</strong>\\n boxStroke=&quot;<i>IStroke; no default</i>&quot;\\n declineFill=&quot;<i>IFill; no default</i>&quot;\\n fill=&quot;<i>IFill; no default</i>&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/CandlestickChartExample.mxml", "../examples/CandlestickChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.CandlestickChart", "mx.charts.CandlestickChart"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.ColumnSeries",
  "description": "Defines a data series for a ColumnChart control. By default, this class uses the BoxItemRenderer class. Optionally, you can define a custom itemRenderer for the data series. The custom itemRenderer must implement the IDataRenderer interface.  <p> The <code>&lt;mx:ColumnSeries&gt;</code> tag inherits all the properties of its parent classes, and the following properties: </p> <pre>\\n &lt;mx:ColumnSeries\\n <strong>Properties</strong>\\n columnWidthRatio=&quot;.65&quot;\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n horizontalAxis=&quot;<i>No default</i>&quot;\\n labelField=&quot;<i>No default</i>&quot;\\n labelFunction=&quot;<i>No default</i>&quot;\\n legendData=&quot;<i>No default</i>&quot;\\n maxColumnWidth=&quot;<i>No default</i>&quot;\\n minField=&quot;null&quot;\\n offset=&quot;<i>No default</i>&quot;\\n sortOnXField=&quot;false|true&quot;\\n stacker=&quot;<i>No default</i>&quot;\\n stackTotals=&quot;<i>No default</i>&quot;\\n verticalAxis=&quot;<i>No default</i>&quot;\\n xField=&quot;null&quot;\\n yField=&quot;null&quot;\\n \\n \\n <strong>Styles</strong>\\n fill=&quot;<i>IFill; no default</i>&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;italic|normal&quot;\\n fontWeight=&quot;bold|normal&quot;\\n labelAlign=&quot;center|left|right&quot;\\n labelPosition=&quot;none|inside|outside&quot;\\n labelSizeLimit=&quot;9&quot;\\n itemRenderer=&quot;<i>BoxItemRenderer</i>&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n stroke=&quot;<i>Stroke; no default</i>&quot;\\n textDecoration=&quot;underline|none&quot;\\n /&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/Column_BarChartExample.mxml", "../examples/Column_BarChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.ColumnChart", "mx.charts.ColumnChart"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.ColumnSet",
  "description": "ColumnSet is a grouping set that can be used to stack or cluster column series in any arbitrary chart. A ColumnSet encapsulates the same grouping behavior used in a ColumnChart, but can be used to assemble custom charts based on CartesianChart. ColumnSets can be used to cluster any chart element type that implements the IColumn interface. It can stack any chart element type that implements the IColumn and IStackable interfaces. Since ColumnSet itself implements the IColumn interface, you can use ColumnSets to cluster other ColumnSets to build more advanced custom charts.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.HLOCSeries",
  "description": "Represents financial data as a series of elements representing the high, low, closing, and, optionally, opening values of a data series. The top and bottom of the vertical line in each element represent the high and low values for the datapoint. The right-facing tick mark represents the closing value, and the left tick mark represents the opening value, if one was specified.   <p>The <code>&lt;mx:HLOCSeries&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:HLOCSeries\\n <strong>Styles</strong>\\n closeTickLength=&quot;<i>No default</i>&quot;\\n closeTickStroke=&quot;<i>No default</i>&quot;\\n openTickLength=&quot;<i>No default</i>&quot;\\n openTickStroke=&quot;<i>No default</i>&quot;\\n stroke=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/HLOCChartExample.mxml", "../examples/HLOCChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.HLOCChart", "mx.charts.HLOCChart"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.LineSeries",
  "description": "Defines a data series for a LineChart control. By default, this class uses the ShadowLineRenderer class. Optionally, you can define an itemRenderer for the data series. The itemRenderer must implement the IDataRenderer interface.   <p>The <code>&lt;mx:LineSeries&gt;</code> tag inherits all the properties of its parent classes and adds the following properties:</p>  <pre>\\n &lt;mx:LineSeries\\n <strong>Properties</strong>\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n horizontalAxis=&quot;<i>No default</i>&quot;\\n interpolateValues=&quot;false|true&quot;\\n sortOnXField=&quot;false|true&quot;\\n verticalAxis=&quot;<i>No default</i>&quot;\\n xField=&quot;null&quot;\\n yField=&quot;null&quot;\\n \\n <strong>Styles</strong>\\n adjustedRadius=&quot;2&quot;\\n fill=&quot;0xFFFFFF&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n form=&quot;segment|curve|horizontal|reverseStep|step|vertical&quot;\\n itemRenderer=&quot;<i>itemRenderer</i>&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n lineSegmentRenderer=&quot;<i>ShadowLineRenderer</i>&quot;\\n lineStroke=&quot;Stroke(0xE47801,3)&quot;\\n radius=&quot;4&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/Line_AreaChartExample.mxml", "../examples/Line_AreaChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.LineChart", "mx.core.IDataRenderer", "mx.charts.LineChart", "mx.core.IDataRenderer"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.PieSeries",
  "description": "The PieSeries class defines the data series for a PieChart control. The default item renderer is the WedgeItemRenderer class. Optionally, you can define an itemRenderer for the data series. The itemRenderer must implement the IDataRenderer interface.   <p>The <code>&lt;mx:PieSeries&gt;</code> tag inherits all the properties of its parent classes, and the following properties:</p>  <pre>\\n &lt;mx:PieSeries\\n <strong>Properties</strong>\\n angularAxis=&quot;&quot;\\n explodeRadius=&quot;0&quot;\\n field=&quot;null&quot;\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n itemType=&quot;<i>No default</i>&quot;\\n labelFunction=&quot;<i>No default</i>&quot;\\n labelField=&quot;<i>No default</i>&quot;\\n maxLabelRadius=&quot;0.6&quot;\\n nameField=&quot;null&quot;\\n outerRadius=&quot;1&quot;\\n perWedgeExplodeRadius=&quot;<i>Array, no default</i>&quot;\\n renderDataType=&quot;<i>No default</i>&quot;\\n reserveExplodeRadius=&quot;0&quot;\\n startAngle=&quot;0&quot;\\n \\n <strong>Styles</strong>\\n calloutGap=&quot;10&quot;\\n calloutStroke=&quot;<i>IStroke; no default</i>&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n fontSize=&quot;10&quot;\\n innerRadius=&quot;0&quot;\\n insideLabelSizeLimit=&quot;9&quot;\\n itemRenderer=&quot;<i>No default</i>&quot;\\n labelPosition=&quot;none|callout|inside|insideWithCallout|outside&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n radialStroke=&quot;<i>IStroke; no default</i>&quot;\\n renderDirection=&quot;clockwise|counterClockwise&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/PieChartExample.mxml", "../examples/PieChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.PieChart", "mx.charts.PieChart"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.PlotSeries",
  "description": "Defines a data series for a PlotChart control. The default item renderer for a PlotChart control is the DiamondItemRenderer class. Optionally, you can define an item renderer for the data series. The item renderer must implement the IDataRenderer interface.   <p>The <code>&lt;mx:PlotSeries&gt;</code> tag inherits all the properties of its parent classes, and adds the following properties:</p>  <pre>\\n &lt;mx:PlotSeries\\n <strong>Properties</strong>\\n fillFunction=&quot;<i>Internal fill function</i>&quot;\\n horizontalAxis=&quot;<i>No default</i>&quot;\\n verticalAxis=&quot;<i>No default</i>&quot;\\n xField=&quot;null&quot;\\n yField=&quot;null&quot;\\n \\n <strong>Styles</strong>\\n adjustedRadius=&quot;2&quot;\\n fill=&quot;0xFFFFFF&quot;\\n fills=&quot;<i>IFill; no default</i>&quot;\\n itemRenderer=&quot;<i>itemRenderer</i>&quot;\\n legendMarkerRenderer=&quot;<i>Defaults to series's itemRenderer</i>&quot;\\n radius=&quot;5&quot;\\n stroke=&quot;<i>IStroke; no default</i>&quot;\\n /&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["../examples/PlotChartExample.mxml", "../examples/PlotChartExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.charts.PlotChart", "mx.charts.renderers.DiamondItemRenderer", "mx.charts.PlotChart", "mx.charts.renderers.DiamondItemRenderer"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.items.AreaSeriesItem",
  "description": "Represents the information required to render an item as part of an AreaSeries. The AreaSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.BarSeriesItem",
  "description": "Represents the information required to render an item as part of a BarSeries. The BarSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.BubbleSeriesItem",
  "description": "Represents the information required to render an item as part of a BubbleSeries. The BubbleSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.ColumnSeriesItem",
  "description": "Represents the information required to render an item as part of a ColumnSeries. The ColumnSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.HLOCSeriesItem",
  "description": "Represents the information required to render an item as part of a HLOCSeries.  The HLOCSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.LineSeriesItem",
  "description": "Represents the information required to render an item as part of a LineSeries. The LineSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.LineSeriesSegment",
  "description": "Represents the information required to render a segment in a LineSeries. The LineSeries class passes a LineSeriesSegment to its lineRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.PieSeriesItem",
  "description": "Represents the information required to render a single wedge as part of a PieSeries. The PieSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.items.PlotSeriesItem",
  "description": "Represents the information required to render an item as part of a PlotSeries. The PlotSeries class passes these items to its itemRenderer when rendering.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.renderData.AreaSeriesRenderData",
  "description": "Represents all the information needed by the AreaSeries to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.renderData.BarSeriesRenderData",
  "description": "Represents all the information needed by the BarSeries to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.renderData.BubbleSeriesRenderData",
  "description": "Represents all the information needed by the BubbleSeries to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.charts.series.renderData.ColumnSeriesRenderData",
  "description": "Represents all the information needed by the ColumnSeries to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.renderData.HLOCSeriesRenderData",
  "description": "Represents all the information needed by the HLOCSeries and CandlestickSeries objects to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.renderData.LineSeriesRenderData",
  "description": "Represents all the information needed by the LineSeries to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.renderData.PieSeriesRenderData",
  "description": "Represents all the information needed by the PieSeries to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.series.renderData.PlotSeriesRenderData",
  "description": "Represents all the information needed by the PlotSeries to render.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.charts.styles.HaloDefaults",
  "description": "Initializes the core default styles for the charts classes. Each chart and element is responsible for initializing their own style values, but they rely on the common values computed by the HaloDefaults class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.ArrayCollection",
  "description": "The ArrayCollection class is a wrapper class that exposes an Array as a collection that can be accessed and manipulated using the methods and properties of the <code>ICollectionView</code> or <code>IList</code> interfaces. Operations on a ArrayCollection instance modify the data source; for example, if you use the <code>removeItemAt()</code> method on an ArrayCollection, you remove the item from the underlying Array.   <p>The <code>&lt;mx:ArrayCollection&gt;</code> tag inherits all the attributes of its superclass, and adds the following attributes:</p>  <pre>\\n &lt;mx:ArrayCollection\\n <b>Properties</b>\\n source=&quot;null&quot;\\n /&gt;\\n </pre>  accesses and manipulates an array with a single Object element. It retrieves the element using the IList interface <code>getItemAt</code> method and an IViewCursor object that it obtains using the ICollectionView <code>createCursor</code> method. <pre>\\n var myCollection:ArrayCollection = new ArrayCollection([ { first: 'Matt', last: 'Matthews' } ]);\\n var myCursor:IViewCursor = myCollection.createCursor();\\n var firstItem:Object = myCollection.getItemAt(0);\\n var firstItemFromCursor:Object = myCursor.current;\\n if (firstItem == firstItemFromCursor)\\n doCelebration();\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "example",
       "values": ["The following code creates a simple ArrayCollection object that", "The following code creates a simple ArrayCollection object that"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.ArrayList",
  "description": "The ArrayList class is a simple implementation of IList that uses a backing Array as the source of the data.  Items in the backing Array can be accessed and manipulated using the methods and properties of the <code>IList</code> interface. Operations on an ArrayList instance modify the data source; for example, if you use the <code>removeItemAt()</code> method on an ArrayList, you remove the item from the underlying Array.  This base class will not throw ItemPendingErrors but it is possible that a subclass might.  <pre>\\n &lt;mx:ArrayList\\n <b>Properties</b>\\n source=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.ComplexFieldChangeWatcher",
  "description": ""},
{ "name": "mx.collections.CursorBookmark",
  "description": "Encapsulates the positional aspects of a cursor in an <code>ICollectionView</code>.  Bookmarks are used to return a cursor to an absolute position within the <code>ICollectionView</code>.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.IViewCursor#bookmark", "mx.collections.IViewCursor#seek()", "mx.collections.IViewCursor#bookmark", "mx.collections.IViewCursor#seek()"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.DefaultSummaryCalculator",
  "description": "The DefaultSummaryCalculator class provides summary calculation logic for <code>SUM</code>, <code>MIN</code>, <code>MAX</code>, <code>AVG</code>, and <code>COUNT</code> operations.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.SummaryField2", "mx.collections.SummaryField2"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.Grouping",
  "description": "The Grouping class defines the fields in the data provider of the AdvancedDataGrid control used to group data. You use this class to create groups when the input data to the AdvancedDataGrid control has a flat structure.  <p>To populate the AdvancedDataGrid control with grouped data, you create an instance of the GroupingCollection class from your flat data, and then pass that GroupingCollection instance to the data provider of the AdvancedDataGrid control. To specify the grouping fields of your flat data, you pass a Grouping instance to the <code>GroupingCollection.grouping</code> property. The Grouping instance contains an Array of GroupingField instances, one per grouping field. </p>  <p>The following example uses the Grouping class to define two grouping fields: Region and Territory.</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:grouping&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;/&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;/&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:grouping&gt;\\n &lt;/mx:GroupingCollection&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>   The <code>&lt;mx.Grouping&gt;</code> tag defines the following tag attributes:</p>  <pre>\\n &lt;mx:Grouping\\n <b>Properties </b>\\n compareFunction=&quot;<i>No default</i>&quot;\\n fields=&quot;null&quot;\\n groupingObjectFunction=&quot;<i>No default</i>&quot;\\n label=&quot;GroupLabel&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.collections.GroupingCollection", "mx.collections.GroupingField", "mx.controls.AdvancedDataGrid", "mx.collections.GroupingCollection", "mx.collections.GroupingField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.collections.GroupingCollection",
  "description": "The GroupingCollection class lets you create grouped data from flat data for display in the AdvancedDataGrid control. When you create the instance of the GroupingCollection from your flat data, you specify the field or fields of the data used to create the hierarchy.  <p>To populate the AdvancedDataGrid control with grouped data, you create an instance of the GroupingCollection class from your flat data, and then pass that GroupingCollection instance to the data provider of the AdvancedDataGrid control. To specify the grouping fields of your flat data, you pass a Grouping instance to the <code>GroupingCollection.grouping</code> property. The Grouping instance contains an Array of GroupingField instances, one per grouping field. </p>  <p>The following example uses the GroupingCollection class to define two grouping fields: Region and Territory.</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:grouping&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;/&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;/&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:grouping&gt;\\n &lt;/mx:GroupingCollection&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>   The <code>&lt;mx.GroupingCollection&gt;</code> inherits all the tag attributes of its superclass, and defines the following tag attributes:</p>  <pre>\\n &lt;mx:GroupingCollection\\n <b>Properties </b>\\n grouping=&quot;<i>No default</i>&quot;\\n source=&quot;<i>No default</i>&quot;\\n summaries=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>  <p>This Class has been deprecated and replaced by a new Class <code>GroupingCollection2</code> which provide faster, improved performance and a new summary calculation mechanism. Class <code>SummaryField</code> has also been deprecated and replaced by a new Class <code>SummaryField2</code>. Properties <code>operation</code> and <code>summaryFunction</code> are not present in the Class <code>SummaryField2</code>. A new property <code>summaryOperation</code> is introduced in <code>SummaryField2</code>.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.collections.Grouping", "mx.collections.GroupingField", "mx.controls.AdvancedDataGrid", "mx.collections.Grouping", "mx.collections.GroupingField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.GroupingCollection2",
  "description": "The GroupingCollection2 class lets you create grouped data from flat data for display in the AdvancedDataGrid control. When you create the instance of the GroupingCollection2 from your flat data, you specify the field or fields of the data used to create the hierarchy.  <p><b>Note: </b>In the previous release of Flex, you used the GroupingCollection class with the AdvancedDataGrid control. The GroupingCollection2 class is new for Flex 4 and provides better performance than GroupingCollection.</p>  <p>To populate the AdvancedDataGrid control with grouped data, you create an instance of the GroupingCollection2 class from your flat data, and then pass that GroupingCollection2 instance to the data provider of the AdvancedDataGrid control. To specify the grouping fields of your flat data, you pass a Grouping instance to the <code>GroupingCollection2.grouping</code> property. The Grouping instance contains an Array of GroupingField instances, one per grouping field. </p>  <p>The following example uses the GroupingCollection2 class to define two grouping fields: Region and Territory.</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection2 id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:grouping&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;/&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;/&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:grouping&gt;\\n &lt;/mx:GroupingCollection2&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>   The <code>&lt;mx.GroupingCollection2&gt;</code> inherits all the tag attributes of its superclass, and defines the following tag attributes:</p>  <pre>\\n &lt;mx:GroupingCollection2\\n <b>Properties </b>\\n grouping=&quot;<i>No default</i>&quot;\\n source=&quot;<i>No default</i>&quot;\\n summaries=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.collections.Grouping", "mx.collections.GroupingField", "mx.controls.AdvancedDataGrid", "mx.collections.Grouping", "mx.collections.GroupingField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.collections.GroupingField",
  "description": "The GroupingField class represents individual data fields that you use to group flat data for display by the AdvancedDataGrid control.  <p>To populate the AdvancedDataGrid control with grouped data, you create an instance of the GroupingCollection class from your flat data, and then pass that GroupingCollection instance to the data provider of the AdvancedDataGrid control. To specify the grouping fields of your flat data, you pass a Grouping instance to the <code>GroupingCollection.grouping</code> property. The Grouping instance contains an Array of GroupingField instances, one per grouping field. </p>  <p>The following example uses the Grouping class to define two grouping fields: Region and Territory.</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:grouping&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;/&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;/&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:grouping&gt;\\n &lt;/mx:GroupingCollection&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>   The <code>&lt;mx.GroupingField&gt;</code> inherits all the tag attributes of its superclass, and defines the following tag attributes:</p>  <pre>\\n &lt;mx:GroupingField\\n <b>Properties </b>\\n caseInsensitive=&quot;false|true&quot;\\n compareFunction=&quot;<i>No default</i>&quot;\\n descending=&quot;false|true&quot;\\n groupingFunction=&quot;<i>No default</i>&quot;\\n groupingObjectFunction=&quot;<i>No default</i>&quot;\\n name=&quot;null&quot;\\n numeric=&quot;false|true&quot;\\n summaries=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.collections.GroupingCollection", "mx.collections.Grouping", "mx.controls.AdvancedDataGrid", "mx.collections.GroupingCollection", "mx.collections.Grouping"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.HierarchicalCollectionView",
  "description": "The HierarchicalCollectionView class provides a hierarchical view of a standard collection.   The <code>&lt;mx.HierarchicalCollectionView&gt;</code> inherits all the tag attributes of its superclass, and defines the following tag attributes:</p>  <pre>\\n &lt;mx:HierarchicalCollectionView\\n <b>Properties </b>\\n showRoot=&quot;true|false&quot;\\n source=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.HierarchicalCollectionViewCursor",
  "description": "The HierarchicalCollectionViewCursor class defines a cursor for a hierarchical view of a standard collection. The collection that this cursor walks across need not be hierarchical - it may be flat. This class delegates to the IHierarchicalData for information regarding the tree structure of the data it walks across.",
"tags": [
{  "tagName": "see",
       "values": ["HierarchicalCollectionView", "HierarchicalCollectionView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.HierarchicalData",
  "description": "Hierarchical data is data already in a structure of parent and child data items. The HierarchicalData class provides a default implementation for accessing and manipulating data for use in controls such as the AdvancedDataGrid control. To configure the AdvancedDataGrid control to display hierarchical data, you pass to the <code>dataProvider</code> property an instance of the HierarchicalData class.  This implementation handles E4X, XML, and Object nodes in similar but different ways. See each method description for details on how the method accesses values in nodes of various types.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.ICollectionView",
  "description": "An <code>ICollectionView</code> is a view onto a collection of data. The view can be modified to show the data sorted according to various criteria or reduced by filters without modifying the underlying data. An IViewCursor provides to access items within a collection. You can modify the collection by using the IViewCursor interface <code>insert()</code> and <code>remove()</code> methods.  <p>An <code>ICollectionView</code> may be a view onto data that has been retrieved from a remote location. When Implementing this interface for data that may be remote it is important to handle the case where data may not yet be available, which is indicated by the <code>ItemPendingError</code>.</p>  <p>The <code>IList</code> interface is an alternative to the <code>ICollectionView</code> interface.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.IViewCursor", "mx.collections.errors.ItemPendingError", "mx.collections.IList", "mx.collections.IViewCursor", "mx.collections.errors.ItemPendingError", "mx.collections.IList"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.IComplexSortField",
  "description": ""},
{ "name": "mx.collections.IGroupingCollection",
  "description": "The IGroupingCollection interface defines the interface required to create grouped data from flat data.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.GroupingCollection", "mx.controls.AdvancedDataGrid", "mx.collections.GroupingCollection", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.IGroupingCollection2",
  "description": "The IGroupingCollection2 interface defines the interface required to create grouped data from flat data.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.GroupingCollection2", "mx.controls.AdvancedDataGrid", "mx.collections.GroupingCollection2", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.IHierarchicalCollectionView",
  "description": "The IHierarchicalCollectionView interface defines an interface for hierarchical or grouped data. Typically, you use this data with the AdvancedDataGrid control.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.IHierarchicalCollectionViewCursor",
  "description": "The IHierarchicalCollectionViewCursor interface defines the interface for enumerating a hierarchical collection view bidirectionally. This cursor provides capabilities to find the current depth of an item.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.IViewCursor", "mx.controls.IHierarchicalCollectionView", "mx.collections.IViewCursor", "mx.controls.IHierarchicalCollectionView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.IHierarchicalData",
  "description": "The IHierarchicalData interface defines the interface used to represent hierarchical data as the data provider for a Flex component. Hierarchical data is data in a structure of parent and child data items.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.ICollectionView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.IList",
  "description": "A collection of items organized in an ordinal fashion. Provides access and manipulation methods based on index.  <p>An <code>IList</code> may be a view onto data that has been retrieved from a  remote location. When writing for a collection that may be remote, it is important to handle the case where data may not yet be available, which is indicated by the  <code>ItemPendingError</code>.</p>  <p>The <code>ICollectionView</code> is an alternative to the <code>IList</code>.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.errors.ItemPendingError", "mx.collections.ICollectionView", "mx.collections.ListCollectionView", "mx.collections.errors.ItemPendingError", "mx.collections.ICollectionView", "mx.collections.ListCollectionView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.ISort",
  "description": "The <code>ISort</code> interface defines the interface for classes that provide the sorting information required to sort the data of a collection view.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.ISortField", "mx.collections.ICollectionView", "mx.collections.ISortField"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.ISortField",
  "description": "The <code>ISortField</code> interface defines the interface for classes that are used with <code>ISort</code> classes, to provide the sorting information required to sort the specific fields or property in a collection view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.ISummaryCalculator",
  "description": "The ISummaryCalculator interface defines the interface implemented by custom summary calculator classes. An instance of a class that implements this interface can be passed to the <code>summaryOperation</code> property of the <code>SummaryField2</code> Class.  <p>Implement the methods of this interface in two groups. The first group consists of the <code>summaryCalculationBegin()</code>, <code>calculateSummary()</code>, and <code>returnSummary()</code> methods. Use these methods to compute summary of the values.</p>  <p>The second group consists of the <code>summaryOfSummaryCalculationBegin()</code>, <code>calculateSummaryOfSummary()</code>, and <code>returnSummaryOfSummary()</code> methods. Use these methods to compute summary of summary values.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.SummaryField2", "mx.collections.SummaryField2"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.IViewCursor",
  "description": "Defines the interface for enumerating a collection view bi-directionally. This cursor provides find, seek, and bookmarking capabilities along with the modification methods insert and remove. When a cursor is first retrieved from a view, (typically by the ICollectionView <code>createCursor()</code> method) the value of the <code>current</code> property should be the first item in the view, unless the view is empty.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.LeafNodeCursor",
  "description": "This class provides a heirarchical view (a tree-like) view of a standard collection. The collection that this Cursor walks across need not be heirarchical but may be flat. This class delegates to the IHierarchicalData for information regarding the tree structure of the data it walks across. This class assumes that all the nodes are open and then traverse through them.  Only methods moveNext() and movePrevious() are implemented.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "see",
       "values": ["HierarchicalCollectionView", "HierarchicalCollectionView"]}  ]},
{ "name": "mx.collections.ListCollectionView",
  "description": "The ListCollectionView class adds the properties and methods of the <code>ICollectionView</code> interface to an object that conforms to the <code>IList</code> interface. As a result, you can pass an object of this class to anything that requires an <code>IList</code> or <code>ICollectionView</code>.  <p>This class also lets you use [ ] array notation to access the <code>getItemAt()</code> and <code>setItemAt()</code> methods. If you use code such as <code>myListCollectionView[index]</code> Flex calls the <code>myListCollectionView</code> object's <code>getItemAt()</code> or <code>setItemAt()</code> method.</p>   <p>The <code>&lt;mx:ListCollectionView&gt;</code> has the following attributes, which all of its subclasses inherit:</p>  <pre>\\n &lt;mx:ListCollectionView\\n <b>Properties</b>\\n filterFunction=&quot;null&quot;\\n list=&quot;null&quot;\\n sort=&quot;null&quot;\\n <b>Events</b>\\n collectionChange=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.Sort",
  "description": "Provides the sorting information required to establish a sort on an existing view (<code>ICollectionView</code> interface or class that implements the interface). After you assign a <code>Sort</code> instance to the view's <code>sort</code> property, you must call the view's <code>refresh()</code> method to apply the sort criteria.  <p>Typically the sort is defined for collections of complex items, that is collections in which the sort is performed on one or more properties of the objects in the collection. The following example shows this use:</p> <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n // In the real world, the collection would have more than one item.\\n col.addItem({first:&quot;Anders&quot;, last:&quot;Dickerson&quot;});\\n \\n // Create the Sort instance.\\n var sort:ISort = new Sort();\\n \\n // Set the sort field; sort on the last name first, first name second.\\n // Both fields are case-insensitive.\\n sort.fields = [new SortField(&quot;last&quot;,true), new SortField(&quot;first&quot;,true)];\\n // Assign the Sort object to the view.\\n col.sort = sort;\\n \\n // Apply the sort to the collection.\\n col.refresh();\\n </code></pre>  <p>There are situations in which the collection contains simple items, like <code>String</code>, <code>Date</code>, <code>Boolean</code>, etc. In this case, apply the sort to the simple type directly. When constructing a sort for simple items, use a single sort field, and specify a <code>null</code> <code>name</code> (first) parameter in the SortField object constructor. For example: <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem(&quot;California&quot;);\\n col.addItem(&quot;Arizona&quot;);\\n var sort:Sort = new Sort();\\n \\n // There is only one sort field, so use a <code>null</code>\\n // first parameter.\\n sort.fields = [new SortField(null, true)];\\n col.sort = sort;\\n col.refresh();\\n </code></pre> </p>  <p>The Flex implementations of the <code>ICollectionView</code> interface retrieve all items from a remote location before executing a sort. If you use paging with a sorted list, apply the sort to the remote collection before you retrieve the data. </p>  <p>By default this Sort class does not provide correct language specific sorting for strings.  For this type of sorting please see the <code>spark.collections.Sort</code> and <code>spark.collections.SortField</code> classes.</p>  Note: to prevent problems like <a href=&quot;https://issues.apache.org/jira/browse/FLEX-34853&quot;>FLEX-34853</a> it is recommended to use SortField instances as immutable objects (by not changing their state).   <p>The <code>&lt;mx:Sort&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;mx:Sort\\n <b>Properties</b>\\n compareFunction=&quot;<em>Internal compare function</em>&quot;\\n fields=&quot;null&quot;\\n unique=&quot;false | true&quot;\\n /&gt;\\n </pre>  <p>In case items have inconsistent data types or items have complex data types, the use of the default built-in compare functions is not recommended. Inconsistent sorting results may occur in such cases. To avoid such problem, provide a custom compare function and/or make the item types consistent.</p>  <p>Just like any other <code>AdvancedStyleClient</code>-based classes, the <code>Sort</code> and <code>SortField</code> classes do not have a parent-child relationship in terms of event handling. Locale changes in a <code>Sort</code> instance are not dispatched to its <code>SortField</code> instances automatically. The only exceptional case is the internal default <code>SortField</code> instance used when no explicit fields are provided. In this case, the internal default <code>SortField</code> instance follows the locale style that the owner <code>Sort</code> instance has.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "ISortField", "spark.collections.Sort", "spark.collections.SortField", "mx.collections.ICollectionView", "ISortField", "spark.collections.Sort", "spark.collections.SortField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.SortField",
  "description": "Provides the sorting information required to establish a sort on a field or property in a collection view.  The SortField class is meant to be used with the Sort class.  Typically the sort is defined for collections of complex items, that is items in which the sort is performed on properties of those objects. As in the following example:  <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem({first:&quot;Anders&quot;, last:&quot;Dickerson&quot;});\\n var sort:Sort = new Sort();\\n sort.fields = [new SortField(&quot;first&quot;, true)];\\n col.sort = sort;\\n </code></pre>  There are situations in which the collection contains simple items, like <code>String</code>, <code>Date</code>, <code>Boolean</code>, etc. In this case, sorting should be applied to the simple type directly. When constructing a sort for this situation only a single sort field is required and should not have a <code>name</code> specified. For example:  <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem(&quot;California&quot;);\\n col.addItem(&quot;Arizona&quot;);\\n var sort:Sort = new Sort();\\n sort.fields = [new SortField(null, true)];\\n col.sort = sort;\\n </code></pre>  <p>By default the comparison provided by the SortField class does not provide correct language specific sorting for strings.  For this type of sorting please see the <code>spark.collections.Sort</code> and <code>spark.collections.SortField</code> classes.</p>  Note: to prevent problems like <a href=&quot;https://issues.apache.org/jira/browse/FLEX-34853&quot;>FLEX-34853</a> it is recommended to use SortField instances as immutable objects (by not changing their state).   <p>The <code>&lt;mx:SortField&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;mx:SortField\\n <b>Properties</b>\\n caseInsensitive=&quot;false&quot;\\n compareFunction=&quot;<em>Internal compare function</em>&quot;\\n descending=&quot;false&quot;\\n name=&quot;null&quot;\\n numeric=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.Sort", "spark.collections.Sort", "spark.collections.SortField", "mx.collections.ICollectionView", "mx.collections.Sort", "spark.collections.Sort", "spark.collections.SortField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.SortFieldCompareTypes",
  "description": "The SortFieldCompareTypes class defines the valid constant values for the <code>sortCompareType</code> property of the <code>SortField</code> and <code>GridColumn</code>.  <p>Designed to be used from a DataGrids column, but can be referenced directly on the <code>SortField</code></p>  <p>Use the constants in ActionsScript, as the following example shows:</p> <pre>\\n column.sortCompareType = SortFieldCompareTypes.NUMERIC;\\n </pre>  <p>In MXML, use the String value of the constants, as the following example shows:</p> <pre>\\n &lt;s:GridColumn sortCompareType=&quot;numeric&quot; /&gt;\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 11.8", "AIR 3.8", "Flash 11.8", "AIR 3.8"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.11", "Flex 4.11"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.SummaryField",
  "description": "The SummaryField class represents a single property in a SummaryRow instance. Each SummaryRow instance specifies one or more SummayField instances that are used to create a data summary.  <p>Use the <code>dataField</code> property to specify the data field used to generate the summary, the <code>label</code> property to specify the name of the data field created to hold the summary data, and the <code>operation</code> property to specify how to create the summary for numeric fields. You can specify one of the following values: <code>SUM</code>, <code>MIN</code>, <code>MAX</code>, <code>AVG</code>, or <code>COUNT</code>.</p>  <p>The following example creates summary rows based on two fields of the data provider of the AdvancedDataGrid control:</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n initialize=&quot;gc.refresh();&quot;&gt;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;&gt;\\n &lt;mx:summaries&gt;\\n &lt;mx:SummaryRow summaryPlacement=&quot;group&quot;&gt;\\n &lt;mx:fields&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Min Actual&quot; operation=&quot;MIN&quot;/&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Max Actual&quot; operation=&quot;MAX&quot;/&gt;\\n &lt;/mx:fields&gt;\\n &lt;/mx:SummaryRow&gt;\\n &lt;/mx:summaries&gt;\\n &lt;/mx:GroupingField&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;&gt;\\n &lt;mx:summaries&gt;\\n &lt;mx:SummaryRow summaryPlacement=&quot;group&quot;&gt;\\n &lt;mx:fields&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Min Actual&quot; operation=&quot;MIN&quot;/&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Max Actual&quot; operation=&quot;MAX&quot;/&gt;\\n &lt;/mx:fields&gt;\\n &lt;/mx:SummaryRow&gt;\\n &lt;/mx:summaries&gt;\\n &lt;/mx:GroupingField&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:GroupingCollection&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;\\n headerText=&quot;Territory Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Min Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Max Actual&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>  <p>This Class has been deprecated and replaced by a new Class <code>SummaryField2</code>. Properties <code>operation</code> and <code>summaryFunction</code> are not present in the Class <code>SummaryField2</code>. A new property <code>summaryOperation</code> is introduced in <code>SummaryField2</code>.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.collections.GroupingField", "mx.collections.SummaryRow", "mx.controls.AdvancedDataGrid", "mx.collections.GroupingField", "mx.collections.SummaryRow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.collections.SummaryField2",
  "description": "The SummaryField2 class represents a single property in a SummaryRow instance. Each SummaryRow instance specifies one or more SummayField2 instances that are used to create a data summary.  <p><b>Note: </b>In the previous release of Flex, you used the SummaryField class to create summary data. The SummaryField2 class is new for Flex 4 and provides better performance than SummaryField.</p>  <p>Use the <code>dataField</code> property to specify the data field used to generate the summary, the <code>label</code> property to specify the name of the data field created to hold the summary data, and the <code>summaryOperation</code> property to specify how to create the summary for numeric fields. You can specify one of the following values: <code>SUM</code>, <code>MIN</code>, <code>MAX</code>, <code>AVG</code>, or <code>COUNT</code>.</p> Or you can specify an ISummaryCalculator implementation to calculate the summaries.  <p>The following example creates summary rows based on two fields of the data provider of the AdvancedDataGrid control:</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n initialize=&quot;gc.refresh();&quot;&gt;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;&gt;\\n &lt;mx:summaries&gt;\\n &lt;mx:SummaryRow summaryPlacement=&quot;group&quot;&gt;\\n &lt;mx:fields&gt;\\n &lt;mx:SummaryField2 dataField=&quot;Actual&quot;\\n label=&quot;Min Actual&quot; summaryOperation=&quot;MIN&quot;/&gt;\\n &lt;mx:SummaryField2 dataField=&quot;Actual&quot;\\n label=&quot;Max Actual&quot; summaryOperation=&quot;MAX&quot;/&gt;\\n &lt;/mx:fields&gt;\\n &lt;/mx:SummaryRow&gt;\\n &lt;/mx:summaries&gt;\\n &lt;/mx:GroupingField&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;&gt;\\n &lt;mx:summaries&gt;\\n &lt;mx:SummaryRow summaryPlacement=&quot;group&quot;&gt;\\n &lt;mx:fields&gt;\\n &lt;mx:SummaryField2 dataField=&quot;Actual&quot;\\n label=&quot;Min Actual&quot; summaryOperation=&quot;MIN&quot;/&gt;\\n &lt;mx:SummaryField2 dataField=&quot;Actual&quot;\\n label=&quot;Max Actual&quot; summaryOperation=&quot;MAX&quot;/&gt;\\n &lt;/mx:fields&gt;\\n &lt;/mx:SummaryRow&gt;\\n &lt;/mx:summaries&gt;\\n &lt;/mx:GroupingField&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:GroupingCollection&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;\\n headerText=&quot;Territory Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Min Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Max Actual&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>   The <code>&lt;mx.SummaryField2&gt;</code> inherits all the tag attributes of its superclass, and defines the following tag attributes:</p>  <pre>\\n &lt;mx:SummaryField2\\n <b>Properties </b>\\n dataField=&quot;<i>No default</i>&quot;\\n label=&quot;<i>No default</i>&quot;\\n summaryOperation=&quot;<i>SUM</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.collections.GroupingField", "mx.collections.SummaryRow", "mx.controls.AdvancedDataGrid", "mx.collections.GroupingField", "mx.collections.SummaryRow"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.collections.SummaryObject",
  "description": "The SummaryObject class defines the object used to store information when performing custom data summaries on grouped data. Use the <code>SummaryRow.summaryObjectFunction</code> property and the <code>SummaryField.summaryFunction property</code> to add the custom summary logic to your application.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.SummaryField", "mx.collections.SummaryRow", "mx.collections.SummaryField", "mx.collections.SummaryRow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.collections.SummaryRow",
  "description": "The SummaryRow class represents a summary row of the AdvancedDataGrid. You create summary data about your data groups by using the <code>summaries</code> property of the GroupingField or GroupingCollection class. You display the summary data in an existing row of the AdvancedDataGrid control, or display it in a separate row.  <p>The <code>summaries</code> property of the GroupingField or GroupingCollection class takes an instance of the SummaryRow class. You then use the <code>fields</code> property of the SummaryRow class to specify an Array of one or more SummaryField/SummaryField2 instances that define the fields of the data used to create the summary. <code>SummaryField2</code> needs to be used when using <code>GroupingCollection2</code>.</p>  <p>The following example creates summary rows based on two fields of the data provider of the AdvancedDataGrid control:</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n initialize=&quot;gc.refresh();&quot;&gt;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:GroupingCollection id=&quot;gc&quot; source=&quot;{dpFlat}&quot;&gt;\\n &lt;mx:Grouping&gt;\\n &lt;mx:GroupingField name=&quot;Region&quot;&gt;\\n &lt;mx:summaries&gt;\\n &lt;mx:SummaryRow summaryPlacement=&quot;group&quot;&gt;\\n &lt;mx:fields&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Min Actual&quot; operation=&quot;MIN&quot;/&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Max Actual&quot; operation=&quot;MAX&quot;/&gt;\\n &lt;/mx:fields&gt;\\n &lt;/mx:SummaryRow&gt;\\n &lt;/mx:summaries&gt;\\n &lt;/mx:GroupingField&gt;\\n &lt;mx:GroupingField name=&quot;Territory&quot;&gt;\\n &lt;mx:summaries&gt;\\n &lt;mx:SummaryRow summaryPlacement=&quot;group&quot;&gt;\\n &lt;mx:fields&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Min Actual&quot; operation=&quot;MIN&quot;/&gt;\\n &lt;mx:SummaryField dataField=&quot;Actual&quot;\\n label=&quot;Max Actual&quot; operation=&quot;MAX&quot;/&gt;\\n &lt;/mx:fields&gt;\\n &lt;/mx:SummaryRow&gt;\\n &lt;/mx:summaries&gt;\\n &lt;/mx:GroupingField&gt;\\n &lt;/mx:Grouping&gt;\\n &lt;/mx:GroupingCollection&gt;\\n &lt;/mx:dataProvider&gt;\\n \\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;\\n headerText=&quot;Territory Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Min Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Max Actual&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre>   The <code>&lt;mx.SummaryRow&gt;</code> tag defines the following tag attributes:</p>  <pre>\\n &lt;mx:SummaryRow\\n <b>Properties </b>\\n fields=&quot;<i>No default</i>&quot;\\n summaryObjectFunction=&quot;<i>No default</i>&quot;\\n summaryPlacement=&quot;<i>last</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.collections.GroupingField", "mx.collections.SummaryField", "mx.collections.SummaryField2", "mx.controls.AdvancedDataGrid", "mx.collections.GroupingField", "mx.collections.SummaryField", "mx.collections.SummaryField2"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.collections.XMLListAdapter",
  "description": "A simple implementation of IList that uses a backing XMLList. No ItemPendingErrors since the data is always local.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.collections.XMLListCollection",
  "description": "The XMLListCollection class provides collection functionality to an XMLList object and makes available some of the methods of the native XMLList class.   <p>The <code>&lt;mx:XMLListCollection&gt;</code> tag inherits all the attributes of its superclass, and adds the following attributes:</p>  <pre>\\n &lt;mx:XMLListCollection\\n <b>Properties</b>\\n source=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["XMLList", "XML", "XMLList", "XML"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.errors.CursorError",
  "description": "This error is thrown by a collection Cursor. Errors of this class are thrown by classes that implement the IViewCursor interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.collections.errors.SortError",
  "description": "This error is thrown when a Sort class is not configured properly; for example, if the find criteria are invalid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.Box",
  "description": "A Halo Box container lays out its children in a single vertical column or a single horizontal row. The <code>direction</code> property determines whether to use vertical (default) or horizontal layout.  <p><b>Note:</b> Adobe recommends that, when possible, you use the Spark containers with HorizontalLayout or VerticalLayout instead of the Halo Box container.</p>  <p>The Box class is the base class for the VBox and HBox classes. You use the <code>&lt;mx:Box&gt;</code>, <code>&lt;mx:VBox&gt;</code>, and <code>&lt;mx:HBox&gt;</code> tags to define Box containers.</p>  <p>A Box container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td><strong>Vertical Box</strong> The height is large enough to hold all its children at the default or explicit height of the children, plus any vertical gap between the children, plus the top and bottom padding of the container. The width is the default or explicit width of the widest child, plus the left and right padding of the container. <br><strong>Horizontal Box</strong> The width is large enough to hold all of its children at the default width of the children, plus any horizontal gap between the children, plus the left and right padding of the container. The height is the default or explicit height of the tallest child, plus the top and bottom padding for the container.</br> </td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:Box&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <p> <pre>\\n &lt;mx:Box\\n <strong>Properties</strong>\\n direction=&quot;vertical|horizontal&quot;\\n <strong>Styles</strong>\\n horizontalAlign=&quot;left|center|right&quot;\\n horizontalGap=&quot;8&quot;\\n paddingBottom=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n verticalAlign=&quot;top|middle|bottom&quot;\\n verticalGap=&quot;6&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:Box&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleBoxExample.mxml", "examples/SimpleBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.core.Container", "mx.containers.HBox", "mx.containers.VBox", "mx.core.Container", "mx.containers.HBox", "mx.containers.VBox"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.BoxDirection",
  "description": "The BoxDirection class specifies constant values for the <code>direction</code> property of the Box container.",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.Box", "mx.containers.Box"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.Canvas",
  "description": "A Halo Canvas layout container defines a rectangular region in which you place child containers and controls. It is the only container that lets you explicitly specify the location of its children within the container by using the <code>x</code> and <code>y</code> properties of each child.  <p><b>Note:</b> Adobe recommends that, when possible, you use the Spark containers with BasicLayout instead of the Halo Canvas container.</p>  <p>Flex sets the children of a Canvas layout container to their preferred width and preferred height. You may override the value for a child's preferred width by setting its <code>width</code> property to either a fixed pixel value or a percentage of the container size. You can set the preferred height in a similar manner.</p>  <p>If you use percentage sizing inside a Canvas container, some of your components may overlap. If this is not the effect you want, plan your component positions and sizes carefully.</p>  <p>The Canvas container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Large enough to hold all its children at the default sizes of the children</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values</td> </tr> </table>   <p>The <code>&lt;mx:Canvas&gt;</code> tag inherits all the tag attributes of its superclass. Use the following syntax:</p>  <p> <pre>\\n &lt;mx:Canvas&gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:Canvas&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleCanvasExample.mxml", "examples/SimpleCanvasExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.core.Container", "mx.core.Container"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.ControlBar",
  "description": "The ControlBar container lets you place controls at the bottom of a Halo Panel or Halo TitleWindow container. The <code>&lt;mx:ControlBar&gt;</code> tag must be the last child tag of the enclosing tag for the Halo Panel or Halo TitleWindow container.  <p><b>Note:</b> The Spark Panel container does not support the ControlBar container. Modify the skin of the Spark Panel container to add this functionality.</p>  <p>The ControlBar is a Box with a background and default style properties.</p>  <p>A ControlBar container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Height is the default or explicit height of the tallest child, plus the top and bottom padding of the container. Width is large enough to hold all of its children at the default or explicit width of the children, plus any horizontal gap between the children, plus the left and right padding of the container.</td> </tr> <tr> <td>Default padding</td> <td>10 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:ControlBar&gt;</code> tag inherits all the tag attributes but adds no additional attributes:</p>  <pre>\\n &lt;mx:ControlBar&gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:ControlBar&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleControlBarExample.mxml", "examples/SimpleControlBarExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.Panel", "mx.containers.Panel"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.DividedBox",
  "description": "A DividedBox container measures and lays out its children horizontally or vertically in exactly the same way as a Box container, but it inserts draggable dividers in the gaps between the children. Users can drag any divider to resize the children on each side.  <p>The DividedBox class is the base class for the more commonly used HDividedBox and VDividedBox classes.</p>  <p>The <code>direction</code> property of a DividedBox container, inherited from Box container, determines whether it has horizontal or vertical layout.</p>  <p>A DividedBox, HDividedBox, or VDividedBox container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td><strong>Vertical DividedBox</strong> Height is large enough to hold all of its children at the default or explicit heights of the children, plus any vertical gap between the children, plus the top and bottom padding of the container. The width is the default or explicit width of the widest child, plus the left and right padding of the container. <br><strong>Horizontal DividedBox</strong> Width is large enough to hold all of its children at the default or explicit widths of the children, plus any horizontal gap between the children, plus the left and right padding of the container. Height is the default or explicit height of the tallest child plus the top and bottom padding of the container.</br></td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> <tr> <td>Default gap</td> <td>10 pixels for the horizontal and vertical gaps.</td> </tr> </table>   <p>The <code>&lt;mx:DividedBox&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:DividedBox\\n <strong>Properties</strong>\\n liveDragging=&quot;false|true&quot;\\n resizeToContent=&quot;false|true&quot;\\n \\n <strong>Styles</strong>\\n dividerAffordance=&quot;6&quot;\\n dividerAlpha=&quot;0.75&quot;\\n dividerColor=&quot;0x6F7777&quot;\\n dividerSkin=&quot;<i>'mx.skins.BoxDividerSkin' symbol in Assets.swf</i>&quot;\\n dividerThickness=&quot;3&quot;\\n horizontalDividerCursor=&quot;<i>'mx.skins.cursor.HBoxDivider' symbol in Assets.swf</i>&quot;\\n verticalDividerCursor=&quot;<i>'mx.skins.cursor.VBoxDivider' symbol in Assets.swf</i>&quot;\\n \\n <strong>Events</strong>\\n dividerPress=&quot;<i>No default</i>&quot;\\n dividerDrag=&quot;<i>No default</i>&quot;\\n dividerRelease=&quot;<i>No default</i>&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:DividedBox&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DividedBoxExample.mxml", "examples/DividedBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.HDividedBox", "mx.containers.VDividedBox", "mx.containers.HDividedBox", "mx.containers.VDividedBox"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.Form",
  "description": "The Form container lets you control the layout of a form, mark form fields as required or optional, handle error messages, and bind your form data to the Flex data model to perform data checking and validation. It also lets you use style sheets to configure the appearance of your forms.  <p>The following table describes the components you use to create forms in Flex:</p> <table class=&quot;innertable&quot;> <tr> <th>Component</th> <th>Tag</th> <th>Description</th> </tr> <tr> <td>Form</td> <td><code>&lt;mx:Form&gt;</code></td> <td>Defines the container for the entire form, including the overall form layout. Use the FormHeading control and FormItem container to define content. You can also insert other types of components in a Form container.</td> </tr> <tr> <td>FormHeading</td> <td><code>&lt;mx:FormHeading&gt;</code></td> <td>Defines a heading within your form. You can have multiple FormHeading controls within a single Form container.</td> </tr> <tr> <td>FormItem</td> <td><code>&lt;mx:FormItem&gt;</code></td> <td>Contains one or more form children arranged horizontally or vertically. Children can be controls or other containers. A single Form container can hold multiple FormItem containers.</td> </tr> </table>   <p>The <code>&lt;mx:Form&gt;</code> tag inherits all the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Form\\n <strong>Styles</strong>\\n horizontalGap=&quot;8&quot;\\n indicatorGap=&quot;14&quot;\\n labelWidth=&quot;<i>Calculated</i>&quot;\\n paddingBottom=&quot;16&quot;\\n paddingTop=&quot;16&quot;\\n verticalGap=&quot;6&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:Form&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/FormExample.mxml", "examples/FormExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.FormHeading", "mx.containers.FormItem", "mx.containers.FormHeading", "mx.containers.FormItem"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.FormHeading",
  "description": "The FormHeading container is used to display a heading for a group of controls inside a Form container. The left side of the heading is aligned with the left side of the controls inside the form. You can include multiple FormHeading containers within a single Form container.   <p>The <code>&lt;mx:FormHeading&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;mx:FormHeading\\n <strong>Properties</strong>\\n label=&quot;&quot;\\n \\n <strong>Styles</strong>\\n color=&quot;0x0B333C&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n fontAntiAliasType=&quot;advanced|normal&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel|subpixel|none&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n indicatorGap=&quot;14&quot;\\n labelWidth=&quot;<i>Calculated</i>&quot;\\n leading=&quot;2&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n textAlign=&quot;<i>Calculated</i>&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/FormExample.mxml", "examples/FormExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.Form", "mx.containers.FormItem", "mx.containers.Form", "mx.containers.FormItem"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.FormItem",
  "description": "The FormItem container defines a label and one or more children arranged horizontally or vertically. Children can be controls or other containers. A single Form container can hold multiple FormItem containers.   <p>The <code>&lt;mx:FormItem&gt;</code> tag inherits all of the tag attributes of its superclass, except <code>paddingLeft</code>, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:FormItem\\n <strong>Properties</strong>\\n direction=&quot;vertical|horizontal&quot;\\n label=&quot;&quot;\\n required=&quot;false|true&quot;\\n \\n <strong>Styles</strong>\\n horizontalAlign=&quot;left|center|right&quot;\\n horizontalGap=&quot;8&quot;\\n indicatorGap=&quot;14&quot;\\n indicatorSkin=&quot;<i>'mx.containers.FormItem.Required' symbol in Assets.swf</i>&quot;\\n labelStyleName=&quot;&quot;\\n labelWidth=&quot;<i>Calculated</i>&quot;\\n paddingBottom=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n verticalGap=&quot;6&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:FormItem&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/FormExample.mxml", "examples/FormExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.Form", "mx.containers.FormItemDirection", "mx.containers.FormHeading", "mx.controls.FormItemLabel", "mx.containers.Form", "mx.containers.FormItemDirection", "mx.containers.FormHeading", "mx.controls.FormItemLabel"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.FormItemDirection",
  "description": "The FormItemDirection class defines the constant values for the <code>direction</code> property of the FormItem class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.FormItem", "mx.containers.FormItem"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.Grid",
  "description": "A Grid container lets you arrange children as rows and columns of cells, similar to an HTML table. The Grid container contains one or more rows, and each row can contain one or more cells, or items. You use the following tags to define a Grid control:  <ul> <li>The <code>&lt;mx:Grid&gt;</code> tag defines a Grid container.</li>  <li>The <code>&lt;mx:GridRow&gt;</code> tag defines a grid row, which has one or more cells. The grid row must be a child of the <code>&lt;Grid&gt;</code> tag.</li>  <li>The <code>&lt;mx:GridItem&gt;</code> tag defines a grid cell, and must be a child of the <code>&lt;GridRow&gt;</code> tag. The <code>&lt;mx:GridItem&gt;</code> tag can contain any number of children.</li> </ul>  <p>The height of all the cells in a single row is the same, but each row can have a different height. The width of all cells in a single column is the same, but each column can have a different width. You can define a different number of cells for each row or each column of the Grid container. In addition, a cell can span multiple columns or multiple rows of the container.</p>  <p>The Grid, GridRow, and GridItem containers have the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Grid height</td> <td>The sum of the default or explicit heights of all rows plus the gaps between rows.</td> </tr> <tr> <td>Grid width</td> <td>The sum of the default or explicit width of all columns plus the gaps between columns.</td> </tr> <tr> <td>Height of each row and each cell</td> <td>The default or explicit height of the tallest item in the row. If a GridItem container does not have an explicit size, its default height is the default or explicit height of the child in the cell.</td> </tr> <tr> <td>Width of each column and each cell</td> <td>The default or explicit width of the widest item in the column. If a GridItem container does not have an explicit width, its default width is the default or explicit width of the child in the cell.</td> </tr> <tr> <td>Gap between rows and columns</td> <td>Determined by the horizontalGap and verticalGap styles of the Grid class. The default value for both gaps is 6 pixels.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values, for all three container classes.</td> </tr> </table>   <p>The <code>&lt;mx:Grid&gt;</code> tag inherits all of the tag attributes of its superclass, except the <code>Box.direction</code> property, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Grid\\n <strong>Styles</strong>\\n horizontalGap=&quot;8&quot;\\n verticalGap=&quot;6&quot;\\n &gt;\\n ...\\n <i>These child tags are examples only:</i>\\n &lt;mx:GridRow id=&quot;row1&quot;&gt;\\n &lt;mx:GridItem\\n rowSpan=&quot;1&quot;\\n colSpan=&quot;1&quot;>\\n &lt;mx:Button label=&quot;Button 1&quot;/&gt;\\n &lt;/mx:GridItem&gt;\\n ...\\n &lt;/mx:GridRow&gt;\\n ...\\n &lt;/mx:Grid&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GridLayoutExample.mxml", "examples/GridLayoutExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.GridRow", "mx.containers.GridItem", "mx.containers.GridRow", "mx.containers.GridItem"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.GridItem",
  "description": "The GridItem container defines a grid cell in GridRow container. (The GridRow container, in turn, defines a row in a Grid container.) The GridItem container can contain any number of children, which are laid out as in an HBox container. If you do not want HBox layout, create a container, such as a VBox container, as a child of the GridItem control and put other components in this child container.  <p>GridItem containers have the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Height of each row and each cell</td> <td>The default or explicit height of the tallest item in the row. If a GridItem container does not have an explicit size, its default height is the default or explicit height of the child in the cell.</td> </tr> <tr> <td>Width of each column and each cell</td> <td>The default or explicit width of the widest item in the column. If a GridItem container doed not have an explicit width, its default width is the default or explicit width of the child in the cell.</td> </tr> <tr> <td>Gap between rows and columns</td> <td>Determined by the horizontalGap and verticalGap properties of the Grid class. The default value for both gaps is 6 pixels.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values, for all three container classes.</td> </tr> </table>   <p>The <code>&lt;mx:GridItem&gt;</code> tag must be a child of the <code>&lt;GridRow&gt;</code> tag, which defines a grid row. The <code>&lt;mx:GridItem&gt;</code> container inherits the tag attributes of its superclass, and adds the following tag attributes.</p>  <pre>\\n &lt;mx:Grid&gt;\\n &lt;mx:GridRow&gt;\\n &lt;mx:GridItem\\n rowSpan=&quot;1&quot;\\n colSpan=&quot;1&quot;>\\n <i>child components</i>\\n &lt;/mx:GridItem&gt;\\n ...\\n &lt;/mx:GridRow&gt;\\n ...\\n &lt;/mx:Grid&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GridLayoutExample.mxml", "examples/GridLayoutExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.Grid", "mx.containers.GridRow", "mx.containers.Grid", "mx.containers.GridRow"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.GridRow",
  "description": "The GridRow container defines a row in a Grid container, and contains GridCell containers.  <p>GridRow containers have the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Height of each row and each cell</td> <td>The default or explicit height of the tallest item in the row. If a GridItem container does not have an explicit size, its default height is the default or explicit height of the child in the cell.</td> </tr> <tr> <td>Width of each column and each cell</td> <td>The default or explicit width of the widest item in the column. If a GridItem container does not have an explicit width, its default width is the default or explicit width of the child in the cell.</td> </tr> <tr> <td>Gap between rows and columns</td> <td>Determined by the horizontalGap and verticalGap properties of the Grid class. The default value for both gaps is 6 pixels.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values, for all three container classes.</td> </tr> </table>   <p>The <code>&lt;mx:GridRow&gt;</code> must be a child of the <code>&lt;mx:Grid&gt;</code> tag, and has one or more child <code>&lt;mx:GridItem&gt;</code> tags that define the grid cells.</p>  <p>The <code>&lt;mx:GridRow&gt;</code> container inherits the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Grid&gt;\\n &lt;mx:GridRow\\n <strong>Styles</strong>\\n horizontalAlign=&quot;left|center|right&quot;\\n verticalAlign=&quot;top|middle|bottom&quot;\\n &gt;\\n &lt;mx:GridItem\\n <i>child components</i>\\n &lt;/mx:GridItem&gt;\\n ...\\n &lt;/mx:GridRow&gt;\\n ...\\n &lt;/mx:Grid&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GridLayoutExample.mxml", "examples/GridLayoutExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.Grid", "mx.containers.GridItem", "mx.containers.Grid", "mx.containers.GridItem"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.HBox",
  "description": "The Halo HBox container lays out its children in a single horizontal row. You use the <code>&lt;mx:HBox&gt;</code> tag instead of the <code>&lt;mx:Box&gt;</code> tag as a shortcut to avoid having to set the <code>direction</code> property to <code>&quot;horizontal&quot;</code>.  <p><b>Note:</b> Adobe recommends that, when possible, you use the Spark containers with HorizontalLayout instead of the Halo HBox container.</p>  <p>An HBox container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The width is large enough to hold all its children at the default or explicit width of the children, plus any horizontal gap between the children, plus the left and right padding of the container. The height is the default or explicit height of the tallest child, plus the top and bottom padding for the container. </td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:HBox&gt;</code> tag inherits all of the tag attributes of its superclass, except <code>direction</code>, and adds no new tag attributes.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HBoxExample.mxml", "examples/HBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.core.Container", "mx.containers.Box", "mx.containers.VBox", "mx.core.Container", "mx.containers.Box", "mx.containers.VBox"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.HDividedBox",
  "description": "The HDividedBox container lays out its children horizontally in the same way as HBox container, but it inserts a draggable divider in the gap between each child. A user can drag the divider to resize the area allotted to each child. The <code>&lt;mx:HDividedBox/&gt;</code> tag is the same as <code>&lt;mx:DividedBox direction=&quot;horizontal&quot;/&gt;</code>.  <p>An HDividedBox container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Width is large enough to hold all of its children at the default or explicit widths of the children, plus any horizontal gap between the children, plus the left and right padding of the container. Height is the default or explicit height of the tallest child plus the top and bottom padding of the container.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> <tr> <td>Default gap</td> <td>10 pixels for the horizontal and vertical gaps.</td> </tr> </table>   <p>The <code>&lt;mx:HDividedBox&gt;</code> tag inherits all of the tag attributes of its superclass except <code>direction</code> and adds no new tag attributes.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HDividedBoxExample.mxml", "examples/HDividedBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.DividedBox", "mx.containers.VDividedBox", "mx.containers.DividedBox", "mx.containers.VDividedBox"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.Panel",
  "description": "A Halo Panel container consists of a title bar, a caption, a border, and a  content area for its children. Typically, you use Panel containers to wrap top-level application modules. For example, you could include a shopping cart in a Panel container.  <p><b>Note:</b> Adobe recommends that, when possible, you use the Spark Panel container instead of the Halo Panel container.</p>  <p>The Panel container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Height is large enough to hold all of its children at the default height of the children, plus any vertical gaps between the children, the top and bottom padding, the top and bottom borders, and the title bar.<br/> Width is the larger of the default width of the widest child plus the left and right padding of the container, or the width of the title text, plus the border.</td> </tr> <tr> <td>Padding</td> <td>4 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:Panel&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Panel\\n <strong>Properties</strong>\\n layout=&quot;vertical|horizontal|absolute&quot;\\n status=&quot;&quot;\\n title=&quot;&quot;\\n titleIcon=&quot;null&quot;\\n \\n <strong>Styles</strong>\\n borderAlpha=&quot;0.4&quot;\\n borderThicknessBottom=&quot;NaN&quot;\\n borderThicknessLeft=&quot;10&quot;\\n borderThicknessRight=&quot;10&quot;\\n borderThicknessTop=&quot;2&quot;\\n controlBarStyleName=&quot;null&quot;\\n cornerRadius=&quot;4&quot;\\n dropShadowEnabled=&quot;true|false&quot;\\n footerColors=&quot;null&quot;\\n headerColors=&quot;null&quot;\\n headerHeight=&quot;<i>Based on style of title</i>&quot;\\n highlightAlphas=&quot;[0.3,0]&quot;\\n horizontalAlign=&quot;left|center|right&quot;\\n horizontalGap=&quot;8&quot;\\n modalTransparency=&quot;0.5&quot;\\n modalTransparencyBlur=&quot;3&quot;\\n modalTransparencyColor=&quot;#DDDDDD&quot;\\n modalTransparencyDuration=&quot;100&quot;\\n paddingBottom=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n roundedBottomCorners=&quot;false|true&quot;\\n shadowDirection=&quot;center|left|right&quot;\\n shadowDistance=&quot;2&quot;\\n statusStyleName=&quot;windowStatus&quot;\\n titleBackgroundSkin=&quot;TitleBackground&quot;\\n titleStyleName=&quot;windowStyles&quot;\\n verticalAlign=&quot;top|middle|bottom&quot;\\n verticalGap=&quot;6&quot;\\n \\n <strong>Effects</strong>\\n resizeEndEffect=&quot;Dissolve&quot;\\n resizeStartEffect=&quot;Dissolve&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:Panel&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimplePanelExample.mxml", "examples/SimplePanelExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Panel", "mx.containers.ControlBar", "mx.containers.VBox", "spark.components.Panel", "mx.containers.ControlBar", "mx.containers.VBox"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.PanelTitleBar",
  "description": "The PanelView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.TabNavigator",
  "description": "The MX TabNavigator container extends the MX ViewStack container by including a TabBar container for navigating between its child containers.  <p><b>Note:</b> The direct children of an MX navigator container must be MX containers, either MX layout or MX navigator containers, or the Spark NavigatorContent container. You cannot directly nest a control or a Spark container other than the Spark NavigatorContent container within a navigator; they must be children of an child MX container.</p>  <p>Like a ViewStack container, a TabNavigator container has a collection of child containers, in which only one child at a time is visible. Flex automatically creates a TabBar container at the top of the TabNavigator container, with a tab corresponding to each child container. Each tab can have its own label and icon. When the user clicks a tab, the corresponding child container becomes visible as the selected child of the TabNavigator container.</p>  <p>When you change the currently visible child container, you can use the <code>hideEffect</code> property of the container being hidden and the <code>showEffect</code> property of the newly visible child container to apply an effect to the child containers. The TabNavigator container waits for the <code>hideEffect</code> of the child container being hidden to complete before it reveals the new child container. You can interrupt a currently playing effect if you change the <code>selectedIndex</code> property of the TabNavigator container while an effect is playing. </p>  <p>To define the appearance of tabs in a TabNavigator, you can define style properties in a Tab type selector, as the following example shows:</p> <pre>\\n &lt;fx:Style&gt;\\n &#64;namespace mx &quot;library://ns.adobe.com/flex/mx&quot;\\n mx|Tab {\\n fillColors: #006699, #cccc66;\\n upSkin: ClassReference(&quot;CustomSkinClass&quot;);\\n overSkin: ClassReference(&quot;CustomSkinClass&quot;);\\n downSkin: ClassReference(&quot;CustomSkinClass&quot;);\\n }\\n &lt;/fx:Style&gt;\\n </pre>  <p>The Tab type selector defines values on the hidden mx.controls.tabBarClasses.Tab class. The default values for the Tab type selector are defined in the defaults.css file.</p>  <p>You can also define the styles in a class selector that you specify using the <code>tabStyleName</code> style property; for example:</p> <pre>\\n &lt;fx:Style&gt;\\n &#64;namespace mx &quot;library://ns.adobe.com/flex/mx&quot;\\n mx|TabNavigator {\\n tabStyleName:myTabStyle;\\n }\\n \\n .myTabStyle {\\n fillColors: #006699, #cccc66;\\n upSkin: ClassReference(&quot;CustomSkinClass&quot;);\\n overSkin: ClassReference(&quot;CustomSkinClass&quot;);\\n downSkin: ClassReference(&quot;CustomSkinClass&quot;);\\n }\\n &lt;/fx:Style&gt;\\n </pre>  <p>A TabNavigator container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The default or explicit width and height of the first active child plus the tabs, at their default or explicit heights and widths. Default tab height is determined by the font, style, and skin applied to the TabNavigator container.</td> </tr> <tr> <td>Container resizing rules</td> <td>By default, TabNavigator containers are only sized once to fit the size of the first child container. They do not resize when you navigate to other child containers. To force TabNavigator containers to resize when you navigate to a different child container, set the resizeToContent property to true.</td> </tr> <tr> <td>Child layout rules</td> <td>If the child is larger than the TabNavigator container, it is clipped. If the child is smaller than the TabNavigator container, it is aligned to the upper-left corner of the TabNavigator container.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:TabNavigator&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:TabNavigator\\n <b>Styles</b>\\n firstTabStyleName=&quot;<i>Value of the</i> <code>tabStyleName</code> <i>property</i>&quot;\\n focusAlpha=&quot;0.4&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n horizontalAlign=&quot;left|center|right&quot;\\n horizontalGap=&quot;-1&quot;\\n lastTabStyleName=&quot;<i>Value of the</i> <code>tabStyleName</code> <i>property</i>&quot;\\n selectedTabTextStyleName=&quot;undefined&quot;\\n tabHeight=&quot;undefined&quot;\\n tabOffset=&quot;0&quot;\\n tabStyleName=&quot;<i>Name of CSS style declaration that specifies styles for the tabs</i>&quot;\\n tabWidth=&quot;undefined&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:TabNavigator&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TabNavigatorExample.mxml", "examples/TabNavigatorExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.ViewStack", "mx.controls.TabBar", "mx.containers.ViewStack", "mx.controls.TabBar"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.Tile",
  "description": "A Halo Tile container lays out its children in a grid of equal-sized cells. You can specify the size of the cells by using the <code>tileWidth</code> and <code>tileHeight</code> properties, or let the Tile container determine the cell size based on the largest child. A Tile container's <code>direction</code> property determines whether its cells are laid out horizontally or vertically, beginning from the upper-left corner of the Tile container.  <p><b>Note:</b> Adobe recommends that, when possible, you use the Spark containers with TileLayout instead of the Halo Tile container.</p>  <p>A Tile container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Direction</td> <td>horizontal</td> </tr> <tr> <td>Default size of all cells</td> <td>Height is the default or explicit height of the tallest child.<br/> Width is the default or explicit width of the widest child.<br/> All cells have the same default size.</td> </tr> <tr> <td>Default size of Tile container</td> <td>Flex computes the square root of the number of children, and rounds up to the nearest integer. For example, if there are 26 children, the square root is 5.1, which is rounded up to 6. Flex then lays out the Tile container in a 6 by 6 grid.<br/> Default height of the Tile container is equal to (tile cell default height) <strong>x</strong> (rounded square root of the number of children), plus any gaps between children and any padding.<br/> Default width is equal to (tile cell default width) <strong>x</strong> (rounded square root of the number of children), plus any gaps between children and any padding.</td> </tr> <tr> <td>Minimum size of Tile container</td> <td>The default size of a single cell. Flex always allocates enough space to display at least one cell.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:Tile&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Tile\\n <b>Properties</b>\\n direction=&quot;horizontal|vertical&quot;\\n tileHeight=&quot;NaN&quot;\\n tileWidth=&quot;NaN&quot;\\n \\n <b>Sttles</b>\\n horizontalAlign=&quot;left|center|right&quot;\\n horizontalGap=&quot;8&quot;\\n paddingBottom=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n verticalAlign=&quot;top|middle|bottom&quot;\\n verticalGap=&quot;6&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:Tile&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TileLayoutExample.mxml", "examples/TileLayoutExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.core.Container", "mx.core.Container"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.TileDirection",
  "description": "The TileDirection class defines the constant values for the <code>direction</code> property of the Tile container.",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.Tile", "mx.containers.Tile"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.TitleWindow",
  "description": "A TitleWindow layout container contains a title bar, a caption, a border, and a content area for its child. Typically, you use TitleWindow containers to wrap self-contained application modules. For example, you could include a form in a TitleWindow container. When the user completes the form, you can close the TitleWindow container programmatically, or let the user close it by using the Close button.  <p>The TitleWindow container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Height is large enough to hold all of the children in the content area at the default or explicit heights of the children, plus the title bar and border, plus any vertical gap between the children, plus the top and bottom padding of the container.<br/> Width is the larger of the default or explicit width of the widest child, plus the left and right container borders padding, or the width of the title text.</td> </tr> <tr> <td>borders</td> <td>10 pixels for the left and right values.<br/> 2 pixels for the top value.<br/> 0 pixels for the bottom value. </td> </tr> <tr> <td>padding</td> <td>4 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:TitleWindow&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:TitleWindow\\n <b>Properties</b>\\n showCloseButton=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n closeButtonDisabledSkin=&quot;<i>'CloseButtonDisabled' symbol in Assets.swf</i>&quot;\\n closeButtonDownSkin=&quot;<i>'CloseButtonDown' symbol in Assets.swf</i>&quot;\\n closeButtonOverSkin=&quot;<i>'CloseButtonOver' symbol in Assets.swf</i>&quot;\\n closeButtonUpSkin=&quot;<i>'CloseButtonUp' symbol in Assets.swf</i>&quot;\\n \\n <strong>Events</strong>\\n close=&quot;<i>No default</i>&quot;\\n &gt;\\n ...\\n child tags\\n ...\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleTitleWindowExample.mxml -noswf", "examples/TitleWindowApp.mxml", "examples/SimpleTitleWindowExample.mxml -noswf", "examples/TitleWindowApp.mxml"]},
    {  "tagName": "see",
       "values": ["mx.core.Application", "mx.managers.PopUpManager", "mx.containers.Panel", "mx.core.Application", "mx.managers.PopUpManager", "mx.containers.Panel"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.VBox",
  "description": "The Halo VBox container lays out its children in a single vertical column. You use the <code>&lt;mx:VBox&gt;</code> tag instead of the <code>&lt;mx:Box&gt;</code> tag as a shortcut to avoid having to set the <code>direction</code> property to <code>&quot;vertical&quot;</code>.  <p><b>Note:</b> Adobe recommends that, when possible, you use the Spark containers with VerticalLayout instead of the Halo VBox container.</p>  <p>An VBox container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The height is large enough to hold all its children at the default or explicit height of the children, plus any vertical gap between the children, plus the top and bottom padding of the container. The width is the default or explicit width of the widest child, plus the left and right padding of the container. </td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:VBox&gt;</code> tag inherits all of the tag attributes of its superclass, except <code>direction</code>, and adds no new tag attributes.</p></p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/VBoxExample.mxml", "examples/VBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.core.Container", "mx.containers.Box", "mx.containers.HBox", "mx.core.Container", "mx.containers.Box", "mx.containers.HBox"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.VDividedBox",
  "description": "The VDividedBox container lays out its children vertically in the same way as the VBox container, but it inserts a draggable divider in the gap between each child. A user can drag the divider to resize the area allotted to each child. The <code>&lt;mx:VDividedBox/&gt;</code> tag is the same as <code>&lt;mx:DividedBox direction=&quot;vertical&quot;/&gt;</code>.  <p>A VDividedBox container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Height is large enough to hold all of its children at the default or explicit heights of the children, plus any vertical gap between the children, plus the top and bottom padding of the container. The width is the default or explicit width of the widest child plus the left and right padding of the container.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for the top, bottom, left, and right values.</td> </tr> <tr> <td>Default gap</td> <td>10 pixels for the horizontal and vertical gaps.</td> </tr> </table>   <p>The <code>&lt;mx:VDividedBox&gt;</code> tag inherits all of the tag attributes of its superclass, except <code>direction</code>, and adds no new tag attributes.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/VDividedBoxExample.mxml", "examples/VDividedBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.DividedBox", "mx.containers.HDividedBox", "mx.containers.DividedBox", "mx.containers.HDividedBox"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.ViewStack",
  "description": "An MX ViewStack navigator container consists of a collection of child containers stacked on top of each other, where only one child at a time is visible. When a different child container is selected, it seems to replace the old one because it appears in the same location. However, the old child container still exists; it is just invisible.  <p><b>Note:</b> The direct children of an MX navigator container must be MX containers, either MX layout or MX navigator containers, or the Spark NavigatorContent container. You cannot directly nest a control or a Spark container other than the Spark NavigatorContent container within a navigator; they must be children of an child MX container.</p>  <p>A ViewStack container does not provide a user interface for selecting which child container is currently visible. Typically, you set its <code>selectedIndex</code> or <code>selectedChild</code> property in ActionScript in response to some user action. Alternately, you can associate an MX LinkBar, TabBar, ButtonBar, or ToggleButtonBar control or a Spark ButtonBar control with a ViewStack container to provide a navigation interface. To do so, specify the ViewStack container as the value of the <code>dataProvider</code> property of the LinkBar, TabBar or ToggleButtonBar container.</p>  <p>You might decide to use a more complex navigator container than the ViewStack container, such as a TabNavigator container or Accordion container. In addition to having a collection of child containers, these containers provide their own user interface controls for navigating between their children.</p>  <p>When you change the currently visible child container, you can use the <code>hideEffect</code> property of the container being hidden and the <code>showEffect</code> property of the newly visible child container to apply an effect to the child containers. The ViewStack container waits for the <code>hideEffect</code> of the child container being hidden  to complete before it reveals the new child container. You can interrupt a currently playing effect if you change the <code>selectedIndex</code> property of the ViewStack container while an effect is playing.</p>  <p>The ViewStack container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The width and height of the initial active child.</td> </tr> <tr> <td>Container resizing rules</td> <td>By default, ViewStack containers are sized only once to fit the size of the first child container. They do not resize when you navigate to other child containers. To force ViewStack containers to resize when you navigate to a different child container, set the resizeToContent property to true.</td> </tr> <tr> <td>Child sizing rules</td> <td>Children are sized to their default size. If the child is larger than the ViewStack container, it is clipped. If the child is smaller than the ViewStack container, it is aligned to the upper-left corner of the ViewStack container.</td> </tr> <tr> <td>Default padding</td> <td>0 pixels for top, bottom, left, and right values.</td> </tr> </table>   <p>The <code>&lt;mx:ViewStack&gt;</code> tag inherits the tag attributes of its superclass, with the exception of scrolling-related attributes, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:ViewStack\\n <b>Properties</b>\\n historyManagementEnabled=&quot;false|true&quot;\\n resizeToContent=&quot;false|true&quot;\\n selectedIndex=&quot;0&quot;\\n \\n <b>Styles</b>\\n horizontalGap=&quot;8&quot;\\n paddingBottom=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n verticalGap=&quot;6&quot;\\n \\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:ViewStack&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ViewStackExample.mxml", "examples/ViewStackExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.LinkBar", "mx.controls.ButtonBar", "mx.controls.TabBar", "mx.controls.ToggleButtonBar", "spark.components.ButtonBar", "mx.managers.HistoryManager", "mx.managers.LayoutManager", "mx.controls.LinkBar", "mx.controls.ButtonBar", "mx.controls.TabBar", "mx.controls.ToggleButtonBar", "spark.components.ButtonBar", "mx.managers.HistoryManager", "mx.managers.LayoutManager"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.beads.AdvancedDataGridHeaderLayout",
  "description": "The AdvancedDataGridHeaderLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.AdvancedDataGridListVirtualListView",
  "description": "The CanvasLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.ApplicationLayout",
  "description": "The ApplicationLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.BoxLayout",
  "description": "The BoxLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.CanvasLayout",
  "description": "The CanvasLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.DataGridListListView",
  "description": "The DataGridListListView class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.DividedBoxLayout",
  "description": "The BoxLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.FormItemContainer",
  "description": "The FormItemContainer for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.FormItemView",
  "description": "The FormItemView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.PanelInternalContainer",
  "description": "The PanelInternalContainer is used to apply a custom view to Panel's internal container.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.PanelInternalContainerView",
  "description": "The PanelView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.PanelView",
  "description": "The PanelView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.TabNavigatorView",
  "description": "The TabNavigatorView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.ViewStackLayout",
  "description": "The ViewStackLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.layouts.BasicLayout",
  "description": "The CanvasLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.beads.models.PanelModel",
  "description": "The PanelModel for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.errors.ConstraintError",
  "description": "This error is thrown when a constraint expression is not configured properly; for example, if the GridColumn reference is invalid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.gridClasses.GridColumnInfo",
  "description": "Internal helper class used to exchange information between Grid and GridRow.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.containers.gridClasses.GridRowInfo",
  "description": "Internal helper class used to exchange information between Grid and GridRow.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.containers.utilityClasses.ConstraintColumn",
  "description": "The ConstraintColumn class partitions an absolutely positioned container in the vertical plane.  ConstraintColumn instances have 3 sizing options: fixed, percentage, and content. These options dictate the position of the constraint column, the amount of space the constraint column takes in the container, and how the constraint column deals with changes in the size of the container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.utilityClasses.ConstraintRow",
  "description": "ConstraintRow class partitions an absolutely positioned container in the horizontal plane.  ConstraintRow instances have 3 sizing options: fixed, percentage, and content. These options dictate the position of the constraint row, the amount of space the constraint row takes in the container, and how the constraint row deals with a change in the size of the container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.containers.utilityClasses.Flex",
  "description": "The Flex class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.utilityClasses.FlexChildInfo",
  "description": "Helper class for the Flex.flexChildrenProportionally() method.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.containers.utilityClasses.IConstraintLayout",
  "description": "IConstraintLayout is a marker interface that indicates that a container supports ConstraintColumn class and ConstraintRow class within its layout. Application, Canvas, and Panel containers support ConstraintRow and ConstraintColumn classes. To utilize this type of constraint in these containers, set the <code>layout</code> property to <code>&quot;absolute&quot;</code> and create ConstraintColumn and ConstraintRow instances.",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.Canvas", "mx.containers.Panel", "mx.core.Application", "mx.containers.utilityClasses.ConstraintColumn", "mx.containers.utilityClasses.ConstraintRow", "mx.modules.Module", "mx.containers.Canvas", "mx.containers.Panel", "mx.core.Application", "mx.containers.utilityClasses.ConstraintColumn", "mx.containers.utilityClasses.ConstraintRow", "mx.modules.Module"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.AdvancedDataGrid",
  "description": "The AdvancedDataGrid control expands on the functionality of the standard DataGrid control to add data visualization features to your Apache Flex application. These features provide greater control of data display, data aggregation, and data formatting.  The <code>AdvancedDataGrid</code> control is like a List control except that it can show more than one column of data, making it suited for showing objects with multiple properties. <p> The AdvancedDataGrid control provides the following features: <ul> <li>Columns of different widths or identical fixed widths.</li> <li>Columns that the user can resize at run time. </li> <li>Columns that the user can reorder at run time. </li> <li>Optional customizable column headers.</li> <li>Ability to use a custom item renderer for any column to display data other than text.</li> <li>Support for sorting the data by clicking on a column.</li> </ul> </p> The AdvancedDataGrid control is intended for viewing data, and not as a layout tool like an HTML table. The mx.containers package provides those layout tools.  <p> The <code>&lt;mx:AdvancedDataGrid&gt;</code> tag inherits all of the tag attributes of its superclass, except for <code>labelField</code>, <code>iconField</code>, and <code>iconFunction</code>, and adds the following tag attributes: </p> <pre>\\n &lt;mx:AdvancedDataGrid\\n <b>Properties</b>\\n displayDisclosureIcon=&quot;true|false&quot;\\n displayItemsExpanded=&quot;false|true&quot;\\n groupedColumns=&quot;[]&quot;\\n groupIconFunction=&quot;null&quot;\\n groupItemRenderer=&quot;AdvancedDataGridGroupItemRenderer&quot;\\n groupLabelFunction=&quot;null&quot;\\n groupRowHeight=&quot;-1&quot;\\n itemIcons=&quot;undefined&quot;\\n lockedColumnCount=&quot;0&quot;\\n lockedRowCount=&quot;0&quot;\\n rendererProviders=&quot;[]&quot;\\n selectedCells=&quot;null&quot;\\n treeColumn=&quot;null&quot;\\n \\n <b>Styles</b>\\n alternatingItemColors=&quot;undefined&quot;\\n defaultLeafIcon=&quot;TreeNodeIcon&quot;\\n depthColors=&quot;undefined&quot;\\n disclosureClosedIcon=&quot;TreeDisclosureClosed&quot;\\n disclosureOpenIcon=&quot;TreeDisclosureOpen&quot;\\n folderClosedIcon=&quot;TreeFolderClosed&quot;\\n folderOpenIcon=&quot;TreeFolderOpen&quot;\\n headerHorizontalSeparatorSkin=&quot;undefined&quot;\\n indentation=&quot;17&quot;\\n openDuration=&quot;250&quot;\\n openEasingFunction=&quot;undefined&quot;\\n paddingLeft=&quot;2&quot;\\n paddingRight=&quot;0&quot;\\n selectionDisabledColor=&quot;#DDDDDD&quot;\\n selectionEasingFunction=&quot;undefined&quot;\\n sortFontFamily=&quot;Verdana&quot;\\n sortFontSize=&quot;10&quot;\\n sortFontStyle=&quot;normal&quot;\\n sortFontWeight=&quot;normal&quot;\\n textRollOverColor=&quot;#2B333C&quot;\\n textSelectedColor=&quot;#2B333C&quot;\\n \\n <b>Events</b>\\n headerDragOutside=&quot;<i>No default</i>&quot;\\n headerDropOutside=&quot;<i>No default</i>&quot;\\n itemClose=&quot;<i>No default</i>&quot;\\n itemOpen=&quot;<i>No default</i>&quot;\\n itemOpening=&quot;<i>No default</i>&quot;\\n /&gt;\\n \\n <b><i>The following AdvancedDataGrid code sample specifies the column order:</i></b>\\n &lt;mx:AdvancedDataGrid&gt;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:Object Artist=&quot;Pavement&quot; Price=&quot;11.99&quot;\\n Album=&quot;Slanted and Enchanted&quot;/&gt;\\n &lt;mx:Object Artist=&quot;Pavement&quot;\\n Album=&quot;Brighten the Corners&quot; Price=&quot;11.99&quot;/&gt;\\n &lt;/mx:dataProvider&gt;\\n &lt;mx:columns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Album&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Price&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/AdvancedDataGridExample.mxml", "examples/AdvancedDataGridExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.advancedDataGridClasses.AdvancedDataGridItemRenderer", "mx.controls.advancedDataGridClasses.AdvancedDataGridColumn", "mx.controls.advancedDataGridClasses.AdvancedDataGridDragProxy", "mx.events.AdvancedDataGridEvent", "mx.controls.DataGrid", "mx.controls.advancedDataGridClasses.AdvancedDataGridItemRenderer", "mx.controls.advancedDataGridClasses.AdvancedDataGridColumn", "mx.controls.advancedDataGridClasses.AdvancedDataGridDragProxy", "mx.events.AdvancedDataGridEvent", "mx.controls.DataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Alert",
  "description": "The Alert control is a pop-up dialog box that can contain a message, a title, buttons (any combination of OK, Cancel, Yes, and No) and an icon. The Alert control is modal, which means it will retain focus until the user closes it.  <p>Import the mx.controls.Alert class into your application, and then call the static <code>show()</code> method in ActionScript to display an Alert control. You cannot create an Alert control in MXML.</p>  <p>The Alert control closes when you select a button in the control, or press the Escape key.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleAlert.mxml", "examples/SimpleAlert.mxml"]},
    {  "tagName": "see",
       "values": ["mx.managers.SystemManager", "mx.managers.PopUpManager", "mx.managers.SystemManager", "mx.managers.PopUpManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Button",
  "description": "The Button control is a commonly used rectangular button. Button controls look like they can be pressed. They can have a text label, an icon, or both on their face.  <p>Buttons typically use event listeners to perform an action when the user selects the control. When a user clicks the mouse on a Button control, and the Button control is enabled, it dispatches a <code>click</code> event and a <code>buttonDown</code> event. A button always dispatches events such as the <code>mouseMove</code>, <code>mouseOver</code>, <code>mouseOut</code>, <code>rollOver</code>, <code>rollOut</code>, <code>mouseDown</code>, and <code>mouseUp</code> events whether enabled or disabled.</p>  <p>You can customize the look of a Button control and change its functionality from a push button to a toggle button. You can change the button appearance by using a skin for each of the button's states.</p>  <p>The label of a Button control uses a bold typeface. If you embed a font that you want to use for the label of the Button control, you must embed the bold typeface; for example:</p>  <pre>\\n &lt;fx:style&gt;\\n &#64;font-face {\\n src:url(&quot;../MyFont-Bold.ttf&quot;);\\n fontFamily: myFont;\\n fontWeight: bold;\\n }\\n .myBoldStyle {\\n fontFamily: myFont;\\n fontWeight: bold;\\n }\\n &lt;/fx:style&gt;\\n ...\\n &lt;mx:Button ... styleName=&quot;myBoldStyle&quot;/&gt;\\n </pre>  <p>The Button control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>A size large enough to hold the label text, and any icon</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>No limit</td></tr> </table>   <p>The <code>&lt;mx:Button&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Button\\n <b>Properties</b>\\n autoRepeat=&quot;false|true&quot;\\n emphasized=&quot;false|true&quot;\\n fontContext=&quot;<i>IFontModuleFactory</i>&quot;\\n label=&quot;&quot;\\n labelPlacement=&quot;right|left|bottom|top&quot;\\n selected=&quot;false|true&quot;\\n selectedField=&quot;null&quot;\\n stickyHighlighting=&quot;false|true&quot;\\n toggle=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n borderColor=&quot;0xAAB3B3&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;4&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n disabledIcon=&quot;null&quot;\\n disabledSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n downIcon=&quot;null&quot;\\n downSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n fillAlphas=&quot;[0.6, 0.4]&quot;\\n fillColors=&quot;[0xE6EEEE, 0xFFFFFF]&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;bold|normal&quot;\\n highlightAlphas=&quot;[0.3, 0.0]&quot;\\n horizontalGap=&quot;2&quot;\\n icon=&quot;null&quot;\\n kerning=&quot;false|true&quot;\\n leading=&quot;2&quot;\\n letterSpacing=&quot;0&quot;\\n overIcon=&quot;null&quot;\\n overSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n paddingBottom=&quot;2&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;2&quot;\\n repeatDelay=&quot;500&quot;\\n repeatInterval=&quot;35&quot;\\n selectedDisabledIcon=&quot;null&quot;\\n selectedDisabledSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n selectedDownIcon=&quot;null&quot;\\n selectedDownSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n selectedOverIcon=&quot;null&quot;\\n selectedOverSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n selectedUpIcon=&quot;null&quot;\\n selectedUpSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n skin=&quot;mx.skins.halo.ButtonSkin&quot;\\n textAlign=&quot;center|left|right&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x000000&quot;\\n upIcon=&quot;null&quot;\\n upSkin=&quot;mx.skins.halo.ButtonSkin&quot;\\n verticalGap=&quot;2&quot;\\n \\n <b>Events</b>\\n buttonDown=&quot;<i>No default</i>&quot;\\n change=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ButtonExample.mxml", "examples/ButtonExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.CheckBox",
  "description": "The CheckBox control consists of an optional label and a small box that can contain a check mark or not. You can place the optional text label to the left, right, top, or bottom of the CheckBox. When a user clicks a CheckBox control or its associated text, the CheckBox control changes its state from checked to unchecked or from unchecked to checked. CheckBox controls gather a set of true or false values that are not mutually exclusive.  <p>The CheckBox control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>A size large enough to hold the label</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>No limit</td> </tr> </table>   <p>The <code>&lt;mx:CheckBox&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;mx:CheckBox\\n <strong>Styles</strong>\\n disabledIconColor=&quot;0x999999&quot;\\n iconColor=&quot;0x2B333C&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/CheckBoxExample.mxml", "examples/CheckBoxExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ColorPicker",
  "description": "The ColorPicker control provides a way for a user to choose a color from a swatch list. The default mode of the component shows a single swatch in a square button. When the user clicks the swatch button, the swatch panel appears and displays the entire swatch list.  <p>The ColorPicker control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>ColorPicker: 22 by 22 pixels <br>Swatch panel: Sized to fit the ColorPicker control width</br></td> </tr> <tr> <td>Minimum size</td> <td>0 pixels by 0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>Undefined</td> </tr> </table>   <p>The <code>&lt;mx:ColorPicker&gt;</code> tag inherits all of the properties of its superclass, and the following properties:</p>  <pre>\\n &lt;mx:ColorPicker\\n <b>Properties</b>\\n colorField=&quot;color&quot;\\n labelField=&quot;label&quot;\\n selectedColor=&quot;0x000000&quot;\\n selectedIndex=&quot;0&quot;\\n showTextField=&quot;true|false&quot;\\n \\n <b>Styles</b>\\n borderColor=&quot;0xA5A9AE&quot;\\n closeDuration=&quot;250&quot;\\n closeEasingFunction=&quot;undefined&quot;\\n color=&quot;0x0B333C&quot;\\n disabledIconColor=&quot;0x999999&quot;\\n fillAlphas=&quot;[0.6,0.4]&quot;\\n fillColors=&quot;[0xFFFFFF, 0xCCCCCC]&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontfamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal&quot;\\n highlightAlphas=&quot;[0.3,0.0]&quot;\\n iconColor=&quot;0x000000&quot;\\n leading=&quot;2&quot;\\n openDuration=&quot;250&quot;\\n openEasingFunction=&quot;undefined&quot;\\n paddingBottom=&quot;5&quot;\\n paddingLeft=&quot;5&quot;\\n paddingRight=&quot;5&quot;\\n paddingTop=&quot;4&quot;\\n swatchBorderColor=&quot;0x000000&quot;\\n swatchBorderSize=&quot;1&quot;\\n swatchPanelStyleName=&quot;undefined&quot;\\n textAlign=&quot;left&quot;\\n textDecoration=&quot;none&quot;\\n textIndent=&quot;0&quot;\\n \\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n close=&quot;<i>No default</i>&quot;\\n enter=&quot;<i>No default</i>&quot;\\n itemRollOut=&quot;<i>No default</i>&quot;\\n itemRollOver=&quot;<i>No default</i>&quot;\\n open=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ColorPickerExample.mxml", "examples/ColorPickerExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.List", "mx.effects.Tween", "mx.managers.PopUpManager", "mx.controls.List", "mx.effects.Tween", "mx.managers.PopUpManager"]},
    {  "tagName": "helpid",
       "values": ["4917", "4917"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ComboBase",
  "description": "The ComboBase class is the base class for controls that display text in a text field and have a button that causes a drop-down list to appear where the user can choose which text to display. The ComboBase class is not used directly as an MXML tag.   <p>The <code>&lt;mx:ComboBase&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;<i>mx:tagname</i>\\n <b>Properties</b>\\n dataProvider=&quot;null&quot;\\n editable=&quot;false|true&quot;\\n imeMode=&quot;null&quot;\\n restrict=&quot;null&quot;\\n selectedIndex=&quot;-1&quot;\\n selectedItem=&quot;null&quot;\\n text=&quot;&quot;\\n &nbsp;\\n <b>Styles</b>\\n disabledSkin=&quot;<i>Depends on class</i>&quot;\\n downSkin=&quot;<i>Depends on class</i>&quot;\\n editableDisabledSkin=&quot;<i>Depends on class</i>&quot;\\n editableDownSkin=&quot;<i>Depends on class</i>&quot;\\n editableOverSkin=&quot;<i>Depends on class</i>&quot;\\n editableUpSkin=&quot;<i>Depends on class</i>&quot;\\n overSkin=&quot;<i>Depends on class</i>&quot;\\n textInputStyleName=&quot;&quot;\\n upSkin=&quot;<i>Depends on class</i>&quot;\\n \\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.Button", "mx.controls.TextInput", "mx.collections.ICollectionView", "mx.controls.Button", "mx.controls.TextInput", "mx.collections.ICollectionView"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ComboBox",
  "description": "The ComboBox control contains a drop-down list from which the user can select a single value. Its functionality is very similar to that of the SELECT form element in HTML. The ComboBox can be editable, in which case the user can type entries into the TextInput portion of the ComboBox that are not in the list.  <p>The ComboBox control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to accommodate the longest entry in the drop-down list in the display area of the main control, plus the drop-down button. When the drop-down list is not visible, the default height is based on the label text size.  <p>The default drop-down list height is five rows, or the number of entries in the drop-down list, whichever is smaller. The default height of each entry in the drop-down list is 22 pixels.</p></td> </tr> <tr> <td>Minimum size</td> <td>0 pixels.</td> </tr> <tr> <td>Maximum size</td> <td>5000 by 5000.</td> </tr> <tr> <td>dropdownWidth</td> <td>The width of the ComboBox control.</td> </tr> <tr> <td>rowCount</td> <td>5 rows.</td> </tr> </table>   <p>The <code>&lt;mx:ComboBox&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:ComboBox\\n <b>Properties</b>\\n dataProvider=&quot;null&quot;\\n dropdownFactory=&quot;<i>ClassFactory that creates an mx.controls.List</i>&quot;\\n dropdownWidth=&quot;<i>100 or width of the longest text in the dataProvider</i>&quot;\\n itemRenderer=&quot;null&quot;\\n labelField=&quot;label&quot;\\n labelFunction=&quot;null&quot;\\n prompt=&quot;null&quot;\\n rowCount=&quot;5&quot;\\n selectedIndex=&quot;-1&quot;\\n selectedItem=&quot;null&quot;\\n \\n <b>Styles</b>\\n alternatingItemColors=&quot;undefined&quot;\\n arrowButtonWidth=&quot;22&quot;\\n borderColor=&quot;0xB7BABC&quot;\\n borderThickness=&quot;1&quot;\\n closeDuration=&quot;250&quot;\\n closeEasingFunction=&quot;undefined&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;0&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n disabledIconColor=&quot;0x919999&quot;\\n dropdownBorderColor=&quot;undefined&quot;\\n dropdownStyleName=&quot;comboDropdown&quot;\\n fillAlphas=&quot;[0.6,0.4]&quot;\\n fillColors=&quot;[0xFFFFFF, 0xCCCCCC]&quot;\\n focusAlpha=&quot;0.4&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced|normal&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel|none|subpixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n highlightAlphas=&quot;[0.3,0.0]&quot;\\n iconColor=&quot;0x111111&quot;\\n leading=&quot;0&quot;\\n openDuration=&quot;250&quot;\\n openEasingFunction=&quot;undefined&quot;\\n paddingTop=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;5&quot;\\n paddingRight=&quot;5&quot;\\n rollOverColor=&quot;<i>Depends on theme color&quot;</i>\\n selectionColor=&quot;<i>Depends on theme color&quot;</i>\\n selectionDuration=&quot;250&quot;\\n selectionEasingFunction=&quot;undefined&quot;\\n textAlign=&quot;left|center|right&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x2B333C&quot;\\n \\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n close=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n enter=&quot;<i>No default</i>&quot;\\n itemRollOut=&quot;<i>No default</i>&quot;\\n itemRollOver=&quot;<i>No default</i>&quot;\\n open=&quot;<i>No default</i>&quot;\\n scroll=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleComboBox.mxml", "examples/SimpleComboBox.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.List", "mx.effects.Tween", "mx.managers.PopUpManager", "mx.controls.List", "mx.effects.Tween", "mx.managers.PopUpManager"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.DataGrid",
  "description": "The <code>DataGrid</code> control is like a List except that it can show more than one column of data making it suited for showing objects with multiple properties. <p> The DataGrid control provides the following features: <ul> <li>Columns of different widths or identical fixed widths</li> <li>Columns that the user can resize at runtime </li> <li>Columns that the user can reorder at runtime </li> <li>Optional customizable column headers</li> <li>Ability to use a custom item renderer for any column to display data other than text</li> <li>Support for sorting the data by clicking on a column</li> </ul> </p> The DataGrid control is intended for viewing data, and not as a layout tool like an HTML table. The mx.containers package provides those layout tools.  <p>The DataGrid control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>If the columns are empty, the default width is 300 pixels. If the columns contain information but define no explicit widths, the default width is 100 pixels per column. The DataGrid width is sized to fit the width of all columns, if possible. The default number of displayed rows, including the header is 7, and each row, by default, is 20 pixels high. </td> </tr> <tr> <td>Minimum size</td> <td>0 pixels.</td> </tr> <tr> <td>Maximum size</td> <td>5000 by 5000.</td> </tr> </table>  <p> The <code>&lt;mx:DataGrid&gt;</code> tag inherits all of the tag attributes of its superclass, except for <code>labelField</code>, <code>iconField</code>, and <code>iconFunction</code>, and adds the following tag attributes: </p> <pre>\\n &lt;mx:DataGrid\\n <b>Properties</b>\\n columns=&quot;<i>From dataProvider</i>&quot;\\n draggableColumns=&quot;true|false&quot;\\n editable=&quot;false|true&quot;\\n editedItemPosition=&quot;<code>null</code>&quot;\\n horizontalScrollPosition=&quot;null&quot;\\n imeMode=&quot;null&quot;\\n itemEditorInstance=&quot;null&quot;\\n minColumnWidth=&quot;<code>NaN</code>&quot;\\n resizableColumns=&quot;true|false&quot;\\n sortableColumns=&quot;true|false&quot;\\n \\n <b>Styles</b>\\n backgroundDisabledColor=&quot;0xEFEEEF&quot;\\n columnDropIndicatorSkin=&quot;DataGridColumnDropIndicator&quot;\\n columnResizeSkin=&quot;DataGridColumnResizeSkin&quot;\\n disabledIconColor=&quot;0x999999&quot;\\n headerColors=&quot;[#FFFFFF, #E6E6E6]&quot;\\n headerDragProxyStyleName=&quot;headerDragProxyStyle&quot;\\n headerSeparatorSkin=&quot;DataGridHeaderSeparator&quot;\\n headerStyleName=&quot;dataGridStyles&quot;\\n horizontalGridLineColor=&quot;0xF7F7F7&quot;\\n horizontalGridLines=&quot;false|true&quot;\\n horizontalLockedSeparatorSkin=&quot;undefined&quot;\\n horizontalSeparatorSkin=&quot;undefined&quot;\\n iconColor=&quot;0x111111&quot;\\n rollOverColor=&quot;0xB2E1FF&quot;\\n selectionColor=&quot;0x7FCEFF&quot;\\n sortArrowSkin=&quot;DataGridSortArrow&quot;\\n stretchCursor=&quot;<i>&quot;cursorStretch&quot; symbol from the Assets.swf file</i>&quot;\\n verticalGridLineColor=&quot;0xCCCCCC&quot;\\n verticalGridLines=&quot;false|true&quot;\\n verticalLockedSeparatorSkin=&quot;undefined&quot;\\n verticalSeparatorSkin=&quot;undefined&quot;\\n \\n <b>Events</b>\\n columnStretch=&quot;<i>No default</i>&quot;\\n headerRelease=&quot;<i>No default</i>&quot;\\n headerShift=&quot;<i>No default</i>&quot;\\n itemEditBegin=&quot;<i>No default</i>&quot;\\n itemEditBeginning=&quot;<i>No default</i>&quot;\\n itemEditEnd=&quot;<i>No default</i>&quot;\\n itemFocusIn=&quot;<i>No default</i>&quot;\\n itemFocusOut=&quot;<i>No default</i>&quot;\\n /&gt;\\n \\n <b>The following DataGrid code sample specifies the column order:</b>\\n &lt;mx:DataGrid&gt;\\n &lt;mx:dataProvider&gt;\\n &lt;mx:Object Artist=&quot;Pavement&quot; Price=&quot;11.99&quot;\\n Album=&quot;Slanted and Enchanted&quot;/&gt;\\n &lt;mx:Object Artist=&quot;Pavement&quot;\\n Album=&quot;Brighten the Corners&quot; Price=&quot;11.99&quot;/&gt;\\n &lt;/mx:dataProvider&gt;\\n &lt;mx:columns&gt;\\n &lt;mx:DataGridColumn dataField=&quot;Album&quot;/&gt;\\n &lt;mx:DataGridColumn dataField=&quot;Price&quot;/&gt;\\n &lt;/mx:columns&gt;\\n &lt;/mx:DataGrid&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleDataGrid.mxml", "examples/SimpleDataGrid.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.dataGridClasses.DataGridItemRenderer", "mx.controls.dataGridClasses.DataGridColumn", "mx.controls.dataGridClasses.DataGridDragProxy", "mx.events.DataGridEvent", "mx.controls.dataGridClasses.DataGridItemRenderer", "mx.controls.dataGridClasses.DataGridColumn", "mx.controls.dataGridClasses.DataGridDragProxy", "mx.events.DataGridEvent"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.DateChooser",
  "description": "The DateChooser control displays the name of a month, the year, and a grid of the days of the month, with columns labeled for the day of the week. The user can select a date, a range of dates, or multiple dates. The control contains forward and back arrow buttons for changing the month and year. You can let users select multiple dates, disable the selection of certain dates, and limit the display to a range of dates.  <p>The DateChooser control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>A size large enough to hold the calendar, and wide enough to display the day names</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>No limit</td> </tr> </table>   <p>The <code>&lt;mx:DateChooser&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:DateChooser\\n <strong>Properties</strong>\\n allowDisjointSelection=&quot;true|false&quot;\\n allowMultipleSelection=&quot;false|true&quot;\\n dayNames=&quot;[&quot;S&quot;, &quot;M&quot;, &quot;T&quot;, &quot;W&quot;, &quot;T&quot;, &quot;F&quot;, &quot;S&quot;]&quot;\\n disabledDays=&quot;<i>No default</i>&quot;\\n disabledRanges=&quot;<i>No default</i>&quot;\\n displayedMonth=&quot;<i>Current month</i>&quot;\\n displayedYear=&quot;<i>Current year</i>&quot;\\n firstDayOfWeek=&quot;0&quot;\\n maxYear=&quot;2100&quot;\\n minYear=&quot;1900&quot;\\n monthNames=&quot;[&quot;January&quot;, &quot;February&quot;, &quot;March&quot;, &quot;April&quot;, &quot;May&quot;,\\n &quot;June&quot;, &quot;July&quot;, &quot;August&quot;, &quot;September&quot;, &quot;October&quot;, &quot;November&quot;,\\n &quot;December&quot;]&quot;\\n monthSymbol=&quot;&quot;\\n selectableRange=&quot;<i>No default</i>&quot;\\n selectedDate=&quot;<i>No default</i>&quot;\\n selectedRanges=&quot;<i>No default</i>&quot;\\n showToday=&quot;true|false&quot;\\n yearNavigationEnabled=&quot;false|true&quot;\\n yearSymbol=&quot;&quot;\\n \\n <strong>Styles</strong>\\n backgroundColor=&quot;0xFFFFFF&quot;\\n backgroundAlpha=&quot;1.0&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n borderThickness=&quot;1&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;4&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n disabledIconColor=&quot;0x999999&quot;\\n fillAlphas=&quot;[0.6, 0.4]&quot;\\n fillColors=&quot;[0xFFFFFF, 0xCCCCCC]&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n headerColors=&quot;[0xE1E5EB, 0xF4F5F7]&quot;\\n headerStyleName=&quot;headerDateText&quot;\\n highlightAlphas=&quot;[0.3, 0.0]&quot;\\n horizontalGap=&quot;8&quot;\\n iconColor=&quot;0x111111&quot;\\n leading=&quot;2&quot;\\n nextMonthDisabledSkin=&quot;DateChooserMonthArrowSkin&quot;\\n nextMonthDownSkin=&quot;DateChooserMonthArrowSkin&quot;\\n nextMonthOverSkin=&quot;DateChooserMonthArrowSkin&quot;\\n nextMonthSkin = &quot;DateChooserMonthArrowSkin&quot;\\n nextMonthUpSkin=&quot;DateChooserMonthArrowSkin&quot;\\n nextYearDisabledSkin=&quot;DateChooserYearArrowSkin&quot;\\n nextYearDownSkin=&quot;DateChooserYearArrowSkin&quot;\\n nextYearOverSkin=&quot;DateChooserYearArrowSkin&quot;\\n nextYearSkin = &quot;DateChooserYearArrowSkin&quot;\\n nextYearUpSkin=&quot;DateChooserYearArrowSkin&quot;\\n prevMonthDisabledSkin=&quot;DateChooserMonthArrowSkin&quot;\\n prevMonthDownSkin=&quot;DateChooserMonthArrowSkin&quot;\\n prevMonthOverSkin=&quot;DateChooserMonthArrowSkin&quot;\\n prevMonthSkin = &quot;DateChooserMonthArrowSkin&quot;\\n prevMonthUpSkin=&quot;DateChooserMonthArrowSkin&quot;\\n prevYearDisabledSkin=&quot;DateChooserYearArrowSkin&quot;\\n prevYearDownSkin=&quot;DateChooserYearArrowSkin&quot;\\n prevYearOverSkin=&quot;DateChooserYearArrowSkin&quot;\\n prevYearSkin = &quot;DateChooserYearArrowSkin&quot;\\n prevYearUpSkin=&quot;DateChooserYearArrowSkin&quot;\\n rollOverColor=&quot;0xEEFEE6&quot;\\n rollOverIndicatorSkin=&quot;DateChooserIndicator&quot;\\n selectionColor=&quot;0xB7F39B&quot;\\n selectionIndicatorSkin=&quot;DateChooserIndicator&quot;\\n textAlign=&quot;left|right|center&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n todayColor=&quot;0x818181&quot;\\n todayIndicatorSkin=&quot;DateChooserIndicator&quot;\\n todayStyleName=&quot;todayStyle&quot;\\n verticalGap=&quot;6&quot;\\n weekDayStyleName=&quot;weekDayStyle&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>No default</i>&quot;\\n scroll=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DateChooserExample.mxml", "examples/DateChooserExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.DateField", "mx.controls.DateField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.DateField",
  "description": "The DateField control is a text field that shows the date with a calendar icon on its right side. When the user clicks anywhere inside the bounding box of the control, a DateChooser control pops up and shows the dates in the month of the current date. If no date is selected, the text field is blank and the month of the current date is displayed in the DateChooser control.  <p>When the DateChooser control is open, the user can scroll through months and years, and select a date. When a date is selected, the DateChooser control closes, and the text field shows the selected date.</p>  <p>The user can also type the date in the text field if the <code>editable</code> property of the DateField control is set to <code>true</code>.</p>  <p>The DateField has the same default characteristics (shown below) as the DateChooser for its expanded date chooser.</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>A size large enough to hold the calendar, and wide enough to display the day names</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>No limit</td> </tr> </table>  <p>The DateField has the following default characteristics for the collapsed control:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>A size large enough to hold the formatted date and the calendar icon</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>No limit</td> </tr> </table>   <p>The <code>&lt;mx:DateField&gt</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:DateField\\n <strong>Properties</strong>\\n dayNames=&quot;[&quot;S&quot;, &quot;M&quot;, &quot;T&quot;, &quot;W&quot;, &quot;T&quot;, &quot;F&quot;, &quot;S&quot;]&quot;\\n disabledDays=&quot;<i>No default</i>&quot;\\n disabledRanges=&quot;<i>No default</i>&quot;\\n displayedMonth=&quot;<i>Current month</i>&quot;\\n displayedYear=&quot;<i>Current year</i>&quot;\\n dropdownFactory=&quot;<i>ClassFactory that creates an mx.controls.DateChooser</i>&quot;\\n firstDayOfWeek=&quot;0&quot;\\n formatString=&quot;MM/DD/YYYY&quot;\\n labelFunction=&quot;<i>Internal formatter</i>&quot;\\n maxYear=&quot;2100&quot;\\n minYear=&quot;1900&quot;\\n monthNames=&quot;[&quot;January&quot;, &quot;February&quot;, &quot;March&quot;, &quot;April&quot;, &quot;May&quot;,\\n &quot;June&quot;, &quot;July&quot;, &quot;August&quot;, &quot;September&quot;, &quot;October&quot;, &quot;November&quot;,\\n &quot;December&quot;]&quot;\\n monthSymbol=&quot;&quot;\\n parseFunction=&quot;<i>Internal parser</i>&quot;\\n selectableRange=&quot;<i>No default</i>&quot;\\n selectedDate=&quot;<i>No default</i>&quot;\\n showToday=&quot;true|false&quot;\\n yearNavigationEnabled=&quot;false|true&quot;\\n yearSymbol=&quot;&quot;\\n \\n <strong>Styles</strong>\\n borderColor=&quot;0xAAB3B3&quot;\\n borderThickness=&quot;1&quot;\\n color=&quot;0x0xB333C&quot;\\n dateChooserStyleName=&quot;dateFieldPopup&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n disabledIconColor=&quot;0x999999&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n iconColor=&quot;0x111111&quot;\\n leading=&quot;2&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n rollOverColor=&quot;0xE3FFD6&quot;\\n selectionColor=&quot;0xB7F39B&quot;\\n textAlign=&quot;left|right|center&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n todayColor=&quot;0x2B333C&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>No default</i>&quot;\\n close=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n open=&quot;<i>No default</i>&quot;\\n scroll=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DateFieldExample.mxml", "examples/DateFieldExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.DateChooser", "mx.controls.DateChooser"]},
    {  "tagName": "helpid",
       "values": ["3617", "3617"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.DownloadButton",
  "description": "The DownloadButton control is a Button control that initiates the downloading of some data when the user clicks the button.  The user can also right click to choose the location of the download. It only works on JS.  The data must be set before the user clicks or right-clicks.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.FormItemLabel",
  "description": "The FormItem container uses a FormItemLabel object to display the label portion of the FormItem container.  <p>The FormItemLabel class does not add any functionality to its superclass, Label. Instead, its purpose is to let you set styles in a FormItemLabel type selector and set styles that affect the labels in all FormItem containers.</p>  <p><strong>Note:</strong> This class has been deprecated. The recommended way to style a FormItem label is to use the <code>labelStyleName</code> style property of the FormItem class.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.FormItem", "mx.containers.FormItem"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.HRule",
  "description": "The HRule control creates a single horizontal line. You typically use this control to create a dividing line within a container.  <p>The HRule control has the following default properties:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The default width is 100 pixels, default height is 2 pixels. By default, the HRule control is not resizable; set width and height to percentage values to enable resizing.</td> </tr> <tr> <td>strokeWidth</td> <td>2 pixels.</td> </tr> <tr> <td>strokeColor</td> <td>0xC4CCCC.</td> </tr> <tr> <td>shadowColor</td> <td>0xEEEEEE.</td> </tr> </table>   <p>The <code>&lt;mx:HRule&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:HRule\\n <strong>Styles</strong>\\n strokeColor=&quot;0xC4CCCC&quot;\\n shadowColor=&quot;0xEEEEEE&quot;\\n strokeWidth=&quot;2&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleHRule.mxml", "examples/SimpleHRule.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.VRule", "mx.controls.VRule"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Image",
  "description": "The Image control lets you import JPEG, PNG, GIF, and SWF files at runtime. You can also embed any of these files and SVG files at compile time by using <code>&#64;Embed(source='filename')</code>.  <p><strong>Note: </strong>Flex also includes the SWFLoader control for loading Flex applications. You typically use the Image control for loading static graphic files and SWF files, and use the SWFLoader control for loading Flex applications. The Image control is also designed to be used in custom item renderers and item editors. </p>  <p><strong>Note: </strong>Flex also includes the BitmapImage class. This class is used for embedding images into skins and FXG components. </p>  <p>Embedded images load immediately, because they are already part of the Flex SWF file. However, they add to the size of your application and slow down the application initialization process. Embedded images also require you to recompile your applications whenever your image files change.</p>  <p>The alternative to embedding a resource is to load the resource at runtime. You can load a resource from the local file system in which the SWF file runs, or you can access a remote resource, typically though an HTTP request over a network. These images are independent of your Flex application, so you can change them without causing a recompile operation as long as the names of the modified images remain the same. The referenced images add no additional overhead to an application's initial loading time. However, you might experience a delay when you use the images and load them into Flash Player or AIR. </p>  <p>A SWF file can access one type of external resource only, either local or over a network; it cannot access both types. You determine the type of access allowed by the SWF file using the <code>use-network</code> flag when you compile your application. When the <code>use-network</code> flag is set to <code>false</code>, you can access resources in the local file system, but not over the network. The default value is <code>true</code>, which allows you to access resources over the network, but not in the local file system. </p>  <p>When you load images at runtime, you should be aware of the security restrictions of Flash Player or AIR. For example, in Flash Player you can load an image from any domain by using a URL, but the default security settings won't allow your code to access the bitmap data of the image unless it came from the same domain as the application. To access bitmap data from images on other servers, you must use a crossdomain.xml file. </p>  <p>The PNG and GIF formats also support the use of an alpha channel for creating transparent images.</p>  <p>When you use the Image control as a drop-in item renderer in a List control, either set an explicit row height of the List control, by using the <code>rowHeight</code> property, or set the <code>variableRowHeight</code> property of the List control to <code>true</code> to size the row correctly.</p>  <p>If you find memory problems related to Images objects, try explicitly setting the <code>source</code> property to null when you are done using the Image object in your application.</p>   <p>The <code>&lt;mx:Image&gt;</code> tag inherits the tag attributes of its superclass, and adds the following tag attribute:</p>  <pre>\\n &lt;mx:Image\\n <strong>Events</strong>\\n dataChange=&quot;No default&quot;\\n /&gt\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleImage.mxml", "examples/SimpleImage.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.SWFLoader", "mx.controls.SWFLoader"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Label",
  "description": "The Label control displays a single line of noneditable text. Use the Text control to create blocks of multiline noneditable text.  <p>You can format Label text by using HTML tags, which are applied after the Label control's CSS styles are applied. You can also put padding around the four sides of the text. The text of a Label is nonselectable by default, but you can make it selectable.</p>  <p>If a Label is sized to be smaller than its text, you can control whether the text is simply clipped or whether it is truncated with a localizable string such as &quot;...&quot;. (Note: Plain text can be truncated, but HTML text cannot.) If the entire text of the Label, either plain or HTML, is not completely visible, and you haven't assigned a tooltip to the Label, an automatic &quot;truncation tip&quot; displays the complete plain text when a user holds the mouse over the Label control.</p>  <p>Label controls do not have backgrounds or borders and cannot take focus.</p>  <p>The Label control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Width and height large enough for the text</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>10000 by 10000 pixels</td> </tr> </table>   <p>The <code>&lt;mx:Label&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Label\\n <b>Properties</b>\\n condenseWhite=&quot;true|false&quot;\\n data=&quot;null&quot;\\n htmlText=&quot;&quot;\\n listData=&quot;null&quot;\\n selectable=&quot;true|false&quot;\\n text=&quot;&quot;\\n truncateToFit=&quot;true|false&quot;\\n &nbsp;\\n <b>Styles</b>\\n color=&quot;0x0B333C&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n fontAntiAliasType=&quot;advanced|normal&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel|none|subpixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n styleSheet=&quot;null&quot;\\n textAlign=&quot;left|right|center&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n &nbsp;\\n <b>Events</b>\\n dataChange=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LabelExample.mxml", "examples/LabelExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.Text", "mx.controls.TextInput", "mx.controls.TextArea", "mx.controls.RichTextEditor", "mx.controls.Text", "mx.controls.TextInput", "mx.controls.TextArea", "mx.controls.RichTextEditor"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.LinkBar",
  "description": "A LinkBar control defines a horizontal or vertical row of LinkButton controls that designate a series of link destinations. You typically use a LinkBar control to control the active child container of a ViewStack container, or to create a stand-alone set of links.  <p>The LinkBar control creates LinkButton controls based on the value of its <code>dataProvider</code> property. Even though LinkBar is a subclass of Container, do not use methods such as <code>Container.addChild()</code> and <code>Container.removeChild()</code> to add or remove LinkButton controls. Instead, use methods such as <code>addItem()</code> and <code>removeItem()</code> to manipulate the <code>dataProvider</code> property. The LinkBar control automatically adds or removes the necessary children based on changes to the <code>dataProvider</code> property.</p>  <p>A LinkBar control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Preferred size</td> <td>A width wide enough to contain all label text, plus any padding and separators, and the height of the tallest child.</td> </tr> <tr> <td>Control resizing rules</td> <td>LinkBar controls do not resize by default. Specify percentage sizes if you want your LinkBar to resize based on the size of its parent container.</td> </tr> <tr> <td>Padding</td> <td>2 pixels for the top, bottom, left, and right properties.</td> </tr> </table>  <p>The <code>&lt;mx:LinkBar&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:LinkBar\\n <b>Properties</b>\\n selectedIndex=&quot;-1&quot;\\n \\n <b>Styles</b>\\n linkButtonStyleName=&quot;&quot;\\n horizontalGap=&quot;8&quot;\\n paddingBottom=&quot;2&quot;\\n paddingTop=&quot;2&quot;\\n rollOverColor=&quot;0xEEFEE6&quot;\\n selectionColor=&quot;0xCDFFC1&quot;\\n separatorColor=&quot;<i>No default</i>&quot;\\n separatorSkin=&quot;0x000000&quot;\\n separatorWidth=&quot;1&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x000000&quot;\\n verticalGap=&quot;8&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:LinkBar&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LinkBarExample.mxml", "examples/LinkBarExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.NavBar", "mx.containers.ViewStack", "mx.controls.LinkButton", "mx.controls.ToggleButtonBar", "mx.controls.ButtonBar", "mx.controls.NavBar", "mx.containers.ViewStack", "mx.controls.LinkButton", "mx.controls.ToggleButtonBar", "mx.controls.ButtonBar"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.LinkButton",
  "description": "The LinkButton control is a borderless Button control whose contents are highlighted when a user moves the mouse over it. These traits are often exhibited by HTML links contained within a browser page. In order for the LinkButton control to perform some action, you must specify a <code>click</code> event handler, as you do with a Button control.  <p>The LinkButton control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Width and height large enough for the text</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>Undefined</td> </tr> </table>   <p>The <code>&lt;mx:LinkButton&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:LinkButton\\n <b>Styles</b>\\n cornerRadius=&quot;4&quot;&quot;\\n rollOverColor=&quot;0xEEFEE6&quot;\\n selectionColor=&quot;0xB7F39B&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x2B333C&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LinkButtonExample.mxml", "examples/LinkButtonExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.LinkBar", "mx.controls.LinkBar"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.List",
  "description": "The List control displays a vertical list of items. Its functionality is very similar to that of the SELECT form element in HTML. If there are more items than can be displayed at once, it can display a vertical scroll bar so the user can access all items in the list. An optional horizontal scroll bar lets the user view items when the full width of the list items is unlikely to fit. The user can select one or more items from the list, depending on the value of the <code>allowMultipleSelection</code> property.  <p>The List control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to fit the widest label in the first seven visible items (or all visible items in the list, if there are less than seven); seven rows high, where each row is 20 pixels high.</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels.</td> </tr> <tr> <td>Maximum size</td> <td>5000 by 5000.</td> </tr> </table>   <p>The <code>&lt;mx:List&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:List\\n <b>Properties</b>\\n editable=&quot;false|true&quot;\\n editedItemPosition=&quot;<i>No default</i>&quot;\\n editorDataField=&quot;text&quot;\\n editorHeightOffset=&quot;0&quot;\\n editorUsesEnterKey=&quot;false|true&quot;\\n editorWidthOffset=&quot;0&quot;\\n editorXOffset=&quot;0&quot;\\n editorYOffset=&quot;0&quot;\\n imeMode=&quot;null&quot;\\n itemEditor=&quot;TextInput&quot;\\n itemEditorInstance=&quot;<i>Current item editor</i>&quot;\\n rendererIsEditor=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n backgroundDisabledColor=&quot;0xDDDDDD&quot;\\n \\n <b>Events</b>\\n itemEditBegin=&quot;<i>No default</i>&quot;\\n itemEditEnd=&quot;<i>No default</i>&quot;\\n itemEditBeginning=&quot;<i>No default</i>&quot;\\n itemFocusIn=&quot;<i>No default</i>&quot;\\n itemFocusOut=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleList.mxml", "examples/SimpleList.mxml"]},
    {  "tagName": "see",
       "values": ["mx.events.ListEvent", "mx.events.ListEvent"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Menu",
  "description": "The Menu control creates a pop-up menu of individually selectable choices, similar to the File or Edit menu found in most software applications. The popped up menu can have as many levels of submenus as needed. After a Menu control has opened, it remains visible until it is closed by any of the following actions:  <ul> <li>A call to the <code>Menu.hide()</code> method.</li> <li>When a user selects an enabled menu item.</li> <li>When a user clicks outside of the Menu control.</li> <li>When a user selects another component in the application.</li> </ul>  <p>The Menu class has no corresponding MXML tag. You must create it using ActionScript.</p>  <p>The Menu control has the following sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The width is determined from the Menu text. The default height is the number of menu rows multiplied by 19 pixels per row (the default row height).</td> </tr> </table>  <p>The data provider for Menu items can specify several attributes that determine how the item is displayed and behaves, as the following XML data provider shows:</p> <pre>\\n &lt;mx:XML format=&quot;e4x&quot; id=&quot;myMenuData&quot;&gt;\\n &lt;root&gt;\\n &lt;menuitem label=&quot;MenuItem A&quot; icon=&quot;myTopIcon&quot;&gt;\\n &lt;menuitem label=&quot;SubMenuItem A-1&quot; enabled=&quot;False&quot;/&gt;\\n &lt;menuitem label=&quot;SubMenuItem A-2&quot;/&gt;\\n &lt;/menuitem&gt;\\n &lt;menuitem label=&quot;MenuItem B&quot; type=&quot;check&quot; toggled=&quot;true&quot;/&gt;\\n &lt;menuitem label=&quot;MenuItem C&quot; type=&quot;check&quot; toggled=&quot;false&quot; icon=&quot;myTopIcon&quot;/&gt;\\n &lt;menuitem type=&quot;separator&quot;/&gt;\\n &lt;menuitem label=&quot;MenuItem D&quot; icon=&quot;myTopIcon&quot;&gt;\\n &lt;menuitem label=&quot;SubMenuItem D-1&quot; type=&quot;radio&quot; groupName=&quot;one&quot;/&gt;\\n &lt;menuitem label=&quot;SubMenuItem D-2&quot; type=&quot;radio&quot; groupName=&quot;one&quot; toggled=&quot;true&quot;/&gt;\\n &lt;menuitem label=&quot;SubMenuItem D-3&quot; type=&quot;radio&quot; groupName=&quot;one&quot;/&gt;\\n &lt;/menuitem&gt;\\n &lt;/root&gt;\\n &lt;/mx:XML&gt;</pre>  <p>The following table lists the attributes you can specify, their data types, their purposes, and how the data provider must represent them if the menu uses the DefaultDataDescriptor class to parse the data provider:</p>  <table class=&quot;innertable&quot;> <tr> <th>Attribute</th> <th>Type</th> <th>Description</th> </tr> <tr> <td><code>enabled</code></td> <td>Boolean</td> <td>Specifies whether the user can select the menu item (<code>true</code>), or not (<code>false</code>). If not specified, Flex treats the item as if the value were <code>true</code>. If you use the default data descriptor, data providers must use an <code>enabled</code> XML attribute or object field to specify this characteristic.</td> </tr> <tr> <td><code>groupName</code></td> <td>String</td> <td> (Required, and meaningful, for <code>radio</code> type only) The identifier that associates radio button items in a radio group. If you use the default data descriptor, data providers must use a <code>groupName</code> XML attribute or object field to specify this characteristic.</td> </tr> <tr> <td><code>icon</code></td> <td>Class</td> <td>Specifies the class identifier of an image asset. This item is not used for the <code>check</code>, <code>radio</code>, or <code>separator</code> types. You can use the <code>checkIcon</code> and <code>radioIcon</code> styles to specify the icons used for radio and check box items that are selected. The menu's <code>iconField</code> or <code>iconFunction</code> property determines the name of the field in the data that specifies the icon, or a function for determining the icons.</td> </tr> <tr> <td><code>label</code></td> <td>String</td> <td>Specifies the text that appears in the control. This item is used for all menu item types except <code>separator</code>. The menu's <code>labelField</code> or <code>labelFunction</code> property determines the name of the field in the data that specifies the label, or a function for determining the labels. (If the data provider is in E4X XML format, you must specify one of these properties to display a label.) If the data provider is an Array of Strings, Flex uses the String value as the label.</td> </tr> <tr> <td><code>toggled</code></td> <td>Boolean</td> <td>Specifies whether a check or radio item is selected. If not specified, Flex treats the item as if the value were <code>false</code> and the item is not selected. If you use the default data descriptor, data providers must use a toggled XML attribute or object field to specify this characteristic.</td> </tr> <tr> <td><code>type</code></td> <td>String</td> <td>Specifies the type of menu item. Meaningful values are <code>separator</code>, <code>check</code>, or <code>radio</code>. Flex treats all other values, or nodes with no type entry, as normal menu entries. If you use the default data descriptor, data providers must use a type XML attribute or object field to specify this characteristic.</td> </tr> </table>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleMenuExample.mxml", "examples/SimpleMenuExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.MenuBar", "mx.controls.PopUpMenuButton", "mx.controls.menuClasses.IMenuDataDescriptor", "mx.controls.treeClasses.DefaultDataDescriptor", "mx.effects.Tween", "mx.managers.PopUpManager", "mx.controls.MenuBar", "mx.controls.PopUpMenuButton", "mx.controls.menuClasses.IMenuDataDescriptor", "mx.controls.treeClasses.DefaultDataDescriptor", "mx.effects.Tween", "mx.managers.PopUpManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.MenuBar",
  "description": "A MenuBar control defines a horizontal, top-level menu bar that contains one or more menus. Clicking on a top-level menu item opens a pop-up submenu that is an instance of the Menu control.  <p>The top-level menu bar of the MenuBar control is generally always visible. It is not intended for use as a pop-up menu. The individual submenus pop up as the user selects them with the mouse or keyboard. Open submenus disappear when a menu item is selected, or if the menu is dismissed by the user clicking outside the menu.</p>  <p>For information and an example on the attributes that you can use in the data provider for the MenuBar control, see the Menu control.</p>  <p>The MenuBar control has the following sizing characteristics: </p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The width is determined from the menu text, with a minimum value of 27 pixels for the width. The default value for the height is 22 pixels.</td> </tr> </table>  <p> The <code>&lt;mx:MenuBar&gt</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes: </p>  <pre>\\n &lt;mx:MenuBar\\n <b>Properties</b>\\n dataDescriptor=&quot;<i>mx.controls.treeClasses.DefaultDataDescriptor</i>&quot;\\n dataProvider=&quot;<i>undefined</i>&quot;\\n iconField=&quot;icon&quot;\\n labelField=&quot;label&quot;\\n labelFunction=&quot;<i>undefined</i>&quot;\\n menuBarItemRenderer=&quot;<i>mx.controls.menuClasses.MenuBarItem</i>&quot;\\n menuBarItems=&quot;[]&quot;\\n menus=&quot;[]&quot;\\n selectedIndex=&quot;-1&quot;\\n showRoot=&quot;true&quot;\\n \\n <b>Styles</b>\\n backgroundSkin=&quot;mx.skins.halo.MenuBarBackgroundSkin&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;0&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n fillAlphas=&quot;[0.6,0.4]&quot;\\n fillColors=&quot;[0xFFFFFF, 0xCCCCCC]&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced|normal&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel|none|subpixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n highlightAlphas=&quot;[0.3,0.0]&quot;\\n itemDownSkin=&quot;mx.skins.halo.ActivatorSkin&quot;\\n itemOverSkin=&quot;mx.skins.halo.ActivatorSkin&quot;\\n itemUpSkin=&quot;mx.skins.halo.ActivatorSkin&quot;\\n leading=&quot;2&quot;\\n menuStyleName=&quot;<i>No default</i>&quot;\\n rollOverColor=&quot;0xB2E1FF&quot;\\n selectionColor=&quot;0x7FCEFF&quot;\\n textAlign=&quot;left&quot;\\n textDecoration=&quot;none&quot;\\n textIndent=&quot;0&quot;\\n \\n <b>Events</b>\\n itemClick=&quot;<i>No default&quot;</i>\\n itemRollOut=&quot;<i>No default&quot;</i>\\n itemRollOver=&quot;<i>No default&quot;</i>\\n menuHide=&quot;<i>No default&quot;</i>\\n menuShow=&quot;<i>No default&quot;</i>\\n /&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/MenuBarExample.mxml", "examples/MenuBarExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.Menu", "mx.controls.PopUpMenuButton", "mx.controls.menuClasses.IMenuBarItemRenderer", "mx.controls.menuClasses.MenuBarItem", "mx.controls.menuClasses.IMenuDataDescriptor", "mx.controls.treeClasses.DefaultDataDescriptor", "mx.controls.Menu", "mx.controls.PopUpMenuButton", "mx.controls.menuClasses.IMenuBarItemRenderer", "mx.controls.menuClasses.MenuBarItem", "mx.controls.menuClasses.IMenuDataDescriptor", "mx.controls.treeClasses.DefaultDataDescriptor"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.NumericStepper",
  "description": "The NumericStepper control lets the user select a number from an ordered set. The NumericStepper control consists of a single-line input text field and a pair of arrow buttons for stepping through the possible values. The Up Arrow and Down Arrow keys also cycle through the values.  <p>The NumericStepper control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to display the maximum number of digits used by the control</td> </tr> <tr> <td>Minimum size</td> <td>Based on the size of the text.</td> </tr> <tr> <td>Maximum size</td> <td>Undefined</td> </tr> </table>   The <code>&lt;mx:NumericStepper&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:  <pre>\\n &lt;mx:NumericStepper\\n <strong>Properties</strong>\\n imeMode=&quot;null&quot;\\n maxChars=&quot;10&quot;\\n maximum=&quot;10&quot;\\n minimum=&quot;0&quot;\\n stepSize=&quot;1&quot;\\n value=&quot;0&quot;\\n \\n <strong>Styles</strong>\\n backgroundAlpha=&quot;1.0&quot;\\n backgroundColor=&quot;undefined&quot;\\n backgroundImage=&quot;undefined&quot;\\n backgroundSize=&quot;auto&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n borderSides=&quot;left top right bottom&quot;\\n borderSkin=&quot;HaloBorder&quot;\\n borderStyle=&quot;inset&quot;\\n borderThickness=&quot;1&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;0&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n disabledIconColor=&quot;0x999999&quot;\\n downArrowDisabledSkin=&quot;NumericStepperDownSkin&quot;\\n downArrowDownSkin=&quot;NumericStepperDownSkin&quot;\\n downArrowOverSkin=&quot;NumericStepperDownSkin&quot;\\n downArrowUpSkin=&quot;NumericStepperDownSkin&quot;\\n dropShadowEnabled=&quot;false&quot;\\n dropShadowColor=&quot;0x000000&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n highlightAlphas=&quot;[0.3,0.0]&quot;\\n iconColor=&quot;0x111111&quot;\\n leading=&quot;2&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n shadowDirection=&quot;center&quot;\\n shadowDistance=&quot;2&quot;\\n textAlign=&quot;left|center|right&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n upArrowDisabledSkin=&quot;NumericStepperUpSkin&quot;\\n upArrowDownSkin=&quot;NumericStepperUpSkin&quot;\\n upArrowOverSkin=&quot;NumericStepperUpSkin&quot;\\n upArrowUpSkin=&quot;NumericStepperUpSkin&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/NumericStepperExample.mxml", "examples/NumericStepperExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.PopUpButton",
  "description": "The PopUpButton control adds a flexible pop-up control interface  to a Button control. It contains a main button and a secondary button, called the pop-up button, which pops up any UIComponent object when a user clicks the pop-up button.  <p>A PopUpButton control can have a text label, an icon, or both on its face. When a user clicks the main part of the PopUpButton control, it dispatches a <code>click</code> event.</p>  <p>One common use for the PopUpButton control is to have the pop-up button open a List control or a Menu control that changes  the function and label of the main button.</p>  <p>The PopUpButton control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Sufficient width to accommodate the label and icon on the main button and the icon on the pop-up button</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>Undefined</td> </tr> </table>   <p>The <code>&lt;mx:PopUpButton&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;mx:PopUpButton\\n <strong>Properties</strong>\\n openAlways=&quot;false|true\\n popUp=&quot;No default&quot;\\n \\n <strong>Styles</strong>\\n arrowButtonWidth=&quot;16&quot;\\n closeDuration=&quot;250&quot;\\n closeEasingFunction=&quot;No default&quot;\\n disabledIconColor=&quot;0x999999&quot;\\n iconColor=&quot;0x111111&quot;\\n openDuration=&quot;250&quot;\\n openEasingFunction=&quot;No default&quot;\\n popUpDownSkin=&quot;popUpDownSkin&quot;\\n popUpGap=&quot;0&quot;\\n popUpIcon=&quot;PopUpIcon&quot;\\n popUpOverSkin=&quot;popUpOverSkin&quot;\\n \\n <strong>Events</strong>\\n close=&quot;No default&quot;\\n open=&quot;No default&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PopUpButtonExample.mxml", "examples/PopUpButtonExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.PopUpMenuButton",
  "description": "The PopUpMenuButton control creates a PopUpButton control with a main sub-button and a secondary sub-button. Clicking on the secondary (right) sub-button drops down a menu that can be popluated through a <code>dataProvider</code> property. Unlike the Menu and MenuBar controls, the PopUpMenuButton control supports only a single-level menu. This means that the menu cannot contain cascading submenus.  <p>The main sub-button of the PopUpMenuButton control can have a text label, an icon, or both on its face. When a user selects an item from the drop-down menu or clicks the main button of the PopUpMenuButton control, the control dispatches an <code>itemClick</code> event. When a user clicks the main button of the control, the control also dispatches a <code>click</code> event. You can customize the look of a PopUpMenuButton control.</p>  <p>The PopUpMenuButton control has the following sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Sufficient to accommodate the label and any icon on the main button, and the icon on the pop-up button. The control does not reserve space for the menu.</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels.</td> </tr> <tr> <td>Maximum size</td> <td>10000 by 10000.</td> </tr> </table>   <p>The <code>&lt;mx:PopUpMenuButton&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:PopUpMenuButton\\n <strong>Properties</strong>\\n dataDescriptor=&quot;<i>instance of DefaultDataDescriptor</i>&quot;\\n dataProvider=&quot;undefined&quot;\\n iconField=&quot;icon&quot;\\n iconFunction=&quot;undefined&quot;\\n labelField=&quot;label&quot;\\n labelFunction=&quot;undefined&quot;\\n showRoot=&quot;false|true&quot;\\n &nbsp;\\n <strong>Event</strong>\\n change=<i>No default</i>\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PopUpButtonMenuExample.mxml", "examples/PopUpButtonMenuExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.Menu", "mx.controls.MenuBar", "mx.controls.Menu", "mx.controls.MenuBar"]},
    {  "tagName": "helpid",
       "values": ["3441", "3441"]},
    {  "tagName": "tiptext",
       "values": ["Provides ability to pop up a menu and act as a button", "Provides ability to pop up a menu and act as a button"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ProgressBar",
  "description": "The ProgressBar control provides a visual representation of the progress of a task over time. There are two types of ProgressBar controls: determinate and indeterminate.  <p>A determinate ProgressBar control is a linear representation of the progress of a task over time. You use a determinate ProgressBar when the scope of the task is known. It displays when the user has to wait for an extended amount of time.</p>  <p>An indeterminate ProgressBar control represents time-based processes for which the scope is not yet known. As soon as you can determine the scope, you should use a determinate ProgressBar control.</p>  <p>The ProgressBar control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>default size</td> <td>150 pixels wide by 4 pixels high</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>Undefined</td> </tr> </table>   <p>The <code>&lt;mx:ProgressBar&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:ProgressBar\\n <strong>Properties</strong>\\n conversion=&quot;1&quot;\\n direction=&quot;right|left&quot;\\n indeterminate=&quot;false|true&quot;\\n label=&quot;<i>No default</i>&quot;\\n labelPlacement=&quot;bottom|top|left|right|center&quot;\\n maximum=&quot;0&quot;\\n minimum=&quot;0&quot;\\n mode=&quot;event|polled|manual&quot;\\n source=&quot;<i>No default</i>&quot;\\n \\n <strong>Styles</strong>\\n barColor=&quot;undefined&quot;\\n barSkin=&quot;ProgressBarSkin&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n color=&quot;0x0B333C&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontThickness=&quot;0&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontWeight=&quot;normal|bold&quot;\\n horizontalGap=&quot;8&quot;\\n indeterminateMoveInterval=&quot;26&quot;\\n indeterminateSkin=&quot;ProgressIndeterminateSkin&quot;\\n labelWidth=&quot;Computed&quot;\\n leading=&quot;0&quot;\\n maskSkin=&quot;ProgressMaskSkin&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n textAlign=&quot;left|right|center&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n themeColor=&quot;haloGreen|haloBlue|haloOrange&quot;\\n trackColors=&quot;[0xE6EEEE,0xE6EEEE]&quot;\\n trackHeight=&quot;Calculated&quot;\\n trackSkin=&quot;ProgressTrackSkin&quot;\\n verticalGap=&quot;6&quot;\\n \\n <strong>Events</strong>\\n complete=&quot;<i>No default</i>&quot;\\n hide=&quot;<i>No default</i>&quot;\\n progress=&quot;<i>No default</i>&quot;\\n show=&quot;<i>No default</i>&quot;\\n \\n <strong>Effects</strong>\\n completeEffect=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleProgressBar.mxml", "examples/SimpleProgressBar.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.ProgressBarDirection", "mx.controls.ProgressBarLabelPlacement", "mx.controls.ProgressBarMode", "mx.controls.ProgressBarDirection", "mx.controls.ProgressBarLabelPlacement", "mx.controls.ProgressBarMode"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.controls.ProgressBarDirection",
  "description": "The ProgressBarDirection class defines the values for the <code>direction</code> property of the ProgressBar class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.ProgressBar", "mx.controls.ProgressBar"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ProgressBarLabelPlacement",
  "description": "The ProgressBarLabelPlacement class defines the values for the <code>labelPlacement</code> property of the ProgressBar class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.ProgressBar", "mx.controls.ProgressBar"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ProgressBarMode",
  "description": "The ProgressBarMode class defines the values for the <code>mode</code> property of the ProgressBar class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.ProgressBar", "mx.controls.ProgressBar"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.RadioButton",
  "description": "The RadioButton control lets the user make a single choice within a set of mutually exclusive choices. A RadioButton group is composed of two or more RadioButton controls with the same <code>groupName</code> property. While grouping RadioButton instances in a RadioButtonGroup is optional, a group lets you do things like set a single event handler on a group of buttons, rather than on each individual button. The RadioButton group can refer to a group created by the <code>&lt;mx:RadioButtonGroup&gt;</code> tag. The user selects only one member of the group at a time. Selecting an unselected group member deselects the currently selected RadioButton control within that group.  <p>The RadioButton control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to display the text label of the control</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>Undefined</td> </tr> </table>   <p>The <code>&lt;mx:RadioButton&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:RadioButton\\n <strong>Properties</strong>\\n groupName=&quot;&quot;\\n labelPlacement=&quot;right|left|top|bottom&quot;\\n \\n <strong>Styles</strong>\\n disabledIconColor=&quot;0x999999&quot;\\n iconColor=&quot;0x2B333C&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RadioButtonExample.mxml", "examples/RadioButtonExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.RadioButtonGroup", "mx.controls.RadioButtonGroup"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.RadioButtonGroup",
  "description": "The RadioButtonGroup control defines a group of RadioButton controls that act as a single mutually exclusive control; therefore, a user can select only one RadioButton control at a time. While grouping RadioButton instances in a RadioButtonGroup is optional, a group lets you do things like set a single event handler on a group of buttons, rather than on each individual button.  <p>The <code>id</code> property is required when you use the <code>&lt;mx:RadioButtonGroup&gt;</code> tag to define the name of the group.</p>  <p>Notice that the RadioButtonGroup control is a subclass of EventDispatcher, not UIComponent, and implements the IMXMLObject interface. All other Flex visual components are subclasses of UIComponent, which implements the IUIComponent interface. The RadioButtonGroup control has support built into the Flex compiler that allows you to use the RadioButtonGroup control as a child of a Flex container, even though it does not implement IUIComponent. All other container children must implement the IUIComponent interface.</p>  <p>Therefore, if you try to define a visual component as a subclass of EventDispatcher that implements the IMXMLObject interface, you will not be able to use it as the child of a container.</p>   <p>The <code>&lt;mx:RadioButtonGroup&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:RadioButtonGroup\\n <strong>Properties</strong>\\n enabled=&quot;true|false&quot;\\n id=&quot;<i>No default</i>&quot;\\n labelPlacement=&quot;right|left|top|bottom&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>No default</i>&quot;\\n itemClick=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RadioButtonGroupExample.mxml", "examples/RadioButtonGroupExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.RadioButton", "mx.controls.RadioButton"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Spacer",
  "description": "The Spacer control helps you lay out children within a parent container. Although the Spacer control does not draw anything, it does allocate space for itself within its parent container.  <p>In the following example, a flexible Spacer control is used to push the Button control to the right, so that the Button control is aligned with the right edge of the HBox container:</p>  <pre>\\n &lt;mx:HBox&gt;\\n &lt;mx:Image source=&quot;Logo.jpg&quot;/&gt;\\n &lt;mx:Label text=&quot;Company XYZ&quot;/&gt;\\n &lt;mx:Spacer width=&quot;100%&quot;/&gt;\\n &lt;mx:Button label=&quot;Close&quot;/&gt;\\n &lt;/mx:HBox&gt;\\n </pre>   <p>The <code>&lt;mx:Spacer&gt;</code> tag inherits all of the tag attributes of its superclass, and adds no new tag attributes.</p>  <pre>\\n &lt;mx:Spacer/&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SpacerExample.mxml", "examples/SpacerExample.mxml"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.TabBar",
  "description": "The TabBar control is a ButtonBar with buttons that look like Tabs.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Text",
  "description": "The Text control displays multiline, noneditable text. Use the Label control if you need only a single line of text.  <p>The Text control does not support scroll bars. If you need scrolling, you should use a non-editable TextArea control.</p>  <p>You can format the text in a Text control using HTML tags, which are applied after the control's CSS styles are applied. You can also put padding around the four sides of the text.</p>  <p>The text in a Text control is selectable by default, but you can make it unselectable by setting the <code>selectable</code> property to <code>false</code>.</p>  <p>If the control is not as wide as the text, the text will wordwrap. The text is always aligned top-left in the control.</p>  <p>To size a Text component, it's common to specify an explicit width and let Flex determine the height as required to display all the text. If you specify an explicit height, some of the text may get clipped; unlike Label, Text does not truncate its text with &quot;...&quot;. It's also common to use percentage widths and heights with Text.</p>  <p>If you leave both the width and the height unspecified, Flex calculates them based on any explicit line breaks in the text, with no wordwrapping within lines. For example, if you set the <code>text</code> property, the newline character <code>&quot;\\n&quot;</code> causes a line break. If you set the <code>htmlText</code> property, the HTML markup <code>&lt;br&gt;</code> causes a line break. If your <code>text</code> or <code>htmlText</code> is lengthy and doesn't contain line breaks, you can get a very wide Text component; you can set the <code>maxWidth</code> to limit how wide the component is allowed to grow.</p>  <p>Text controls do not have backgrounds or borders and cannot take focus.</p>  <p>The Text control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Flex sizes the control to fit the text, with the width long enough to fit the longest line of text and height tall enough to fit the number of lines. If you do not specify a pixel width, the height is determined by the number of explicit line breaks in the text string. If the text length changes, the control resizes to fit the new text.</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels.</td> </tr> <tr> <td>ChMaximum sizear03</td> <td>10000 by 10000 pixels</td> </tr> </table>   <p>The <code>&lt;mx:Text&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Text\\n leading=&quot;2&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TextExample.mxml", "examples/TextExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.Label", "mx.controls.TextInput", "mx.controls.TextArea", "mx.controls.RichTextEditor", "mx.controls.Label", "mx.controls.TextInput", "mx.controls.TextArea", "mx.controls.RichTextEditor"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.TextArea",
  "description": "The TextArea control is a multiline text field with a border and optional scroll bars. The TextArea control supports the HTML rendering capabilities of Flash Player and AIR.  <p>If you disable a TextArea control, it displays its contents in the color specified by the <code>disabledColor</code> style. You can also set a TextArea control to read-only to disallow editing of the text. To conceal input text by displaying characters as asterisks, set the TextArea's <code>displayAsPassword</code> property.</p>  <p>The TextArea control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>width: 160 pixels; height: 44 pixels</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>10000 by 10000 pixels</td> </tr> </table>   <p>The <code>&lt;mx:TextArea&gt;</code> tag inherits the attributes of its superclass and adds the following attributes:</p>  <pre>\\n &lt;mx:TextArea\\n <b>Properties</b>\\n condenseWhite=&quot;false|true&quot;\\n data=&quot;undefined&quot;\\n displayAsPassword=&quot;false|true&quot;\\n editable=&quot;true|false&quot;\\n horizontalScrollPolicy=&quot;auto|on|off&quot;\\n horizontalScrollPosition=&quot;0&quot;\\n htmlText=&quot;null&quot;\\n imeMode=&quot;null&quot;\\n length=&quot;0&quot;\\n listData=&quot;null&quot;\\n maxChars=&quot;0&quot;\\n restrict=&quot;null&quot;\\n selectionBeginIndex=&quot;0&quot;\\n selectionEndIndex=&quot;0&quot;\\n styleSheet=&quot;null&quot;\\n text=&quot;&quot;\\n textHeight=&quot;<i>height of text</i>&quot; [read-only]\\n textWidth=&quot;<i>width of text</i>&quot; [read-only]\\n verticalScrollPolicy=&quot;auto|on|off&quot;\\n verticalScrollPosition=&quot;0&quot;\\n wordWrap=&quot;true|false&quot;\\n &nbsp;\\n <b>Styles</b>\\n disabledColor=&quot;0xAAB3B3&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners&quot;tl tr bl br&quot;\\n paddingLeft=&quot;0&quot;&quot;\\n paddingRight=&quot;0&quot;&quot;\\n &nbsp;\\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TextAreaExample.mxml", "examples/TextAreaExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.Label", "mx.controls.Text", "mx.controls.TextInput", "mx.controls.RichTextEditor", "mx.controls.textClasses.TextRange", "mx.controls.Label", "mx.controls.Text", "mx.controls.TextInput", "mx.controls.RichTextEditor", "mx.controls.textClasses.TextRange"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.TextInput",
  "description": "The TextInput control is a single-line text field that is optionally editable. All text in this control must use the same styling unless it is HTML text. The TextInput control supports the HTML rendering capabilities of Flash Player and AIR.  <p>TextInput controls do not include a label, although you can add one by using a Label control or by nesting the TextInput control in a FormItem control in a Form container. When used in a FormItem control, a TextInput control indicates whether a value is required. TextInput controls have a number of states, including filled, selected, disabled, and error. TextInput controls support formatting, validation, and keyboard equivalents; they also dispatch change and enter events.</p>  <p>If you disable a TextInput control, it displays its contents in the color specified by the <code>disabledColor</code> style. To disallow editing the text, you set the <code>editable</code> property to <code>false</code>. To conceal the input text by displaying asterisks instead of the characters entered, you set the <code>displayAsPassword</code> property to <code>true</code>.</p>  <p>The TextInput control is used as a subcomponent in several other controls, such as the RichTextEditor, NumericStepper, and ComboBox controls. As a result, if you assign style properties to a TextInput control by using a CSS type selector, Flex applies those styles to the TextInput when it appears in the other controls unless you explicitly override them.</p>  <p>The TextInput control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The size of the text with a default minimum size of 22 pixels high and 160 pixels wide</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels</td> </tr> <tr> <td>Maximum size</td> <td>10000 by 10000 pixels</td> </tr> </table>   <p>The <code>&lt;mx:TextInput&gt;</code> tag inherits the attributes of its superclass and adds the following attributes:</p>  <pre>\\n &lt;mx:TextInput\\n <b>Properties</b>\\n condenseWhite=&quot;false|true&quot;\\n data=&quot;undefined&quot;\\n displayAsPassword=&quot;false|true&quot;\\n editable=&quot;true|false&quot;\\n horizontalScrollPosition=&quot;0&quot;\\n htmlText=&quot;&quot;\\n imeMode=&quot;null&quot;\\n length=&quot;0&quot;\\n listData=&quot;null&quot;\\n maxChars=&quot;0&quot;\\n parentDrawsFocus=&quot;false&quot;\\n restrict=&quot;null&quot;\\n selectionBeginIndex=&quot;0&quot;\\n selectionEndIndex=&quot;0&quot;\\n text=&quot;&quot;\\n textHeight=&quot;0&quot;\\n textWidth=&quot;0&quot;\\n &nbsp;\\n <b>Styles</b>\\n backgroundAlpha=&quot;1.0&quot;\\n backgroundColor=&quot;undefined&quot;\\n backgroundImage=&quot;undefined&quot;\\n backgroundSize=&quot;auto&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n borderSides=&quot;left top right bottom&quot;\\n borderSkin=&quot;mx.skins.halo.HaloBorder&quot;\\n borderStyle=&quot;inset&quot;\\n borderThickness=&quot;1&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;0&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n dropShadowColor=&quot;0x000000&quot;\\n dropShadowEnabled=&quot;false&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners&quot;tl tr bl br&quot;\\n fontAntiAliasType=&quot;advanced|normal&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel|none|subpixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n shadowDirection=&quot;center&quot;\\n shadowDistance=&quot;2&quot;\\n textAlign=&quot;left|right|center&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n &nbsp;\\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n enter=&quot;<i>No default</i>&quot;\\n textInput=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TextInputExample.mxml", "examples/TextInputExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.Label", "mx.controls.Text", "mx.controls.TextArea", "mx.controls.RichTextEditor", "mx.controls.textClasses.TextRange", "mx.controls.Label", "mx.controls.Text", "mx.controls.TextArea", "mx.controls.RichTextEditor", "mx.controls.textClasses.TextRange"]},
    {  "tagName": "helpid",
       "values": ["3188", "3188"]},
    {  "tagName": "tiptext",
       "values": ["TextInput is a single-line, editable text field.", "TextInput is a single-line, editable text field."]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.TinyEditor",
  "description": "The TinyEditor control is a JS RichTextEditor that uses tiny-editor: https://www.cssscript.com/tiny-rich-text-editor/  To use this control, you have to download and deploy the tiny-rich-text-editor code.  To install it, do the following:  npm init npm install tiny-editor --save  after building the code, copy node_modules into the output folders so that bin/js-debug/node_modules/tiny-editor/dist/bundle.js",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.RichTextEditor", "mx.controls.RichTextEditor"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ToggleButtonBar",
  "description": "The ToggleButtonBar control defines a horizontal or vertical group of buttons that maintain their selected or deselected state. Only one button in the ToggleButtonBar control can be in the selected state. This means that when a user selects a button in a ToggleButtonBar control, the button stays in the selected state until the user selects a different button.  <p>If you set the <code>toggleOnClick</code> property of the ToggleButtonBar container to <code>true</code>, selecting the currently selected button deselects it. By default the <code>toggleOnClick</code> property is set to <code>false</code>.</p>  <p>You can use the ButtonBar control to define a group of push buttons.</p>  <p>The typical use for a toggle button is for maintaining selection among a set of options, such as switching between views in a ViewStack container.</p>  <p>The ToggleButtonBar control creates Button controls based on the value of its <code>dataProvider</code> property. Even though ToggleButtonBar is a subclass of Container, do not use methods such as <code>Container.addChild()</code> and <code>Container.removeChild()</code> to add or remove Button controls. Instead, use methods such as <code>addItem()</code> and <code>removeItem()</code> to manipulate the <code>dataProvider</code> property. The ToggleButtonBar control automatically adds or removes the necessary children based on changes to the <code>dataProvider</code> property.</p>  <p>To control the styling of the buttons of the ToggleButtonBar control, use the <code>buttonStyleName</code>, <code>firstButtonStyleName</code>, and <code>lastButtonStyleName</code> style properties; do not try to style the individual Button controls that make up the ToggleButtonBar control.</p>  <p>ToggleButtonBar control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Preferred size</td> <td>Wide enough to contain all buttons with their label text and icons, if any, plus any padding and separators, and high enough to accommodate the button height.</td> </tr> <tr> <td>Control resizing rules</td> <td>The controls do not resize by default. Specify percentage sizes if you want your ToggleButtonBar to resize based on the size of its parent container.</td> </tr> <tr> <td>selectedIndex</td> <td>Determines which button will be selected when the control is created. The default value is &quot;0&quot; and selects the leftmost button in the bar. Setting the selectedIndex property to &quot;-1&quot; deselects all buttons in the bar.</td> </tr> <tr> <td>Padding</td> <td>0 pixels for the top, bottom, left, and right properties.</td> </tr> </table>   <p>The <code>&lt;mx:ToggleButtonBar&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:ToggleButtonBar\\n <b>Properties</b>\\n selectedIndex=&quot;0&quot;\\n toggleOnClick=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n selectedButtonTextStyleName=&quot;<i>Name of CSS style declaration that specifies styles for the text of the selected button.</i>&quot;&gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:ToggleButtonBar&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ToggleButtonBarExample.mxml", "examples/ToggleButtonBarExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.ButtonBar", "mx.controls.LinkBar", "mx.controls.ButtonBar", "mx.controls.LinkBar"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.ToolTip",
  "description": "The ToolTip control lets you provide helpful information to your users. When a user moves the mouse pointer over a graphical component, the ToolTip control pops up and displays text that provides information about the component. You can use ToolTips to guide users as they work with your application or customize the ToolTip controls to provide additional functionality.",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.ToolTipManager", "mx.styles.CSSStyleDeclaration", "mx.managers.ToolTipManager", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.Tree",
  "description": "The Tree control lets a user view hierarchical data arranged as an expandable tree. Each item in a tree can be a leaf or a branch. A leaf item is an end point in the tree. A branch item can contain leaf or branch items, or it can be empty.  <p>By default, a leaf is represented by a text label next to a file icon. A branch is represented by a text label next to a folder icon, with a disclosure triangle that a user can open to expose children.</p>  <p>The Tree class uses an ITreeDataDescriptor or ITreeDataDescriptor2 object to parse and manipulate the data provider. The default tree data descriptor, an object of the DefaultDataDescriptor class, supports XML and Object classes; an Object class data provider must have all children in <code>children</code> fields. </p>  <p>The Tree control has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to accommodate the icon, label, and expansion triangle, if any, of the widest node in the first 7 displayed (uncollapsed) rows, and seven rows high, where each row is 20 pixels in height. If a scroll bar is required, the width of the scroll bar is not included in the width calculations.</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels.</td> </tr> <tr> <td>Maximum size</td> <td>5000 by 5000.</td> </tr> </table>  <p> The &lt;mx:Tree&gt; tag inherits all the tag attributes of its superclass, and adds the following tag attributes: </p> <pre>\\n &lt;mx:Tree\\n <b>Properties</b>\\n dataDescriptor=&quot;<i>Instance of DefaultDataDescriptor</i>&quot;\\n dataProvider=&quot;null&quot;\\n dragMoveEnabled=&quot;true|false&quot;\\n firstVisibleItem=&quot;<i>First item in the control</i>&quot;\\n hasRoot=&quot;false|true&quot;\\n itemIcons=&quot;null&quot;\\n maxHorizontalScrollPosition=&quot;0&quot;\\n openItems=&quot;null&quot;\\n showRoot=&quot;true|false&quot;\\n &nbsp;\\n <b>Styles</b>\\n alternatingItemColors=&quot;undefined&quot;\\n backgroundDisabledColor=&quot;0xDDDDDD&quot;\\n defaultLeafIcon=&quot;<i>'TreeNodeIcon' symbol in Assets.swf</i>&quot;\\n depthColors=&quot;undefined&quot;\\n disclosureClosedIcon=&quot;<i>'TreeDisclosureClosed' symbol in Assets.swf</i>&quot;\\n disclosureOpenIcon=&quot;<i>'TreeDisclosureOpen' symbol in Assets.swf</i>&quot;\\n folderClosedIcon=&quot;<i>'TreeFolderClosed' symbol in Assets.swf</i>&quot;\\n folderOpenIcon=&quot;<i>'TreeFolderOpen' symbol in Assets.swf</i>&quot;\\n indentation=&quot;17&quot;\\n openDuration=&quot;250&quot;\\n openEasingFunction=&quot;undefined&quot;\\n paddingLeft=&quot;2&quot;\\n paddingRight=&quot;0&quot;\\n rollOverColor=&quot;0xAADEFF&quot;\\n selectionColor=&quot;0x7FCDFE&quot;\\n selectionDisabledColor=&quot;0xDDDDDD&quot;\\n selectionEasingFunction=&quot;undefined&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x2B333C&quot;\\n &nbsp;\\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n itemClose=&quot;<i>No default</i>&quot;\\n itemOpen=&quot;<i>No default</i>&quot;\\n itemOpening=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TreeExample.mxml", "examples/TreeExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.treeClasses.ITreeDataDescriptor", "mx.controls.treeClasses.ITreeDataDescriptor2", "mx.controls.treeClasses.DefaultDataDescriptor", "mx.controls.treeClasses.ITreeDataDescriptor", "mx.controls.treeClasses.ITreeDataDescriptor2", "mx.controls.treeClasses.DefaultDataDescriptor"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.VRule",
  "description": "The VRule control creates a single vertical line. You typically use this control to create a dividing line within a container.  <p>The HRule control has the following default properties:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>The default height is 100 pixels, default width is 2 pixels. By default, the VRule control is not resizable; set width and height to percentage values to enable resizing.</td> </tr> <tr> <td>strokeWidth</td> <td>2 pixels.</td> </tr> <tr> <td>strokeColor</td> <td>0xC4CCCC.</td> </tr> <tr> <td>shadowColor</td> <td>0xEEEEEE.</td> </tr> </table>   <p>The <code>&lt;mx:VRule&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:VRule\\n <strong>Styles</strong>\\n strokeColor=&quot;0xC4CCCC&quot;\\n shadowColor=&quot;0xEEEEEE&quot;\\n strokeWidth=&quot;2&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleVRule.mxml", "examples/SimpleVRule.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.HRule", "mx.controls.HRule"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.VScrollBar",
  "description": "The VScrollBar (vertical ScrollBar) control  lets you control the portion of data that is displayed when there is too much data to fit in a display area.  This control extends the base ScrollBar control.  <p>Although you can use the VScrollBar control as a stand-alone control, you usually combine it as part of another group of components to provide scrolling functionality.</p>  <p>A ScrollBar control consist of four parts: two arrow buttons, a track, and a thumb. The position of the thumb and the display of the arrow buttons depend on the current state of the ScrollBar control. The ScrollBar control uses four parameters to calculate its display state:</p>  <ul> <li>Minimum range value</li> <li>Maximum range value</li> <li>Current position - must be within the minimum and maximum range values</li> <li>Viewport size - represents the number of items in the range that you can display at one time. The number of items must be less than or equal to the range, where the range is the set of values between the minimum range value and the maximum range value.</li> </ul>   <p>The <code>&lt;mx:VScrollBar&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:VScrollBar\\n <strong>Styles</strong>\\n repeatDelay=&quot;500&quot;\\n repeatInterval=&quot;35&quot;\\n \\n <strong>Events</strong>\\n scroll=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/VScrollBarExample.mxml", "examples/VScrollBarExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.controls.scrollClasses.ScrollBar", "mx.controls.scrollClasses.ScrollBar"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridButtonBar",
  "description": "The AdvancedDataGridButtonBar class extends DataGridButtonBar to allow some specialized css",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridColumn",
  "description": "The AdvancedDataGridColumn class describes a column in an AdvancedDataGrid control. There is one AdvancedDataGridColumn per displayable column, even if a column is hidden or off-screen. The data provider items of an AdvancedDataGrid control can contain properties that are not displayed, and therefore, do not need an AdvancedDataGridColumn. An AdvancedDataGridColumn allows specification of the color and font of the text in a column; specification of what kind of component displays the data for the column; specification of whether the column is editable, sortable, or resizeable; and specification of the text for the column header.  <p><strong>Notes:</strong><ul> <li>An AdvancedDataGridColumn only holds information about a column; it is not the parent of the item renderers in the column.</li> <li>If you specify an AdvancedDataGridColumn class without a <code>dataField</code> property, you must specify a <code>sortCompareFunction</code> property. Otherwise, sort operations may cause run-time errors.</li></ul> </p>   <p>You use the <code>&lt;mx.AdvancedDataGridcolumn&gt;</code> tag to configure a column of a AdvancedDataGrid control. You specify the <code>&lt;mx.AdvancedDataGridcolumn&gt;</code> tag as a child of the <code>columns</code> property in MXML. The <code>&lt;mx.AdvancedDataGridcolumn&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:AdvancedDataGridColumn\\n <b>Properties </b>\\n dataField=&quot;<i>No default</i>&quot;\\n dataTipField=&quot;<i>No default</i>&quot;\\n dataTipFunction=&quot;<i>No default</i>&quot;\\n editable=&quot;true|false&quot;\\n editorDataField=&quot;text&quot;\\n editorHeightOffset=&quot;0&quot;\\n editorUsesEnterKey=&quot;false|true&quot;\\n editorWidthOffset=&quot;0&quot;\\n editorXOffset=&quot;0&quot;\\n editorYOffset=&quot;0&quot;\\n formatter=&quot;null&quot;\\n headerRenderer=&quot;AdvancedDataGridHeaderRenderer&quot;\\n headerText=&quot;<i>No default</i>&quot;\\n headerWordWrap=&quot;undefined&quot;\\n imeMode=&quot;null&quot;\\n itemEditor=&quot;TextInput&quot;\\n itemRenderer=&quot;AdvancedDataGridItemRenderer&quot;\\n labelFunction=&quot;<i>No default</i>&quot;\\n minWidth=&quot;20&quot;\\n rendererIsEditor=&quot;false|true&quot;\\n resizable=&quot;true|false&quot;\\n showDataTips=&quot;false|true&quot;\\n sortable=&quot;true|false&quot;\\n sortCompareFunction=&quot;<i>No default</i>&quot;\\n sortDescending=&quot;false|true&quot;\\n styleFunction=&quot;<i>No default</i>&quot;\\n visible=&quot;true|false&quot;\\n width=&quot;100&quot;\\n wordWrap=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n backgroundColor=&quot;0xFFFFFF&quot;\\n color=&quot;<i>No default.</i>&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontFamily=&quot;<i>No default</i>&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;<i>No default</i>&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n headerStyleName=&quot;<i>No default</i>&quot;\\n kerning=&quot;false|true&quot;\\n letterSpacing=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n textAlign=&quot;right|center|left&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.styles.CSSStyleDeclaration", "mx.controls.AdvancedDataGrid", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridColumnGroup",
  "description": "Use the AdvancedDataGridColumnGroup class to specify column groups for the AdvancedDataGrid control. You can specify one or more AdvancedDataGridColumn classes as children of the AdvancedDataGridColumnGroup class, or nest AdvancedDataGridColumnGroup classes to create nested column groups. The <code>AdvancedDataGrid.columnGroup</code> property takes an Array of AdvancedDataGridColumnGroup instances to specify the column groups.  <p>The following example uses the AdvancedDataGridColumnGroup class to define a column group named Revenues that contains two columns: Actual and Estimate.</p>  <pre>\\n &lt;mx:AdvancedDataGrid id=&quot;myADG&quot;\\n dataProvider=&quot;{dpFlat}&quot;\\n width=&quot;100%&quot; height=&quot;100%&quot;&gt;\\n &lt;mx:groupedColumns&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Region&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Territory_Rep&quot;\\n headerText=&quot;Territory Rep&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumnGroup headerText=&quot;Revenues&quot;&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Actual&quot;/&gt;\\n &lt;mx:AdvancedDataGridColumn dataField=&quot;Estimate&quot;/&gt;\\n &lt;/mx:AdvancedDataGridColumnGroup&gt;\\n &lt;/mx:groupedColumns&gt;\\n &lt;/mx:AdvancedDataGrid&gt;</pre>   <p>You use the <code>&lt;mx.AdvancedDataGridColumnGroup&gt;</code> tag to configure a column group of a AdvancedDataGrid control. You specify the <code>&lt;mx.AdvancedDataGridColumnGroup&gt;</code> tag as a child of the <code>groupedColumns</code> property in MXML. The <code>&lt;mx.AdvancedDataGridcolumn&gt;</code> tag defines the following tag attributes:</p>  <pre>\\n &lt;mx:AdvancedDataGridColumn\\n <b>Properties </b>\\n children=&quot;<i>No default</i>&quot;\\n childrenDragEnabled=&quot;true|false&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.controls.AdvancedDataGrid#columnGroup", "mx.controls.AdvancedDataGrid", "mx.controls.AdvancedDataGrid#columnGroup"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridColumnList",
  "description": "The AdvancedDataGridColumnList class represnts a column in an AdvancedDataGrid control. There is one AdvancedDataGridColumnList per displayable column, even if a column is hidden or off-screen.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridHeaderInfo",
  "description": "The AdvancedDataGridHeaderInfo class contains information that describes the hierarchy of the columns of the AdvancedDataGrid control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridHeaderRenderer",
  "description": "The AdvancedDataGridHeaderRenderer class defines the default header renderer for a AdvancedDataGrid control. By default, the header renderer draws the text associated with each header in the list, and an optional sort arrow (if sorted by that column).  <p> By default, the custom header renderer uses the default sort item renderer defined by the AdvancedDataGridSortItemRenderer class. The sort item renderer controls the display of the sort icon and sort sequence number. You can specify a custom sort item renderer by using the <code>sortItemRenderer</code> property.</p>  <p>You can override the default header renderer by creating a custom header renderer. The only requirement for a custom header renderer is that it must include the size of the <code>sortItemRenderer</code> in any size calculations performed by an override of the <code>measure()</code> and <code>updateDisplayList()</code> methods.</p>  <p>You can customize when the sorting gets triggered by handling or dispatching the <code>AdvancedDataGridEvent.SORT</code> event.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.controls.advancedDataGridClasses.AdvancedDataGridSortItemRenderer", "mx.controls.AdvancedDataGrid", "mx.controls.advancedDataGridClasses.AdvancedDataGridSortItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridItemRenderer",
  "description": "The AdvancedDataGridItemRenderer class defines the default item renderer for a AdvancedDataGrid control. By default, the item renderer draws the text associated with each item in the grid.  <p>You can override the default item renderer by creating a custom item renderer.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.core.IDataRenderer", "mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid", "mx.core.IDataRenderer", "mx.controls.listClasses.IDropInListItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridListArea",
  "description": "The AdvancedDataGridColumnList class represnts a column in an AdvancedDataGrid control. There is one AdvancedDataGridColumnList per displayable column, even if a column is hidden or off-screen.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridListData",
  "description": "The AdvancedDataGridListData class defines the data type of the <code>listData</code> property implemented by drop-in item renderers or drop-in item editors for the AdvancedDataGrid control. All drop-in item renderers and drop-in item editors must implement the IDropInListItemRenderer interface, which defines the <code>listData</code> property.  <p>While the properties of this class are writable, you should consider them to be read only. They are initialized by the AdvancedDataGrid class, and read by an item renderer or item editor. Changing these values can lead to unexpected results.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid", "mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridSelectableItemRendererBead",
  "description": "The AdvancedDataGridListData class defines the data type of the <code>listData</code> property implemented by drop-in item renderers or drop-in item editors for the AdvancedDataGrid control. All drop-in item renderers and drop-in item editors must implement the IDropInListItemRenderer interface, which defines the <code>listData</code> property.  <p>While the properties of this class are writable, you should consider them to be read only. They are initialized by the AdvancedDataGrid class, and read by an item renderer or item editor. Changing these values can lead to unexpected results.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid", "mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.AdvancedDataGridSingleSelectionMouseController",
  "description": "The TreeSingleSelectionMouseController class is a controller for org.apache.royale.html.Tree. This controller watches for selection events on the tree item renderers and uses those events to open or close nodes of the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.advancedDataGridClasses.DataItemRendererFactoryForICollectionViewAdvancedDataGridData",
  "description": "The DataItemRendererFactoryForHierarchicalData class reads a HierarchicalData object and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.AdvancedDataGridItemRendererInitializer",
  "description": "The AdvancedDataGridItemRendererInitializer class initializes item renderers in tree classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.AdvancedDataGridSelectableItemRendererClassFactory",
  "description": "The AdvancedDataGridItemRendererInitializer class initializes item renderers in tree classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.AdvancedDataGridSortBead",
  "description": ""},
{ "name": "mx.controls.beads.AdvancedDataGridView",
  "description": "The AlertView class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.AlertView",
  "description": "The AlertView class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.CSSImageAndTextButtonView",
  "description": "The CSSTextButtonView class is the default view for the mx.core.Button class. It allows the look of the button to be expressed in CSS via the background-image style and displays a text label.  This view does not support right-to-left text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.CheckBoxView",
  "description": "The CheckBoxView class is the default view for the org.apache.royale.html.CheckBox class. It displays a simple checkbox with an 'x' if checked, and a label on the right.  There are no styles or properties to configure the look of the 'x' or the position of the label relative to the checkbox as there are no equivalents in the standard HTML checkbox.  A more complex CheckBox could implement more view configuration.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.ComboBoxView",
  "description": "The ComboBoxView class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.DataGridColumnResizeBead",
  "description": ""},
{ "name": "mx.controls.beads.DataGridItemRendererInitializer",
  "description": "The DataGridItemRendererInitializer class initializes item renderers in mx DataGrid classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.DataGridLinesBeadForICollectionView",
  "description": ""},
{ "name": "mx.controls.beads.DataGridSelectableItemRendererClassFactory",
  "description": "The AdvancedDataGridItemRendererInitializer class initializes item renderers in tree classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.DataGridSortBead",
  "description": ""},
{ "name": "mx.controls.beads.DataGridView",
  "description": "The AlertView class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.DataProviderChangeNotifier",
  "description": "The DataProviderChangeNotifier notifies listeners when a selection model's dataProvider has changed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.DateFieldView",
  "description": "The NumericStepperView class overrides the Basic NumericStepperView and sets default sizes to better emulate Flex.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.HideComboPopupOnMouseDownBead",
  "description": "The HideComboPopupOnMouseDownBead can be used with ComboBox to make sure mouse down events close an open popup. For this bead to work the application needs to be sized to the window size. See org.apache.royale.core.BrowserResizeListener or BrowserResizeApplicationListener for a way to achieve this.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.3", "Royale 9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.ListItemRendererInitializer",
  "description": "The TreeItemRendererInitializer class initializes item renderers in tree classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.NumericStepperView",
  "description": "The NumericStepperView class overrides the Basic NumericStepperView and sets default sizes to better emulate Flex.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignorecoercion",
       "values": ["mx.core.UIComponent", "mx.core.UIComponent"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.RadioButtonView",
  "description": "The RadioButtonView class creates the visual elements of the org.apache.royale.html.RadioButton component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.ToolTipBead",
  "description": ""},
{ "name": "mx.controls.beads.TreeItemRendererInitializer",
  "description": "The TreeItemRendererInitializer class initializes item renderers in tree classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.TreeItemRendererMouseController",
  "description": "The TreeItemRendererMouseController class handles mouse events for item renderers in tree classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.controllers.AlertMouseController",
  "description": "The RadioButtonMouseController is the default controller for the radio button emulation class. It is responsible for creating the item click event",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.controllers.CascadingMenuSelectionMouseController",
  "description": "The CascadingMenuSelectionMouseController is the default controller for emulation cascading menu",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.controllers.MenuBarMouseController",
  "description": "MenuBar Mouse Controller",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.controllers.RadioButtonMouseController",
  "description": "The RadioButtonMouseController is the default controller for the radio button emulation class. It is responsible for creating the item click event",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.layouts.AdvancedDataGridLayout",
  "description": "The DataGridLayout class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.layouts.AdvancedDataGridVirtualListVerticalLayout",
  "description": "The AdvancedDataGridVirtualListVerticalLayout class.  It works a bit differently from other VirtualLayouts for JS because the div padding is applied to the container of these column lists.  The lists don't scroll, they only update the renderers for the viewport.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.layouts.DataGridHeaderLayout",
  "description": "The mx DataGridHeaderLayout class is for internal use only.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.controls.beads.layouts.DataGridLayout",
  "description": "The DataGridLayout class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.CascadingMenuModel",
  "description": ""},
{ "name": "mx.controls.beads.models.ComboBoxModel",
  "description": "MenuBar Mouse Controller",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.DataGridColumnICollectionViewModel",
  "description": "The DataGridColumnICollectionViewModel class is a selection model for AdvancedDataGridColumn which helps managing labelFunction",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.DataGridICollectionViewModel",
  "description": "MenuBar Mouse Controller",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.DataGridPresentationModel",
  "description": "DataGrid Presentation Model",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.ListPresentationModel",
  "description": "DataGrid Presentation Model",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.MenuBarModel",
  "description": "MenuBar Mouse Controller",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.SingleSelectionICollectionViewModel",
  "description": "The SingleSelectionICollectionViewModel class is a selection model for a dataProvider that is an ICollectionView.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.beads.models.SingleSelectionIListModel",
  "description": "The SingleSelectionIListViewModel class is a selection model for a dataProvider that is an IList. It assumes that items can be fetched from the dataProvider using dataProvider.getItemAt(index).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.buttonBarClasses.TextButtonDataGridColumnItemRenderer",
  "description": "The TextButtonDataGridColumnItemRenderer is the default renderer for mx.controls.DataGrid's columns",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.colorPickerClasses.SwatchPanel",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridButtonBar",
  "description": "The mx DataGridButtonBar class extends DataGridButtonBar to allow some specialized css",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridColumn",
  "description": "The DataGridColumn class describes a column in a DataGrid control. There is one DataGridColumn per displayable column, even if a column is hidden or off-screen. The data provider items of a DataGrid control can contain properties that are not displayed and, therefore, do not need a DataGridColumn. A DataGridColumn allows specification of the color and font of the text in a column; what kind of component displays the data for the column; whether the column is editable, sortable, or resizable; and the text for the column header.  <p><strong>Notes:</strong><ul> <li>A DataGridColumn only holds information about a column; it is not the parent of the item renderers in the column.</li> <li>If you specify a DataGridColumn class without a <code>dataField</code> property, you must specify a <code>sortCompareFunction</code> property. Otherwise, sort operations may cause run-time errors.</li></ul> </p>   <p>You use the <code>&lt;mx.DataGridColumn&gt;</code> tag to configure a column of a DataGrid control. You specify the <code>&lt;mx.DataGridColumn&gt;</code> tag as a child of the columns property in MXML. The <code>&lt;mx.DataGridColumn&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:DataGridColumn\\n <b>Properties </b>\\n dataField=&quot;<i>No default</i>&quot;\\n dataTipField=&quot;<i>No default</i>&quot;\\n dataTipFunction=&quot;<i>No default</i>&quot;\\n editable=&quot;true|false&quot;\\n editorDataField=&quot;text&quot;\\n editorHeightOffset=&quot;0&quot;\\n editorUsesEnterKey=&quot;false|true&quot;\\n editorWidthOffset=&quot;0&quot;\\n editorXOffset=&quot;0&quot;\\n editorYOffset=&quot;0&quot;\\n headerRenderer=&quot;DataGridItemRenderer&quot;\\n headerText=&quot;<i>No default</i>&quot;\\n headerWordWrap=&quot;undefined&quot;\\n imeMode=&quot;null&quot;\\n itemEditor=&quot;TextInput&quot;\\n itemRenderer=&quot;DataGridItemRenderer&quot;\\n labelFunction=&quot;<i>No default</i>&quot;\\n minWidth=&quot;20&quot;\\n rendererIsEditor=&quot;false|true&quot;\\n resizable=&quot;true|false&quot;\\n showDataTips=&quot;false|true&quot;\\n sortable=&quot;true|false&quot;\\n sortCompareFunction=&quot;<i>No default</i>&quot;\\n sortDescending=&quot;false|true&quot;\\n visible=&quot;true|false&quot;\\n width=&quot;100&quot;\\n wordWrap=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n backgroundColor=&quot;0xFFFFFF&quot;\\n color=&quot;<i>No default.</i>&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontFamily=&quot;<i>No default</i>&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;\\n fontSize=&quot;<i>No default</i>&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal|bold&quot;\\n headerStyleName=&quot;<i>No default</i>&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n textAlign=&quot;right|center|left&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n /&gt;\\n </pre> </p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.DataGrid", "mx.styles.CSSStyleDeclaration", "mx.controls.DataGrid", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridColumnList",
  "description": "The DataGridColumnList class is the List class used internally by DataGrid for each column.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridHeaderRenderer",
  "description": "The AdvancedDataGridHeaderRenderer class defines the default header renderer for a AdvancedDataGrid control. By default, the header renderer draws the text associated with each header in the list, and an optional sort arrow (if sorted by that column).  <p> By default, the custom header renderer uses the default sort item renderer defined by the AdvancedDataGridSortItemRenderer class. The sort item renderer controls the display of the sort icon and sort sequence number. You can specify a custom sort item renderer by using the <code>sortItemRenderer</code> property.</p>  <p>You can override the default header renderer by creating a custom header renderer. The only requirement for a custom header renderer is that it must include the size of the <code>sortItemRenderer</code> in any size calculations performed by an override of the <code>measure()</code> and <code>updateDisplayList()</code> methods.</p>  <p>You can customize when the sorting gets triggered by handling or dispatching the <code>AdvancedDataGridEvent.SORT</code> event.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.controls.advancedDataGridClasses.AdvancedDataGridSortItemRenderer", "mx.controls.AdvancedDataGrid", "mx.controls.advancedDataGridClasses.AdvancedDataGridSortItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridItemRenderer",
  "description": "The AdvancedDataGridItemRenderer class defines the default item renderer for a AdvancedDataGrid control. By default, the item renderer draws the text associated with each item in the grid.  <p>You can override the default item renderer by creating a custom item renderer.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.core.IDataRenderer", "mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid", "mx.core.IDataRenderer", "mx.controls.listClasses.IDropInListItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridListArea",
  "description": ""},
{ "name": "mx.controls.dataGridClasses.DataGridListAreaViewport",
  "description": ""},
{ "name": "mx.controls.dataGridClasses.DataGridListData",
  "description": "The DataGridListData class defines the data type of the <code>listData</code> property that is implemented by drop-in item renderers or drop-in item editors for the DataGrid control. All drop-in item renderers and drop-in item editors must implement the IDropInListItemRenderer interface, which defines the <code>listData</code> property.  <p>Although the properties of this class are writable, you should consider them to be read-only. They are initialized by the DataGrid class, and read by an item renderer or item editor. Changing these values can lead to unexpected results.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.listClasses.IDropInListItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridSelectableItemRendererBead",
  "description": "DataGridSelectableItemRendererBead may be a temporary solution for this support.  <p>While the properties of this class are writable, you should consider them to be read only. They are initialized by the AdvancedDataGrid class, and read by an item renderer or item editor. Changing these values can lead to unexpected results.</p>",
"tags": [
{  "tagName": "todo",
       "values": ["investigate: Alternating row colors could be done perhaps by nth-child-of-type in browser css...", "investigate: Alternating row colors could be done perhaps by nth-child-of-type in browser css..."]},
    {  "tagName": "see",
       "values": ["mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid", "mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.dataGridClasses.DataGridSingleSelectionMouseController",
  "description": "The TreeSingleSelectionMouseController class is a controller for org.apache.royale.html.Tree. This controller watches for selection events on the tree item renderers and uses those events to open or close nodes of the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.dateFieldClasses.DateFieldDateChooser",
  "description": "The DateFieldDateChooser is the DateChooser dropdown for a DateField.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.AdvancedListBase",
  "description": "The AdvancedListBase class is the base class for controls, such as the AdvancedDataGrid and OLAPDataGrid controls, that represent lists of items that can have one or more selected items and can scroll through the items.  Items are supplied using the <code>dataProvider</code> property and displayed via item renderers.  <p>In a model/view architecture, the AdvancedListBase subclass represent the view, and the data provider represents the model.</p>   <p>The AdvancedListBase class inherits all of the tag properties of its superclasses, and adds the following tag properties:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <b>Properties</b>\\n allowDragSelection=&quot;false|true&quot;\\n allowMultipleSelection=&quot;false|true&quot;\\n columnCount=&quot;4&quot;\\n columnWidth=&quot;NaN&quot;\\n dataProvider=&quot;null&quot;\\n dataTipField=&quot;label&quot;\\n dataTipFunction=&quot;null&quot;\\n dragEnabled=&quot;false|true&quot;\\n dragMoveEnabled=&quot;false|true&quot;\\n dropEnabled=&quot;false|true&quot;\\n iconField=&quot;null&quot;\\n iconFunction=&quot;null&quot;\\n itemRenderer=&quot;null&quot;\\n labelField=&quot;label&quot;\\n labelFunction=&quot;null&quot;\\n lockedColumnCount=0\\n lockedRowCount=0\\n menuSelectionMode=&quot;false|true&quot;\\n rowCount=&quot;-1&quot;\\n rowHeight=&quot;NaN&quot;\\n selectable=&quot;true|false&quot;\\n selectedIndex=&quot;-1&quot;\\n selectedIndices=&quot;null&quot;\\n selectedItem=&quot;null&quot;\\n selectedItems=&quot;null&quot;\\n showDataTips=&quot;false|true&quot;\\n variableRowHeight=&quot;false|true&quot;\\n wordWrap=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n alternatingItemColors=&quot;undefined&quot;\\n dataChangeEffect=&quot;undefined&quot;\\n dropIndicatorSkin=&quot;ListDropIndicator&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n paddingBottom=&quot;2&quot;\\n paddingLeft=&quot;2&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;2&quot;\\n rollOverColor=&quot;0xEEFEE6&quot;\\n selectionColor=&quot;0x7FCEFF&quot;\\n selectionDisabledColor=&quot;0xDDDDDD&quot;\\n selectionDuration=&quot;250&quot;\\n selectionEasingFunction=&quot;undefined&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x2B333C&quot;\\n useRollOver=&quot;true|false&quot;\\n verticalAlign=&quot;top|middle|bottom&quot;\\n \\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n itemClick=&quot;<i>No default</i>&quot;\\n itemDoubleClick=&quot;<i>No default</i>&quot;\\n itemRollOut=&quot;<i>No default</i>&quot;\\n itemRollOver=&quot;<i>No default</i>&quot;\\n itemClick=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.controls.AdvancedDataGrid", "mx.controls.OLAPDataGrid", "mx.collections.ICollectionView", "mx.controls.AdvancedDataGrid", "mx.controls.OLAPDataGrid"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.BaseListData",
  "description": "The BaseListData class defines the data type of the <code>listData</code> property implemented by drop-in item renderers or drop-in item editors. All drop-in item renderers and drop-in item editors must implement the IDropInListItemRenderer interface, which defines the <code>listData</code> property.  <p>The <code>listData</code> property is of type BaseListData, where the BaseListData class has three subclasses: DataGridListData, ListData, and TreeListData. The actual data type of the value of the <code>listData</code> property depends on the control using the drop-in item renderer or item editor. For a DataGrid control, the value is of type DataGridListData, for a List control the value is of type ListData, and for a Tree control, the value is of type TreeListData.</p>  <p>When used as a drop-in item renderer or drop-in item editor, Flex sets the <code>listData</code> property to a BaseListData-derived class containing information computed about the item in the data provider containing the data for the item.</p>  <p>While the properties of this class are writable, you should consider them to be read only. They are initialized by the list class, and read by an item renderer or item editor. Changing these values can lead to unexpected results.</p>  <p>The properties are marked bindable, but these properties do not actually do any change detection or send change events. The properties are changed as a whole by setting a new value for the <code>listData</code> property. The <code>change</code> event for the modification of the <code>listData</code> property updates all bindings.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.listClasses.IDropInListItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.DataGridListBase",
  "description": "The AdvancedListBase class is the base class for controls, such as the AdvancedDataGrid and OLAPDataGrid controls, that represent lists of items that can have one or more selected items and can scroll through the items.  Items are supplied using the <code>dataProvider</code> property and displayed via item renderers.  <p>In a model/view architecture, the AdvancedListBase subclass represent the view, and the data provider represents the model.</p>   <p>The AdvancedListBase class inherits all of the tag properties of its superclasses, and adds the following tag properties:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <b>Properties</b>\\n allowDragSelection=&quot;false|true&quot;\\n allowMultipleSelection=&quot;false|true&quot;\\n columnCount=&quot;4&quot;\\n columnWidth=&quot;NaN&quot;\\n dataProvider=&quot;null&quot;\\n dataTipField=&quot;label&quot;\\n dataTipFunction=&quot;null&quot;\\n dragEnabled=&quot;false|true&quot;\\n dragMoveEnabled=&quot;false|true&quot;\\n dropEnabled=&quot;false|true&quot;\\n iconField=&quot;null&quot;\\n iconFunction=&quot;null&quot;\\n itemRenderer=&quot;null&quot;\\n labelField=&quot;label&quot;\\n labelFunction=&quot;null&quot;\\n lockedColumnCount=0\\n lockedRowCount=0\\n menuSelectionMode=&quot;false|true&quot;\\n rowCount=&quot;-1&quot;\\n rowHeight=&quot;NaN&quot;\\n selectable=&quot;true|false&quot;\\n selectedIndex=&quot;-1&quot;\\n selectedIndices=&quot;null&quot;\\n selectedItem=&quot;null&quot;\\n selectedItems=&quot;null&quot;\\n showDataTips=&quot;false|true&quot;\\n variableRowHeight=&quot;false|true&quot;\\n wordWrap=&quot;false|true&quot;\\n \\n <b>Styles</b>\\n alternatingItemColors=&quot;undefined&quot;\\n dataChangeEffect=&quot;undefined&quot;\\n dropIndicatorSkin=&quot;ListDropIndicator&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusRoundedCorners=&quot;tl tr bl br&quot;\\n paddingBottom=&quot;2&quot;\\n paddingLeft=&quot;2&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;2&quot;\\n rollOverColor=&quot;0xEEFEE6&quot;\\n selectionColor=&quot;0x7FCEFF&quot;\\n selectionDisabledColor=&quot;0xDDDDDD&quot;\\n selectionDuration=&quot;250&quot;\\n selectionEasingFunction=&quot;undefined&quot;\\n textRollOverColor=&quot;0x2B333C&quot;\\n textSelectedColor=&quot;0x2B333C&quot;\\n useRollOver=&quot;true|false&quot;\\n verticalAlign=&quot;top|middle|bottom&quot;\\n \\n <b>Events</b>\\n change=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n itemClick=&quot;<i>No default</i>&quot;\\n itemDoubleClick=&quot;<i>No default</i>&quot;\\n itemRollOut=&quot;<i>No default</i>&quot;\\n itemRollOver=&quot;<i>No default</i>&quot;\\n itemClick=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.controls.AdvancedDataGrid", "mx.controls.OLAPDataGrid", "mx.collections.ICollectionView", "mx.controls.AdvancedDataGrid", "mx.controls.OLAPDataGrid"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.controls.listClasses.DataItemRendererFactoryForICollectionViewData",
  "description": "The DataItemRendererFactoryForHierarchicalData class reads a HierarchicalData object and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.DataItemRendererFactoryForIListData",
  "description": "The DataItemRendererFactoryForHierarchicalData class reads a HierarchicalData object and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.IDropInListItemRenderer",
  "description": "The interface for &quot;drop-in&quot; item renderers.  Most IListItemRenderers are not &quot;drop-ins&quot;.  They are expecting to use a particular field of the data provider item.  For example, they may assign the &quot;lastName&quot; property of the item to a Label's <code>text</code> property.  This is easy to write using data-binding, but has the negative consequence that the renderer cannot be re-used in another column of a DataGrid or another List with different fields. IDropInListItemRenderer allows a renderer to be re-used.  The list classes will pass more information to the renderer so that it can determine which field to use at run-time.  <p>Components that you want to use as drop-in item renderers or drop-in item editors  must implement the IDropInListItemRenderer interface. Many Flex component implement this interface, and therefore are usable as drop-in item renderers and drop-in item editors in any column or list.</p>  <p>Drop-in item renderers or drop-in item editors also must implement the IDataRenderer interface to define the <code>data</code> property.</p>  <p>When a component is used as a drop-in item renderer or drop-in item editor, Flex initializes the <code>listData</code> property of the component with the appropriate data from the list control. The component can then use the <code>listData</code> property to initialize the <code>data</code> property of the drop-in item renderer or drop-in item editor.</p>  <p>The <code>listData</code> property is of type BaseListData, where the BaseListData class has four subclasses: DataGridListData, ListData, TreeListData, and MenuListData. The actual data type of the value of the <code>listData</code> property depends on the control using the drop-in item renderer or item editor. For a DataGrid control, the value is of type DataGridListData, for a List control the value is of type ListData, for a Tree control, the value is of type TreeListData, and for a Menu control, the value is of type MenuListData..</p>  <p>The following example shows the setter method for the <code>data</code> property for the NumericStepper control that initializes NumericStepper's <code>value</code> property based on the value of the <code>listData</code> property:</p>  <pre>\\n public function set data(value:Object):void\\n {\\n _data = value;\\n \\n this.value = _listData ? parseFloat(_listData.label) : Number(_data);\\n \\n dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE));\\n }\\n </pre>  <p>In the example above, the NumericStepper control ignores the <code>data</code> property  when setting NumericStepper's <code>value</code> property, and uses the <code>listData</code> property instead.</p>  <p>To implement the IDropInListItemRenderer interface, you define a setter and getter method to implement the <code>listData</code> property. Typically, the setter method writes the value of the <code>listData</code> property to an internal variable. The list class always assigns this property then sets the data provider item in the <code>data</code> property.</p>  <p>Notice that the setter method for the <code>listData</code> property does not dispatch an event. This is because the list classes always set <code>listData</code>, then set the <code>data</code> property. Setting the <code>data</code> property also dispatches the <code>dataChange</code> event. You never set <code>listData</code> on its own, so it does not need to dispatch its own event. </p>  <p>The <code>data</code> setter method could call the <code>invalidateProperties()</code> method if it did something that required the control to update itself. It would then be up to the component developer to write a <code>commitProperties()</code> method to determine that <code>listData</code> was modified, and handle it accordingly. </p>  <p>The getter method returns the current value of the internal variable,  as the following example shows:</p>  <pre>\\n // Internal variable for the property value.\\n private var _listData:BaseListData;\\n \\n // Make the listData property bindable.\\n [Bindable(&quot;dataChange&quot;)]\\n \\n // Define the getter method.\\n public function get listData():BaseListData\\n {\\n return _listData;\\n }\\n \\n // Define the setter method,\\n public function set listData(value:BaseListData):void\\n {\\n _listData = value;\\n }\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.BaseListData", "mx.core.IDataRenderer", "mx.controls.listClasses.BaseListData", "mx.core.IDataRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.IListItemRenderer",
  "description": "Item renderers and item editors for list components must implement the IListItemRenderer interface. The IListItemRenderer interface is a set of several other interfaces. It does not define any new class methods or properties.  <p>The set of interfaces includes the following: IDataRenderer, IFlexDisplayObject, ILayoutManagerClient, ISimpleStyleClient, IUIComponent. The UIComponent class implements all of these interfaces, except the IDataRenderer interface. Therefore, if you create a custom item renderer or item editor as a subclass  of the UIComponent class, you only have to implement the IDataRenderer interface and then you can add to the class definition that the class implements IDataRenderer and IListItemRenderer.</p>  <p>IListItemRenderers are generally dedicated to displaying a particular field from the data provider item and cannot be re-used in other DataGrid columns or in other lists with different fields.  If you want to create a renderer that can be re-used you can also implement IDropInListItemRenderer, and the list will pass more data to the renderer that allows the renderer to be re-used with different data fields.</p>  <p>Item renderers and item editors are passed data from a list class' data provider using the IDataRenderer interface. Renderers and editors that implement the IDropInListItemRenderer interface get other information from the list class. The item renderer or item editor uses one or both pieces of information to display the data.</p>  <p>The renderers and editors are often recycled. Once they are created, they may be used again simply by being given a new data and optional <code>listData</code> property. Therefore in your implementation you must make sure that component properties are not assumed to contain their initial, or default values.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.ListBase",
  "description": "",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.controls.listClasses.ListBaseSelectionData",
  "description": "Records used by list classes to keep track of what is selected. Each selected item is represented by an instance of this class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.ListBase#selectedData", "mx.controls.listClasses.ListBase#selectedData"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.ListData",
  "description": "The ListData class defines the data type of the <code>listData</code> property implemented by drop-in item renderers or drop-in item editors for the List control. All drop-in item renderers and drop-in item editors must implement the IDropInListItemRenderer interface, which defines the <code>listData</code> property.  <p>While the properties of this class are writable, you should consider them to be read only. They are initialized by the List class, and read by an item renderer or item editor. Changing these values can lead to unexpected results.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.listClasses.IDropInListItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.ListItemRenderer",
  "description": "The ListItemRenderer is the default renderer for mx.controls.List",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.ListRowInfo",
  "description": "Used by the list-based classes to store information about their IListItemRenderers.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.ListBase#rowInfo", "mx.controls.listClasses.ListBase#rowInfo"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.ListSingleSelectionMouseController",
  "description": "The TreeSingleSelectionMouseController class is a controller for org.apache.royale.html.Tree. This controller watches for selection events on the tree item renderers and uses those events to open or close nodes of the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.ListVerticalLayout",
  "description": "The ListVerticalLayout class is a simple layout bead.  It takes the set of children and lays them out vertically in one column, using absolute positioning",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.VirtualDataItemRendererFactoryForICollectionViewData",
  "description": "The DataItemRendererFactoryForHierarchicalData class reads a HierarchicalData object and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.VirtualDataItemRendererFactoryForIListData",
  "description": "The DataItemRendererFactoryForHierarchicalData class reads a HierarchicalData object and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.listClasses.VirtualListVerticalLayout",
  "description": "The VerticalLayout class is a simple layout bead.  It takes the set of children and lays them out vertically in one column, separating them according to CSS layout rules for margin and horizontal-align styles.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.menuClasses.CascadingMenuItemRenderer",
  "description": "The ListItemRenderer is the default renderer for mx.controls.List",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.menuClasses.CascadingMenuWithOnScreenCheck",
  "description": "The CascadingMenuWithOnScreenCheck handles cascading menus in MXRoyale",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.menuClasses.IMenuDataDescriptor",
  "description": "The IMenuDataDescriptor interface defines the interface that a dataDescriptor for a Menu or MenuBar control must implement. The interface provides methods for parsing and modifyng a collection of data that is displayed by a Menu or MenuBar control.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.ICollectionView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.menuClasses.MenuBarItemRenderer",
  "description": "The ListItemRenderer is the default renderer for mx.controls.List",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.richTextEditorClasses.ToolBar",
  "description": "The ToolBar container lays out its children in a single horizontal row. If the width of the container is less than the measured width, the children wrap to the next line. While wrapping, any VRule controls (separators) at the end of a row or the beginning of a row are not drawn.  <p><b>MXML Syntax</b></p>  <p>The <code>&lt;mx:ToolBar&gt;</code> tag inherits all the properties of its parent classes but adds no new ones.</p>  <pre>\\n &lt;mx:ToolBar\\n ...\\n <i>child tags</i>\\n ...\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ToolBarExample.mxml", "examples/ToolBarExample.mxml"]},
    {  "tagName": "private",
       "values": []},
    {  "tagName": "see",
       "values": ["mx.containers.VBox", "mx.containers.VBox"]}  ]},
{ "name": "mx.controls.textClasses.TextRange",
  "description": "The TextRange class provides properties that select and format a range of text in the Label, Text, TextArea, TextEditor, and RichTextEditor controls.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.Label", "mx.controls.RichTextEditor", "mx.controls.Text", "mx.controls.TextArea", "mx.controls.TextInput", "flash.text.TextFormatAlign", "mx.controls.Label", "mx.controls.RichTextEditor", "mx.controls.Text", "mx.controls.TextArea", "mx.controls.TextInput", "flash.text.TextFormatAlign"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.treeClasses.DataItemRendererFactoryForICollectionViewHierarchicalData",
  "description": "The DataItemRendererFactoryForHierarchicalData class reads a HierarchicalData object and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.treeClasses.DefaultDataDescriptor",
  "description": "The DefaultDataDescriptor class provides a default implementation for accessing and manipulating data for use in controls such as Tree and Menu.  This implementation handles e4x XML and object nodes in similar but different ways. See each method description for details on how the method accesses values in nodes of various types.  This class is the default value of the Tree, Menu, MenuBar, and PopUpMenuButton control <code>dataDescriptor</code> properties.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.treeClasses.ITreeDataDescriptor", "mx.controls.menuClasses.IMenuDataDescriptor", "mx.controls.Menu", "mx.controls.MenuBar", "mx.controls.PopUpMenuButton", "mx.controls.Tree", "mx.controls.treeClasses.ITreeDataDescriptor", "mx.controls.menuClasses.IMenuDataDescriptor", "mx.controls.Menu", "mx.controls.MenuBar", "mx.controls.PopUpMenuButton", "mx.controls.Tree"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.treeClasses.HierarchicalCollectionView",
  "description": "This class provides a hierarchical view of a standard collection. It is used by Tree to parse user data.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.controls.treeClasses.HierarchicalViewCursor",
  "description": "This class provides a heirarchical view (a tree-like) view of a standard collection. The collection that this Cursor walks across need not be heirarchical but may be flat. This class delegates to the ITreeDataDescriptor for information regarding the tree structure of the data it walks across.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "see",
       "values": ["HierarchicalCollectionView", "HierarchicalCollectionView"]}  ]},
{ "name": "mx.controls.treeClasses.ITreeDataDescriptor",
  "description": "Interface providing methods for parsing and adding nodes to a collection of data that is displayed by a Tree control.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.ICollectionView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.treeClasses.ITreeDataDescriptor2",
  "description": "The ITreeDataDescriptor2 Interface defines methods for parsing and adding nodes to a collection of data that is displayed by a Tree control.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.ICollectionView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.treeClasses.TreeItemRenderer",
  "description": "The TreeItemRenderer class defines the default item renderer for a Tree control. By default, the item renderer draws the text associated with each item in the tree, an optional icon, and an optional disclosure icon.  <p>You can override the default item renderer by creating a custom item renderer.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.Tree", "mx.core.IDataRenderer", "mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.Tree", "mx.core.IDataRenderer", "mx.controls.listClasses.IDropInListItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.controls.treeClasses.TreeListData",
  "description": "The TreeListData class contains information that Tree item renderers may find useful when displaying the data for a node in the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.controls.treeClasses.TreeSingleSelectionMouseController",
  "description": "The TreeSingleSelectionMouseController class is a controller for org.apache.royale.html.Tree. This controller watches for selection events on the tree item renderers and uses those events to open or close nodes of the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.Application",
  "description": "Flex defines a default, or Application, container that lets you start adding content to your application without explicitly defining another container. Flex creates this container from the <code>&lt;mx:Application&gt;</code> tag, the first tag in an MXML application file. While you might find it convenient to use the Application container as the only  container in your application, in most cases you explicitly define at least one more container before you add any controls to your application.  <p>Applications support a predefined plain style that sets a white background, left alignment, and removes all margins. To use this style, do the following:</p>  <pre>\\n &lt;mx:Application styleName=&quot;plain&quot; /&gt;\\n </pre>  <p>This is equivalent to setting the following style attributes:</p>  <pre>\\n backgroundColor=&quot;0xFFFFFF&quot;\\n horizontalAlign=&quot;left&quot;\\n paddingLeft=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n </pre>   <p>The <code>&lt;mx:Application&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Application\\n <strong>Properties</strong>\\n application=&quot;<i>No default</i>&quot;\\n controlBar=&quot;null&quot;\\n frameRate=&quot;24&quot;\\n historyManagementEnabled=&quot;true|false&quot;\\n layout=&quot;vertical|horizontal|absolute&quot;\\n pageTitle&quot;<i>No default</i>&quot;\\n preloader=&quot;<i>No default</i>&quot;\\n resetHistory=&quot;false|true&quot;\\n scriptRecursionLimit=&quot;1000&quot;\\n scriptTimeLimit=&quot;60&quot;\\n usePreloader=&quot;true|false&quot;\\n viewSourceURL=&quot;&quot;\\n xmlns:<i>No default</i>=&quot;<i>No default</i>&quot;\\n \\n <strong>Styles</strong>\\n backgroundGradientAlphas=&quot;[ 1.0, 1.0 ]&quot;\\n backgroundGradientColors=&quot;undefined&quot;\\n horizontalAlign=&quot;center|left|right&quot;\\n horizontalGap=&quot;8&quot;\\n modalTransparency=&quot;0.5&quot;\\n modalTransparencyBlur=&quot;3&quot;\\n modalTransparencyColor=&quot;#DDDDDD&quot;\\n modalTransparencyDuration=&quot;100&quot;\\n paddingBottom=&quot;24&quot;\\n paddingTop=&quot;24&quot;\\n verticalAlign=&quot;top|bottom|middle&quot;\\n verticalGap=&quot;6&quot;\\n \\n <strong>Events</strong>\\n applicationComplete=&quot;<i>No default</i>&quot;\\n error=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleApplicationExample.mxml", "examples/SimpleApplicationExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.managers.CursorManager", "mx.managers.LayoutManager", "mx.managers.SystemManager", "flash.events.EventDispatcher", "mx.managers.CursorManager", "mx.managers.LayoutManager", "mx.managers.SystemManager", "flash.events.EventDispatcher"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.ClassFactory",
  "description": "The ClassFactory class is the basic implementation of an IFactory that will generate multiple instances of item renderers or custom classes.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.Container",
  "description": "The Container class is an abstract base class for components that controls the layout characteristics of child components. You do not create an instance of Container in an application. Instead, you create an instance of one of Container's subclasses, such as Canvas or HBox.  <p>The Container class contains the logic for scrolling, clipping, and dynamic instantiation. It contains methods for adding and removing children. It also contains the <code>getChildAt()</code> method, and the logic for drawing the background and borders of containers.</p>   Flex Framework containers inherit the following attributes from the Container class:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <strong>Properties</strong>\\n autoLayout=&quot;true|false&quot;\\n clipContent=&quot;true|false&quot;\\n creationIndex=&quot;undefined&quot;\\n creationPolicy=&quot;auto|all|queued|none&quot;\\n defaultButton=&quot;<i>No default</i>&quot;\\n horizontalLineScrollSize=&quot;5&quot;\\n horizontalPageScrollSize=&quot;0&quot;\\n horizontalScrollBar=&quot;null&quot;\\n horizontalScrollPolicy=&quot;auto|on|off&quot;\\n horizontalScrollPosition=&quot;0&quot;\\n icon=&quot;undefined&quot;\\n label=&quot;&quot;\\n verticalLineScrollSize=&quot;5&quot;\\n verticalPageScrollSize=&quot;0&quot;\\n verticalScrollBar=&quot;null&quot;\\n verticalScrollPolicy=&quot;auto|on|off&quot;\\n verticalScrollPosition=&quot;0&quot;\\n \\n <strong>Styles</strong>\\n backgroundAlpha=&quot;1.0&quot;\\n backgroundAttachment=&quot;scroll&quot;\\n backgroundColor=&quot;undefined&quot;\\n backgroundDisabledColor=&quot;undefined&quot;\\n backgroundImage=&quot;undefined&quot;\\n backgroundSize=&quot;auto&quot;\\n <i>    For the Application container only,</i> backgroundSize=&quot;100%&quot;\\n barColor=&quot;undefined&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n borderSides=&quot;left top right bottom&quot;\\n borderSkin=&quot;mx.skins.halo.HaloBorder&quot;\\n borderStyle=&quot;inset&quot;\\n borderThickness=&quot;1&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;0&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n disbledOverlayAlpha=&quot;undefined&quot;\\n dropShadowColor=&quot;0x000000&quot;\\n dropShadowEnabled=&quot;false&quot;\\n fontAntiAliasType=&quot;advanced&quot;\\n fontfamily=&quot;Verdana&quot;\\n fontGridFitType=&quot;pixel&quot;\\n fontSharpness=&quot;0&quot;&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal&quot;\\n fontThickness=&quot;0&quot;\\n fontWeight=&quot;normal&quot;\\n horizontalScrollBarStyleName=&quot;undefined&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n shadowDirection=&quot;center&quot;\\n shadowDistance=&quot;2&quot;\\n textAlign=&quot;left&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n verticalScrollBarStyleName=&quot;undefined&quot;\\n \\n <strong>Events</strong>\\n childAdd=&quot;<i>No default</i>&quot;\\n childIndexChange=&quot;<i>No default</i>&quot;\\n childRemove=&quot;<i>No default</i>&quot;\\n dataChange=&quot;<i>No default</i>&quot;\\n scroll=&quot;<i>No default</i>&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/mx:<i>tagname</i>&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.ContainerCreationPolicy",
  "description": "The ContainerCreationPolicy class defines the constant values for the <code>creationPolicy</code> property of the Container class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.Container#creationPolicy", "mx.core.Container#creationPolicy"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.ContainerLayout",
  "description": "The ContainerLayout class defines the constant values for the <code>layout</code> property of container classes.",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.Panel#layout", "mx.core.Application#layout", "mx.containers.Panel#layout", "mx.core.Application#layout"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.DragSource",
  "description": "The DragSource class contains the data being dragged. The data can be in multiple formats, depending on the type of control that initiated the drag.  <p>Each format of data is identified with a string. The <code>hasFormat()</code> method is used to determine if the object has data in that format. The <code>dataForFormat()</code> method is used to retrieve the data in the specified format.</p>  <p>Data can be added directly using the <code>addData()</code> method, or indirectly using the <code>addHandler()</code> method. The <code>addHandler()</code> method registers a callback that will be called if the data is requested. This is useful for adding data in a non-native format that may require large computations or conversions. For example, if you have raw sound data you can add an MP3 format handler. The MP3 conversion will only be done if the MP3 data is requested.</p>",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.EdgeMetrics",
  "description": "The EdgeMetrics class specifies the thickness, in pixels, of the four edge regions around a visual component.  <p>The following Flex properties have values that are EdgeMetrics objects:</p>  <ul> <li>The <code>borderMetrics</code> property of the mx.core.Container and mx.skins.Border classes includes only the border in the calculations of the property values of the EdgeMetrics object.</li>  <li>The <code>viewMetrics</code> property of the mx.core.Container class, and of subclasses of the Container class, includes possible scrollbars and non-content elements -- such as a Panel container's header area and the area for a ControlBar component -- in the calculations of the  property values of the EdgeMetrics object.</li>  <li>The <code>viewMetricsAndPadding</code> property of the mx.core.Container class includes the items listed for the <code>viewMetrics</code> property, plus the any areas defined by the margins of the container in the calculations of the property values of the EdgeMetrics object.</li> </ul>  <p>These three properites all return a reference to the same EdgeMetrics object that the Container is using for its measurement and layout; they do not return a copy of this object. If you need a copy, call the <code>clone()</code> method.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.Container", "mx.skins.Border", "mx.containers.Panel", "mx.core.Container", "mx.skins.Border", "mx.containers.Panel"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.EventPriority",
  "description": "The EventPriority class defines constant values for the <code>priority</code> argument of the <code>addEventListener()</code> method of EventDispatcher.  <p>The higher the number, the higher the priority of the event listener. All listeners with priority <code>N</code> will be processed before listeners of priority <code>N - 1</code>. If two or more listeners share the same priority, they are processed in the order in which they were added.</p>  <p>Priorities can be positive, 0, or negative. The default priority is 0.</p>  <p>You should not write code that depends on the numeric values of these constants. They are subject to change in future versions of Flex.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.FlexCSSStyles",
  "description": "The Flex styles holder.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.core.FlexGlobals",
  "description": "A class that contains variables that are global to all applications within the same ApplicationDomain.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.FlexVersion",
  "description": "This class controls the backward-compatibility of the framework. With every new release, some aspects of the framework such as behaviors, styles, and default settings, are changed which can affect your application. By setting the <code>compatibilityVersion</code> property, the behavior can be changed to match previous releases. This is a 'global' flag; you cannot apply one version to one component or group of components and a different version to another component or group of components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IChildList",
  "description": "The IChildList interface defines the properties and methods for accessing and manipulating child lists, which are subsets of a DisplayObjectContainer's children.  <p>As an example, consider the Container class. It overrides DisplayObjectContainer APIs such as the <code>numChildren</code> and <code>getChildAt()</code> methods to access only &quot;content&quot; children, which are the controls and other containers that you put inside it. But a Container can also have additional children created automatically by the framework, such as a background or border skin and scrollbars. So Container exposes a property called <code>rawChildren</code> of type IChildList, which lets you access all its children, not just the content children.</p>  <p>As another example, the SystemManager class is a DisplayObjectContainer whose children are partitioned into various layers: normal children like the Application are on the bottom, popups above them, tooltips above them, and cursors on the top. The SystemManager class has properties named <code>popUpChildren</code>, <code>toolTipChildren</code>, and <code>cursorChildren</code> which let you access these layers, and the type of each of these properties is IChildList. Therefore, you can count the number of popups using the <code>systemManager.popUpChildren.numChildren</code> property, insert another DisplayObject into the tooltip layer using the <code>systemManager.toolTipChildren.addChild()</code> method, and so on.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.Container#rawChildren", "mx.managers.SystemManager#rawChildren", "mx.managers.SystemManager#popUpChildren", "mx.managers.SystemManager#toolTipChildren", "mx.managers.SystemManager#cursorChildren", "mx.core.Container#rawChildren", "mx.managers.SystemManager#rawChildren", "mx.managers.SystemManager#popUpChildren", "mx.managers.SystemManager#toolTipChildren", "mx.managers.SystemManager#cursorChildren"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IDataRenderer",
  "description": "The IDataRenderer interface defines the interface for components that have a <code>data</code> property.  <p>Components that are used in an item renderer or item editor in a list control (such as the List, HorizontalList, TileList, DataGrid, and Tree controls), or as renderers in a chart are passed the data to render or edit by using the <code>data</code> property. The component must implement IDataRenderer so that the host components can pass this information. All Flex containers and many Flex components implement IDataRenderer and the <code>data</code> property.</p>  <p>In a list control, Flex sets the <code>data</code> property of an item renderer or item editor to the element in the data provider that corresponds to the item being rendered or edited. For a DataGrid control, the <code>data</code> property contains the data provider element for the entire row of the DataGrid control, not just for the item.</p>  <p>To implement this interface, you define a setter and getter method to implement the <code>data</code> property. Typically, the setter method writes the value of the <code>data</code> property to an internal variable and dispatches a <code>dataChange</code> event, and the getter method returns the current value of the internal variable, as the following example shows:</p>  <pre>\\n // Internal variable for the property value.\\n private var _data:Object;\\n \\n // Make the data property bindable.\\n [Bindable(&quot;dataChange&quot;)]\\n \\n // Define the getter method.\\n public function get data():Object {\\n return _data;\\n }\\n \\n // Define the setter method, and dispatch an event when the property\\n // changes to support data binding.\\n public function set data(value:Object):void {\\n _data = value;\\n \\n dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE));\\n }\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IFactory",
  "description": "The IFactory interface defines the interface that factory classes such as ClassFactory must implement. An object of type IFactory is a &quot;factory object&quot; which Flex uses to generate multiple instances of another class, each with identical properties.  <p>For example, a DataGridColumn has an <code>itemRenderer</code> of type IFactory; it calls <code>itemRenderer.newInstance()</code> to create the cells for a particular column of the DataGrid.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.ClassFactory", "mx.core.ClassFactory"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IFlexDisplayObject",
  "description": "The IFlexDisplayObject interface defines the interface for skin elements. At a minimum, a skin must be a DisplayObject and implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IFlexModule",
  "description": "The IFlexModule interface is used as an optional contract with IFlexModuleFactory. When an IFlexModule instance is created with the IFlexModuleFactory, the factory stores a reference to itself after creation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IFlexModuleFactory",
  "description": "The IFlexModuleFactory interface represents the contract expected for bootstrapping Flex applications and dynamically loaded modules.  <p>Calling the <code>info()</code> method is legal immediately after the <code>complete</code> event is dispatched.</p>  <p>A well-behaved module dispatches a <code>ready</code> event when it is safe to call the <code>create()</code> method.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IIMESupport",
  "description": "The IIMESupport interface defines the interface for any component that supports IME (input method editor). IME is used for entering characters in Chinese, Japanese, and Korean.",
"tags": [
{  "tagName": "see",
       "values": ["flash.system.IME", "flash.system.IME"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IInvalidating",
  "description": "The IInvalidating interface defines the interface for components that use invalidation to do delayed -- rather than immediate -- property commitment, measurement, drawing, and layout.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.ILayoutElement",
  "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", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IMXMLObject",
  "description": "The IMXMLObject interface defines the APIs that a non-visual component must implement in order to work properly with the MXML compiler. Currently, the only supported method is the <code>initialized()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.INavigatorContent",
  "description": "The INavigatorContent interface defines the interface that a container must implement to be used as the child of a navigator container, such as the ViewStack, TabNavigator, and Accordion navigator containers.",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.Accordion", "mx.containers.TabNavigator", "mx.containers.ViewStack", "mx.containers.Accordion", "mx.containers.TabNavigator", "mx.containers.ViewStack"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IProgrammaticSkin",
  "description": "The IProgrammaticSkin interface defines the interface that skin classes must implement if they use the <code>name</code> property skin interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IPropertyChangeNotifier",
  "description": "The <code>IPropertyChangeNotifier</code> interface defines a marker interface. Classes that support this interface declare support for event propagation in a specialized manner. Classes that implement this interface must dispatch events for each property of this class and any nested classes publicly exposed as properties. For those properties that are anonymous (complex and not strongly typed), implementing classes provide custom support or directly use the ObjectProxy class. Implementors of this interface should use the <code>PropertyChangeEvent.createUpdateEvent()</code> method to construct an appropriate update event for dispatch. <code><pre>\\n \\n function set myProperty(value:Object):void\\n {\\n var oldValue:IPropertyChangeNotifier = _myProperty;\\n var newValue:IPropertyChangeNotifier = value;\\n \\n // Need to ensure to dispatch changes on the new property.\\n // Listeners use the source property to determine which object\\n // actually originated the event.\\n // In their event handler code, they can tell if an event has been\\n // propagated from deep within the object graph by comparing\\n // event.target and event.source. If they are equal, then the property\\n // change is at the surface of the object. If they are not equal, the\\n // property change is somewhere deeper in the object graph.\\n newValue.addEventListener(\\n PropertyChangeEvent.PROPERTY_CHANGE,\\n dispatchEvent);\\n \\n // need to stop listening for events from the old property\\n oldValue.removeEventListener(\\n PropertyChangeEvent.PROPERTY_CHANGE,\\n dispatchEvent);\\n \\n _myProperty = newValue;\\n \\n // now notify anyone that is listening\\n if (dispatcher.hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE))\\n {\\n var event:PropertyChangeEvent =\\n PropertyChangeEvent.createUpdateEvent(\\n this,\\n &quot;myProperty&quot;,\\n newValue,\\n oldValue);\\n dispatchEvent(event);\\n }\\n }\\n \\n \\n </pre></code>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "example",
       "values": []},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.ISelectableList",
  "description": "The ISelectableList interface indicates that the implementor is an IList element that supports a <code>selectedIndex</code> property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.ITextFieldFactory",
  "description": "Interface to create instances of TextField and FTETextField. These are re-used so that there are no more than one of each per module factory.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.core.ITextInput",
  "description": "Defines an interface for a single-line text field that is optionally editable.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IToolTip",
  "description": "The IToolTip interface defines the API that tooltip-like components must implement in order to work with the ToolTipManager. The ToolTip class implements this interface.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.ToolTip", "mx.managers.ToolTipManager", "mx.controls.ToolTip", "mx.managers.ToolTipManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IUIComponent",
  "description": "The IUIComponent interface defines the basic set of APIs that you must implement to create a child of a Flex container or list.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IUID",
  "description": "The IUID interface defines the interface for objects that must have Unique Identifiers (UIDs) to uniquely identify the object. UIDs do not need to be universally unique for most uses in Flex. One exception is for messages send by data services.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IUITextField",
  "description": "The IUITextField interface defines the basic set of APIs for UITextField instances.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IVisualElement",
  "description": "The IVisualElement interface defines the minimum properties and methods required for a visual element to be laid out and displayed in a Spark container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.IVisualElementContainer",
  "description": "The IVisualElementContainer interface defines the minimum properties and methods required for a container to manage Spark components for display.  <p>Note that the Spark SkinnableDataContainer and DataGroup containers do not implement this interface. Those containers manage their children through the <code>dataProvider</code> property.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.IVisualElement", "mx.core.IVisualElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.InteractionMode",
  "description": "The InteractionMode class defines the alues for the <code>interactionMode</code> property of the UIComponent class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.Container", "mx.core.ScrollControlBase", "mx.core.Container", "mx.core.ScrollControlBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.Keyboard",
  "description": "This class holds constants for special keys See: See:",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.LayoutDirection",
  "description": "The LayoutDirection class defines the constant values for the <code>layoutDirection</code> style of an IStyleClient and the <code>layoutDirection</code> property of an ILayoutDirectionElement.  Left-to-right layoutDirection is typically used with Latin-style scripts. Right-to-left layoutDirection is used with scripts such as Arabic or Hebrew.  If an IStyleClient, set the layoutDirection style to undefined to inherit the layoutDirection from its ancestor.  If an ILayoutDirectionElement, set the layoutDirection property to null to inherit the layoutDirection from its ancestor.",
"tags": [
{  "tagName": "see",
       "values": ["mx.styles.IStyleClient", "mx.core.ILayoutDirectionElement", "mx.styles.IStyleClient", "mx.core.ILayoutDirectionElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.1", "Flex 4.1"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.LayoutElementUIComponentUtils",
  "description": "Helper class to implement the ILayoutElement interface for IUIComponent classes.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.core.ScrollControlBase",
  "description": "The ScrollControlBase class is the base class for controls with scroll bars. The user interacts with the scroll bar or the developer accesses methods and properties that alter the viewable area. The ScrollControlBase takes a single child object and positions and masks or sizes that object to display the viewable content. All items to be scrolled must be children of that content object   <p>The <code>&lt;ScrollControlBase&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <b>Properties</b>\\n border=&quot;<i>object of border skin style</i>&quot;\\n horizontalScrollPolicy=&quot;off|on|auto&quot;\\n horizontalScrollPosition=&quot;0&quot;\\n liveScrolling=&quot;true|false&quot;\\n maxHorizontalScrollPosition=&quot;NaN&quot;\\n maxVerticalScrollPosition=&quot;NaN&quot;\\n scrollTipFunction=&quot;undefined&quot;\\n showScrollTips=&quot;false|true&quot;\\n verticalScrollPolicy=&quot;auto|off|on&quot;\\n verticalScrollPosition=&quot;0&quot;\\n <b>Styles</b>\\n backgroundAlpha=&quot;1.0&quot;\\n backgroundColor=&quot;undefined&quot;\\n backgroundImage=&quot;undefined&quot;\\n backgroundSize=&quot;auto&quot;\\n borderColor=&quot;0xAAB3B3&quot;\\n borderSides=&quot;left top right bottom&quot;\\n borderSkin=&quot;ClassReference('mx.skins.halo.HaloBorder')&quot;\\n borderStyle=&quot;inset&quot;\\n borderThickness=&quot;1&quot;\\n color=&quot;0x0B333C&quot;\\n cornerRadius=&quot;0&quot;\\n disabledColor=&quot;0xAAB3B3&quot;\\n dropShadowColor=&quot;0x000000&quot;\\n dropShadowEnabled=&quot;false&quot;\\n fontFamily=&quot;Verdana&quot;\\n fontSize=&quot;10&quot;\\n fontStyle=&quot;normal|italic&quot;\\n fontWeight=&quot;normal|bold&quot;\\n horizontalScrollBarStyleName=&quot;&quot;\\n leading=&quot;2&quot;\\n shadowDirection=&quot;center&quot;\\n shadowDistance=&quot;2&quot;\\n textAlign=&quot;<i>value; see detail.</i>&quot;\\n textDecoration=&quot;none|underline&quot;\\n textIndent=&quot;0&quot;\\n verticalScrollBarStyleName=&quot;&quot;\\n \\n <b>Events</b>\\n scroll=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "helpid",
       "values": ["3270", "3270"]},
    {  "tagName": "tiptext",
       "values": ["base class for views/containers that support scrolling", "base class for views/containers that support scrolling"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.ScrollPolicy",
  "description": "Values for the <code>horizontalScrollPolicy</code> and <code>verticalScrollPolicy</code> properties of the Container and ScrollControlBase classes.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.Container", "mx.core.ScrollControlBase", "mx.core.Container", "mx.core.ScrollControlBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.Singleton",
  "description": "This all-static class serves as a singleton registry.  For example, pop-up management throughout a Flex application is provided by a single instance of the PopUpManagerImpl class, even when the main application loads modules and sub-applications each of which might have PopUpManagerImpl linked in.  The factory class for a framework-based application or a module (i.e., SystemManager or FlexModuleFactory, both of which implements IFlexModuleFactory) calls the registerClass() method to populate the registry.  Later, other classes call getInstance() to access the singleton instance.  The registry policy is &quot;first class in wins&quot;. For example, if the main application registers its PopUpManagerImpl, then a loaded SWF will use that one. However, if the main application doesn't contain a PopUpManagerImpl, then it registers null, and the first loaded SWF containing a PopUpManagerImpl will register that one.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.core.UIComponent",
  "description": "The UIComponent class is the base class for all visual components, both interactive and noninteractive.  <p>An interactive component can participate in tabbing and other kinds of keyboard focus manipulation, accept low-level events like keyboard and mouse input, and be disabled so that it does not receive keyboard and mouse input. This is in contrast to noninteractive components, like Label and ProgressBar, which simply display contents and are not manipulated by the user.</p> <p>The UIComponent class is not used as an MXML tag, but is used as a base class for other classes.</p>   <p>All user interface components in Flex extend the UIComponent class. Flex components inherit the following properties from the UIComponent class:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <b>Properties </b>\\n currentState=&quot;null&quot;\\n doubleClickEnabled=&quot;false|true&quot;\\n enabled=&quot;true|false&quot;\\n height=&quot;0&quot;\\n id=&quot;&quot;\\n maxHeight=&quot;10000&quot;\\n maxWidth=&quot;10000&quot;\\n measuredHeight=\\n measuredMinHeight=\\n measuredMinWidth=\\n measuredWidth=\\n minHeight=&quot;0&quot;\\n minWidth=&quot;0&quot;\\n percentHeight=&quot;NaN&quot;\\n percentWidth=&quot;NaN&quot;\\n states=&quot;null&quot;\\n styleName=&quot;undefined&quot;\\n toolTip=&quot;null&quot;\\n transitions=&quot;&quot;\\n width=&quot;0&quot;\\n x=&quot;0&quot;\\n y=&quot;0&quot;\\n \\n <b>Styles</b>\\n bottom=&quot;undefined&quot;\\n \\n <b>Events</b>\\n valueCommit=&quot;<i>No default</i>&quot;\\n &gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UIComponent", "mx.core.UIComponent"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.UIComponentGlobals",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.core.UITextField",
  "description": "The UITextField class defines the component used by many Flex components to display text. For example, the mx.controls.Button control uses a UITextField component to define the label area of the Button control.  <p>The UITextField class extends the flash.text.TextField class to support additional functionality required by Flex, such as CSS styles, invalidation/measurement/layout, enabling/disabling, tooltips, and IME (Input Method Editor) support for entering Chinese, Japanese, and Korean text.</p>  <p>Warning: if UITextField inherits <code>layoutDirection=&quot;rtl&quot;</code>, it will modify its own <code>transform.matrix</code> to restore the default coordinate system locally.</p>  This is mostly a copy of Label but with a DIV element instead of SPAN so we can measure text.",
"tags": [
{  "tagName": "see",
       "values": ["flash.text.TextField", "mx.core.UITextFormat", "flash.text.TextField", "mx.core.UITextFormat"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.core.UITextFormat",
  "description": "The UITextFormat class represents character formatting information for the UITextField class. The UITextField class defines the component used by many Flex composite components to display text.  <p>The UITextFormat class extends the flash.text.TextFormat class to add the text measurement methods <code>measureText()</code> and <code>measureHTMLText()</code> and to add properties for controlling the advanced anti-aliasing of fonts.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UITextField", "mx.core.UITextField"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.display.Graphics",
  "description": ""},
{ "name": "mx.effects.CompositeEffect",
  "description": "The CompositeEffect class is the parent class for the Parallel and Sequence classes, which define the <code>&lt;mx:Parallel&gt;</code> and <code>&lt;mx:Sequence&gt;</code> MXML tags. Flex supports two methods to combine, or composite, effects: parallel and sequence. When you combine multiple effects in parallel, the effects play at the same time. When you combine multiple effects in sequence, one effect must complete before the next effect starts.  <p>You can create a composite effect in MXML, as the following example shows:</p>  <pre>\\n &lt;mx:Parallel id=&quot;WipeRightUp&quot;&gt;\\n &lt;mx:children&gt;\\n &lt;mx:WipeRight duration=&quot;1000&quot;/&gt;\\n &lt;mx:WipeUp duration=&quot;1000&quot;/&gt;\\n &lt;/mx:children&gt;\\n &lt;/mx:Parallel&gt;\\n \\n &lt;mx:VBox id=&quot;myBox&quot; hideEffect=&quot;WipeRightUp&quot;&gt;\\n &lt;mx:TextArea id=&quot;aTextArea&quot; text=&quot;hello&quot;/&gt;\\n &lt;/mx:VBox&gt;\\n </pre>  <p>The <code>&lt;mx:children&gt;</code> tag is optional.</p>  <p>Starting a composite effect in ActionScript is usually a five-step process:</p>  <ol> <li>Create instances of the effect objects to be composited together; for example: <pre>myFadeEffect = new mx.effects.Fade(target);</pre></li> <li>Set properties, such as <code>duration</code>, on the individual effect objects.</li> <li>Create an instance of the Parallel or Sequence effect object; for example: <pre>mySequenceEffect = new mx.effects.Sequence();</pre></li> <li>Call the <code>addChild()</code> method for each of the effect objects; for example: <pre>mySequenceEffect.addChild(myFadeEffect);</pre></li> <li>Invoke the composite effect's <code>play()</code> method; for example: <pre>mySequenceEffect.play();</pre></li> </ol>   <p>The CompositeEffect class adds the following tag attributes, and all the subclasses of the CompositeEffect class inherit these tag attributes:</p>  <pre>\\n &lt;mx:<i>tagname</i>&gt;\\n &lt;mx:children&gt;\\n &lt;!-- Specify child effect tags --&gt;\\n &lt;/mx:children&gt;\\n &lt;/mx:<i>tagname</i>&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Effect",
  "description": "Effect is the base class for effects in Royale.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.effects.EffectInstance",
  "description": "The EffectInstance class represents an instance of an effect playing on a target. Each target has a separate effect instance associated with it. An effect instance's lifetime is transitory. An instance is created when the effect is played on a target and is destroyed when the effect has finished playing. If there are multiple effects playing on a target at the same time (for example, a Parallel effect), there is a separate effect instance for each effect.  <p>Effect developers must create an instance class for their custom effects.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.effects.Effect", "mx.effects.Effect"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Fade",
  "description": "The Resize effect animates a UI component's width or height.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Glow",
  "description": "The Glow effect lets you apply a visual glow effect to a component.  <p>The Glow effect uses the Flash GlowFilter class as part of its implementation. For more information, see the flash.filters.GlowFilter class. If you apply a Glow effect to a component, you cannot apply a GlowFilter or a second Glow effect to the component.</p>   <p>The <code>&lt;mx:Glow&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Glow\\n id=&quot;ID&quot;\\n alphaFrom=&quot;val&quot;\\n alphaTo=&quot;val&quot;\\n blurXFrom=&quot;val&quot;\\n blurXTo=&quot;val&quot;\\n blurYFrom=&quot;val&quot;\\n blurYTo=&quot;val&quot;\\n color=&quot;<i>themeColor of the application</i>&quot;\\n inner=&quot;false|true&quot;\\n knockout=&quot;false|true&quot;\\n strength=&quot;2&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GlowEffectExample.mxml", "examples/GlowEffectExample.mxml"]},
    {  "tagName": "see",
       "values": ["flash.filters.GlowFilter", "mx.effects.effectClasses.GlowInstance", "flash.filters.GlowFilter", "mx.effects.effectClasses.GlowInstance"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.IAbstractEffect",
  "description": "The IAbstractEffect interface is used to denote that a property or parameter must be of type Effect, but does not actually implement any of the APIs of the IEffect interface. The UIComponent class recognizes when property that implements the AbstractEffect interface changes, and passes it to the EffectManager class for processing.",
"tags": [
{  "tagName": "see",
       "values": ["mx.effects.IEffect", "mx.effects.IEffect"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.IEffectInstance",
  "description": "The IEffectInstance interface represents an instance of an effect playing on a target. Each target has a separate effect instance associated with it. An effect instance's lifetime is transitory. An instance is created when the effect is played on a target and is destroyed when the effect has finished playing. If there are multiple effects playing on a target at the same time (for example, a Parallel effect), there is a separate effect instance for each effect.  <p>Effect developers must create an instance class for their custom effects.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.effects.Effect", "mx.effects.Effect"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Move",
  "description": "The Move effect animates a UI component's x or y position.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Parallel",
  "description": "The Parallel effect plays multiple child effects at the same time.  <p>You can create a Paralell effect in MXML, as the following example shows:</p>  <pre>\\n &lt;mx:Parallel id=&quot;WipeRightUp&quot;&gt;\\n &lt;mx:children&gt;\\n &lt;mx:WipeRight duration=&quot;1000&quot;/&gt;\\n &lt;mx:WipeUp duration=&quot;1000&quot;/&gt;\\n &lt;/mx:children&gt;\\n &lt;/mx:Parallel&gt;\\n \\n &lt;mx:VBox id=&quot;myBox&quot; hideEffect=&quot;{WipeRightUp}&quot; &gt;\\n &lt;mx:TextArea id=&quot;aTextArea&quot; text=&quot;hello&quot;/&gt;\\n &lt;/mx:VBox&gt;\\n </pre>  <p>Notice that the <code>&lt;mx:children&gt;</code> tag is optional.</p>  <p>Starting a Parallel effect in ActionScript is usually a five-step process:</p>  <ol> <li>Create instances of the effect objects to be composited together; for example: <pre>myFadeEffect = new mx.effects.Fade(target);</pre></li> <li>Set properties, such as <code>duration</code>, on the individual effect objects.</li> <li>Create an instance of the Parallel effect object; for example: <pre>myParallelEffect = new mx.effects.Parallel();</pre></li> <li>Call the <code>addChild()</code> method for each of the effect objects; for example: <pre>myParallelEffect.addChild(myFadeEffect);</pre></li> <li>Invoke the Parallel effect's <code>play()</code> method; for example: <pre>myParallelEffect.play();</pre></li> </ol>   <p>The &lt;mx:Parallel&gt; tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Parallel id=&quot;<i>identifier</i>&quot;&gt;\\n &lt;mx:children&gt;\\n &lt;!-- Specify child effect tags --&gt;\\n &lt;/mx:children&gt;\\n &lt;/mx:Parallel&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ParallelEffectExample.mxml", "examples/ParallelEffectExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.effects.effectClasses.ParallelInstance", "mx.effects.effectClasses.ParallelInstance"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Pause",
  "description": "The Pause effect does nothing for a duration.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Resize",
  "description": "The Resize effect animates a UI component's width or height.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Sequence",
  "description": "The Sequence effect animates set of effects one after the other.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.Tween",
  "description": "Tween is the underlying animation class for the effects in Royale.  The Tween class defines a tween, a property animation performed on a target object over a period of time. That animation can be a change in position, such as performed by the Move effect; a change in size, as performed by the Resize or Zoom effects; a change in visibility, as performed by the Fade or Dissolve effects; or other types of animations.  <p>A Tween instance accepts the <code>startValue</code>, <code>endValue</code>, and <code>duration</code> properties, and an optional easing function to define the animation.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.TweenEffect",
  "description": "The TweenEffect class is the superclass for all effects that are based on the Tween object. This class encapsulates methods and properties that are common among all Tween-based effects, to avoid duplication of code elsewhere.  <p>You create a subclass of the TweenEffect class to define an effect that plays an animation over a period of time. For example, the Resize effect modifies the size of its target over a specified duration.</p>   <p>The <code>&lt;mx:TweenEffect&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:TagName\\n <b>Properties</b>\\n easingFunction=&quot;<i>easing function name; no default</i>&quot;\\n \\n <b>Events</b>\\n tweenEnd=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleTweenEffectExample.mxml", "examples/SimpleTweenEffectExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.effects.Tween", "mx.effects.effectClasses.TweenEffectInstance", "mx.effects.Tween", "mx.effects.effectClasses.TweenEffectInstance"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.WipeDown",
  "description": "The WipeDown class defines a wipe down effect. The before or after state of the component must be invisible.  <p>You often use this effect with the <code>showEffect</code> and <code>hideEffect</code> triggers. The <code>showEffect</code> trigger occurs when a component becomes visible by changing its <code>visible</code> property from <code>false</code> to <code>true</code>. The <code>hideEffect</code> trigger occurs when the component becomes invisible by changing its <code>visible</code> property from <code>true</code> to <code>false</code>.</p>  <p>This effect inherits the <code>MaskEffect.show</code> property. If you set the value to <code>true</code>, the component appears. If you set the value to <code>false</code>, the component disappears. The default value is <code>true</code>.</p>  <p>If you specify this effect for a <code>showEffect</code> or <code>hideEffect</code> trigger, Flex sets the <code>show</code> property for you, either to <code>true</code> if the component becomes invisible, or <code>false</code> if the component becomes visible.</p>   <p>The <code>&lt;mx:WipeDown&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:WipeDown\\n id=&quot;ID&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/WipeDownExample.mxml", "examples/WipeDownExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.effects.effectClasses.WipeDownInstance", "mx.effects.effectClasses.WipeDownInstance"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.WipeLeft",
  "description": "The WipeLeft class defines a wipe left effect. The before or after state of the component must be invisible.  <p>You often use this effect with the <code>showEffect</code> and <code>hideEffect</code> triggers. The <code>showEffect</code> trigger occurs when a component becomes visible by changing its <code>visible</code> property from <code>false</code> to <code>true</code>. The <code>hideEffect</code> trigger occurs when the component becomes invisible by changing its <code>visible</code> property from <code>true</code> to <code>false</code>.</p>  <p>This effect inherits the <code>MaskEffect.show</code> property. If you set the value to <code>true</code>, the component appears. If you set the value to <code>false</code>, the component disappears. The default value is <code>true</code>.</p>  <p>If you specify this effect for a <code>showEffect</code> or <code>hideEffect</code> trigger, Flex sets the <code>show</code> property for you, either to <code>true</code> if the component becomes invisible, or <code>false</code> if the component becomes visible.</p>   <p>The <code>&lt;mx:WipeLeft&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:WipeLeft\\n id=&quot;ID&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/WipeLeftExample.mxml", "examples/WipeLeftExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.effects.effectClasses.WipeLeftInstance", "mx.effects.effectClasses.WipeLeftInstance"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.WipeRight",
  "description": "The WipeRight class defines a wipe right effect. The before or after state of the component must be invisible.  <p>You often use this effect with the <code>showEffect</code> and <code>hideEffect</code> triggers. The <code>showEffect</code> trigger occurs when a component becomes visible by changing its <code>visible</code> property from <code>false</code> to <code>true</code>. The <code>hideEffect</code> trigger occurs when the component becomes invisible by changing its <code>visible</code> property from <code>true</code> to <code>false</code>.</p>  <p>This effect inherits the <code>MaskEffect.show</code> property. If you set the value to <code>true</code>, the component appears. If you set the value to <code>false</code>, the component disappears. The default value is <code>true</code>.</p>  <p>If you specify this effect for a <code>showEffect</code> or <code>hideEffect</code> trigger, Flex sets the <code>show</code> property for you, either to <code>true</code> if the component becomes invisible, or <code>false</code> if the component becomes visible. </p>   <p>The <code>&lt;mx:WipeRight&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:WipeRight\\n id=&quot;ID&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/WipeRightExample.mxml", "examples/WipeRightExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.effects.effectClasses.WipeRightInstance", "mx.effects.effectClasses.WipeRightInstance"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.WipeUp",
  "description": "The WipeUp class defines a wipe up effect. The before or after state of the component must be invisible.  <p>You often use this effect with the <code>showEffect</code> and <code>hideEffect</code> triggers. The <code>showEffect</code> trigger occurs when a component becomes visible by changing its <code>visible</code> property from <code>false</code> to <code>true</code>. The <code>hideEffect</code> trigger occurs when the component becomes invisible by changing its <code>visible</code> property from <code>true</code> to <code>false</code>.</p>  <p>This effect inherits the <code>MaskEffect.show</code> property. If you set the value to <code>true</code>, the component appears. If you set the value to <code>false</code>, the component disappears. The default value is <code>true</code>.</p>  <p>If you specify this effect for a <code>showEffect</code> or <code>hideEffect</code> trigger, Flex sets the <code>show</code> property for you, either to <code>true</code> if the component becomes invisible, or <code>false</code> if the component becomes visible.</p>   <p>The <code>&lt;mx:WipeUp&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:WipeUp\\n id=&quot;ID&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/WipeUpExample.mxml", "examples/WipeUpExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.effects.effectClasses.WipeUpInstance", "mx.effects.effectClasses.WipeUpInstance"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.easing.Bounce",
  "description": "The Bounce class defines three easing functions to implement bounce motion with Flex effect classes.  For more information, see http://www.robertpenner.com/profmx.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.easing.Exponential",
  "description": "The Exponential class defines three easing functions to implement motion with Flex effect classes, where the motion is defined by an exponentially decaying sine wave.  For more information, see http://www.robertpenner.com/profmx.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.effectClasses.CompositeEffectInstance",
  "description": "The CompositeEffectInstance class implements the instance class for the CompositeEffect class. Flex creates an instance of this class  when it plays a CompositeEffect; you do not create one yourself.",
"tags": [
{  "tagName": "see",
       "values": ["mx.effects.CompositeEffect", "mx.effects.CompositeEffect"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.effects.effectClasses.TweenEffectInstance",
  "description": "The TweenEffectInstance class implements the instance class for the TweenEffect. Flex creates an instance of this class when it plays a TweenEffect; you do not create one yourself.",
"tags": [
{  "tagName": "see",
       "values": ["mx.effects.Tween", "mx.effects.TweenEffect", "mx.effects.Tween", "mx.effects.TweenEffect"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.errors.EOFError",
  "description": ""},
{ "name": "mx.errors.IllegalOperationError",
  "description": ""},
{ "name": "mx.events.AdvancedDataGridEvent",
  "description": "The AdvancedDataGridEvent class represents event objects that are specific to the AdvancedDataGrid control, such as the event that is dispatched when an editable grid item gets the focus.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.events.AdvancedDataGridEventReason", "mx.controls.AdvancedDataGrid", "mx.events.AdvancedDataGridEventReason"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.AdvancedDataGridEventReason",
  "description": "The AdvancedDataGridEventReason class defines constants for the values of the <code>reason</code> property of a AdvancedDataGridEvent object when the <code>type</code> property is <code>itemEditEnd</code>.",
"tags": [
{  "tagName": "see",
       "values": ["mx.events.AdvancedDataGridEvent", "mx.events.AdvancedDataGridEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.AsyncErrorEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.CalendarLayoutChangeEvent",
  "description": "The CalendarLayoutChangeEvent class represents the event object passed to the event listener for the <code>change</code> event for the DateChooser and DateField controls.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.DateChooser", "mx.controls.DateField", "mx.controls.DateChooser", "mx.controls.DateField"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.events.CloseEvent",
  "description": "The CloseEvent class represents event objects specific to popup windows, such as the Alert control.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.Alert", "mx.controls.Alert"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.CollectionEvent",
  "description": "The mx.events.CollectionEvent class represents an event that is dispatched when the associated collection changes.",
"tags": [
{  "tagName": "see",
       "values": ["FlexEvent#CURSOR_UPDATE", "FlexEvent#CURSOR_UPDATE"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.CollectionEventKind",
  "description": "The CollectionEventKind class contains constants for the valid values of the mx.events.CollectionEvent class <code>kind</code> property. These constants indicate the kind of change that was made to the collection.",
"tags": [
{  "tagName": "see",
       "values": ["mx.events.CollectionEvent", "mx.events.CollectionEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ColorPickerEvent",
  "description": "Represents events that are specific to the ColorPicker control, such as when the user rolls the mouse over or out of a swatch in the swatch panel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.DataGridEvent",
  "description": "The DataGridEvent class represents event objects that are specific to the DataGrid control, such as the event that is dispatched when an editable grid item gets the focus.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.DataGrid", "mx.controls.DataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.DataGridEventReason",
  "description": "The DataGridEventReason class defines constants for the values of the <code>reason</code> property of a DataGridEvent object when the <code>type</code> property is <code>itemEditEnd</code>.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.DividerEvent",
  "description": "Represents events that are dispatched when a divider has been pressed, dragged or released.  These events are dispatched by the DividedBox control and its children.",
"tags": [
{  "tagName": "see",
       "values": ["mx.containers.DividedBox", "mx.containers.DividedBox"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.DragEvent",
  "description": "The DragEvent class represents event objects that are dispatched as part of a drag-and-drop operation.",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.DragManager", "mx.core.DragSource", "mx.core.UIComponent", "mx.managers.DragManager", "mx.core.DragSource", "mx.core.UIComponent"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.DynamicEvent",
  "description": "This subclass of Event is dynamic, meaning that you can set arbitrary event properties on its instances at runtime.  <p>By contrast, Event and its other subclasses are non-dynamic, meaning that you can only set properties that are declared in those classes. When prototyping an application, using a DynamicEvent can be easier because you don't have to write an Event subclass to declare the properties in advance. However, you should eventually eliminate your DynamicEvents and write Event subclasses because these are faster and safer. A DynamicEvent is so flexible that the compiler can't help you catch your error when you set the wrong property or assign it a value of an incorrect type.</p>  <p>Example:</p>  <pre>\\n var event:DynamicEvent = new DynamicEvent(&quot;credentialsChanged&quot;);\\n event.name = name;\\n event.passsword = password; // misspelling won't be caught!\\n dispatchEvent(event);\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.EffectEvent",
  "description": "Represents event objects that are specific to Flex effects. Flex effects dispatch the following types of events: <ul> <li><code>effectStart</code></li> <li><code>effectStop</code></li> <li><code>effectRepeat</code></li> <li><code>effectEnd</code></li> <li><code>effectRepeat</code></li> </ul>",
"tags": [
{  "tagName": "see",
       "values": ["mx.effects.Effect", "mx.effects.Effect"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ErrorEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.FlexEvent",
  "description": "The FlexEvent class represents the event object passed to the event listener for many Flex events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.FocusEvent",
  "description": "Represents event objects that are dispatched when focus changes.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UIComponent", "mx.core.UIComponent"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.HTTPStatusEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.IOErrorEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.IndexChangedEvent",
  "description": "The IndexChangedEvent class represents events that are dispatched when an index changes. This event can indicate that the index value of a child of a container changed, the displayed child of a navigator container such as an Accordion or ViewStack changed, or the order of column headers in a DataGrid control changed.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.Container", "mx.core.Container"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ItemClickEvent",
  "description": "Represents events that are dispatched when a navigation item on a navigator bar, such as a ButtonBar, LinkBar, or TabBar control, has been clicked.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.NavBar", "mx.controls.Button", "mx.controls.List", "mx.controls.NavBar", "mx.controls.Button", "mx.controls.List"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.KeyboardEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ListEvent",
  "description": "The ListEvent class represents events associated with items in list-based controls such as List, Tree, Menu, and DataGrid.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.List", "mx.controls.listClasses.ListBase", "mx.controls.List", "mx.controls.listClasses.ListBase"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.MenuEvent",
  "description": "The MenuEvent class represents events that are associated with menu activities in controls such as Menu, MenuBar, and PopUpMenuButton.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.Menu", "mx.controls.MenuBar", "mx.controls.PopUpMenuButton", "mx.controls.Menu", "mx.controls.MenuBar", "mx.controls.PopUpMenuButton"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ModuleEvent",
  "description": "The ModuleEvent class represents the event object passed to the event listener for events related to dynamically-loaded modules.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.MouseEvent",
  "description": "Represents event objects that are dispatched when a Flex component moves.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UIComponent", "mx.core.UIComponent"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.MoveEvent",
  "description": "Represents event objects that are dispatched when a Flex component moves.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UIComponent", "mx.core.UIComponent"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.NetStatusEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.NumericStepperEvent",
  "description": "Represents events that are specific to the NumericStepper control.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.NumericStepper", "mx.controls.NumericStepper"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.events.ProgressEvent",
  "description": "The ProgressEvent",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.events.PropertyChangeEvent",
  "description": "The PropertyChangeEvent class represents the event object passed to the event listener when one of the properties of an object has changed, and provides information about the change. This event is used by collection classes, and is the only way for collections to know that the data they represent has changed. This event is also used by the Flex data binding mechanism.",
"tags": [
{  "tagName": "see",
       "values": ["PropertyChangeEventKind", "PropertyChangeEventKind"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.PropertyChangeEventKind",
  "description": "The PropertyChangeEventKind class defines the constant values for the <code>kind</code> property of the PropertyChangeEvent class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.events.PropertyChangeEvent", "mx.events.PropertyChangeEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ResizeEvent",
  "description": "Represents event objects that are dispatched when the size of a Flex component changes.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UIComponent", "mx.core.UIComponent"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.SandboxMouseEvent",
  "description": "This is an event sent between applications in different security sandboxes to notify listeners about mouse activity in another security sandbox.  For security reasons, some fields of a MouseEvent are not sent in a SandboxMouseEvent.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ScrollEvent",
  "description": "Represents events that are dispatched by the ScrollBar class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UIComponent", "mx.core.UIComponent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.events.SecurityErrorEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.SliderEvent",
  "description": "The SliderEvent class represents the event object passed to the event listener for the <code>change</code>, <code>thumbDrag</code>, <code>thumbPress</code>, and <code>thumbRelease</code> events of the HSlider and VSlider classes.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.HSlider", "mx.controls.VSlider", "mx.controls.sliderClasses.Slider", "mx.events.SliderEventClickTarget", "mx.controls.HSlider", "mx.controls.VSlider", "mx.controls.sliderClasses.Slider", "mx.events.SliderEventClickTarget"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.TextEvent",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.ToolTipEvent",
  "description": "The ToolTipEvent class represents ToolTip events, which are generated by the ToolTipManager class. The ToolTipManager class calls the <code>dispatchEvent()</code> method of the object to which the tip applies to dispatch the event.",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.ToolTipManager", "mx.core.UIComponent", "mx.managers.ToolTipManager", "mx.core.UIComponent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.events.TreeEvent",
  "description": "The TreeEvent class represents the event object passed to the event listener for events that are associated with activities in tree, such as when a tree branch opens or closes.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.Tree", "mx.controls.Tree"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.events.TweenEvent",
  "description": "Represents event objects that are specific to Flex tween effects. Flex effects dispatch two types of tween events: <ul> <li><code>tweenUpdate</code></li> <li><code>tweenEnd</code></li> </ul>",
"tags": [
{  "tagName": "see",
       "values": ["mx.effects.TweenEffect", "mx.effects.Tween", "mx.effects.TweenEffect", "mx.effects.Tween"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.events.ValidationResultEvent",
  "description": "The ValidationResultEvent class represents the event object passed to the listener for the <code>valid</code> validator event or the <code>invalid</code> validator event.",
"tags": [
{  "tagName": "see",
       "values": ["mx.validators.Validator", "mx.validators.ValidationResult", "mx.validators.RegExpValidationResult", "mx.validators.Validator", "mx.validators.ValidationResult", "mx.validators.RegExpValidationResult"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.utils.FocusEventConverter",
  "description": "Converts low level focus events to Royale FocusEvents",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.utils.KeyboardEventConverter",
  "description": "Converts low level keyboard events to Royale KeyboardEvents",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.events.utils.MouseEventConverter",
  "description": "Mouse events conversion.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.external.ExternalInterface",
  "description": "The ExternalInterface class provides a mechanism for a Royale application to communicate with other JavaScript functionality present within the web page.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9.0", "AIR 1.0", "Flash 9.0", "AIR 1.0"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.filters.BitmapFilter",
  "description": "",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.filters.ColorMatrixFilter",
  "description": "",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.CurrencyFormatter",
  "description": "The CurrencyFormatter class formats a valid number as a currency value. It adjusts the decimal rounding and precision, the thousands separator, and the negative sign; it also adds a currency symbol. You place the currency symbol on either the left or the right side of the value with the <code>alignSymbol</code> property. The currency symbol can contain multiple characters, including blank spaces.  <p>If an error occurs, an empty String is returned and a String that describes the error is saved to the <code>error</code> property. The <code>error</code> property can have one of the following values:</p>  <ul> <li><code>&quot;Invalid value&quot;</code> means an invalid numeric value is passed to the <code>format()</code> method. The value should be a valid number in the form of a Number or a String.</li> <li><code>&quot;Invalid format&quot;</code> means one of the parameters contains an unusable setting.</li> </ul>   <p>The <code>&lt;mx:CurrencyFormatter&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:CurrencyFormatter\\n alignSymbol=&quot;left|right&quot;\\n currencySymbol=&quot;$&quot;\\n decimalSeparatorFrom=&quot;.&quot;\\n decimalSeparatorTo=&quot;.&quot;\\n precision=&quot;-1&quot;\\n rounding=&quot;none|up|down|nearest&quot;\\n thousandsSeparatorFrom=&quot;,&quot;\\n thousandsSeparatorTo=&quot;,&quot;\\n useNegativeSign=&quot;true|false&quot;\\n useThousandsSeparator=&quot;true|false&quot;\\n />\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/CurrencyFormatterExample.mxml", "examples/CurrencyFormatterExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.formatters.NumberBase", "mx.formatters.NumberBaseRoundType", "mx.formatters.NumberBase", "mx.formatters.NumberBaseRoundType"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.DateBase",
  "description": "The DateBase class contains the localized string information used by the mx.formatters.DateFormatter class and the parsing function that renders the pattern. This is a helper class for the DateFormatter class that is not usually used independently.",
"tags": [
{  "tagName": "see",
       "values": ["mx.formatters.DateFormatter", "mx.formatters.DateFormatter"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.DateFormatter",
  "description": "The DateFormatter class uses a format String to return a formatted date and time String from an input String or a Date object. You can create many variations easily, including international formats.  <p>If an error occurs, an empty String is returned and a String describing the error is saved to the <code>error</code> property. The <code>error</code> property can have one of the following values:</p>  <ul> <li><code>&quot;Invalid value&quot;</code> means a value that is not a Date object or a is not a recognized String representation of a date is passed to the <code>format()</code> method. (An empty argument is allowed.)</li> <li> <code>&quot;Invalid format&quot;</code> means either the <code>formatString</code> property is set to empty (&quot;&quot;), or there is less than one pattern letter in the <code>formatString</code> property.</li> </ul>  <p>The <code>parseDateString()</code> method uses the mx.formatters.DateBase class to define the localized string information required to convert a date that is formatted as a String into a Date object.</p>   <p>You use the <code>&lt;mx:DateFormatter&gt;</code> tag to render date and time Strings from a Date object.</p>  <p>The <code>&lt;mx:DateFormatter&gt;</code> tag inherits all of the tag attributes  of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:DateFormatter\\n formatString=&quot;Y|M|D|A|E|H|J|K|L|N|S|Q|O|Z&quot;\\n />\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DateFormatterExample.mxml", "examples/DateFormatterExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.formatters.DateBase", "mx.formatters.DateBase"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.Formatter",
  "description": "The Formatter class is the base class for all data formatters. Any subclass of Formatter must override the <code>format()</code> method.   <p>The Formatter class defines the following tag attributes, which all of its subclasses inherit:</p>  <pre>\\n &lt;mx:<i>tagname</i>\\n <b>Properties</b>\\n error=&quot;&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleFormatterExample.mxml", "examples/SimpleFormatterExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.IFormatter",
  "description": "This interface specifies the method that a formatter object must implement to allow it to be used as the formatter property for UI controls such as the <code>AdvancedDataGridColumn</code>.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.advancedDataGridClasses#formatter", "mx.controls.advancedDataGridClasses#formatter"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.1", "AIR 2.5", "Flash 10.1", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.NumberBase",
  "description": "The NumberBase class is a utility class that contains general number formatting capabilities, including rounding, precision, thousands formatting, and negative sign formatting. The implementation of the formatter classes use this class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.formatters.NumberFormatter", "mx.formatters.NumberBaseRoundType", "mx.formatters.NumberFormatter", "mx.formatters.NumberBaseRoundType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.NumberBaseRoundType",
  "description": "The NumberBaseRoundType class defines the constant values for formatter properties that specify a type of rounding. For example, you can set the <code>NumberFormatter.rounding</code> property using these constants.",
"tags": [
{  "tagName": "see",
       "values": ["mx.formatters.NumberFormatter", "mx.formatters.NumberBase", "mx.formatters.NumberFormatter", "mx.formatters.NumberBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.NumberFormatter",
  "description": "The NumberFormatter class formats a valid number by adjusting the decimal rounding and precision, the thousands separator, and the negative sign.  <p>If you use both the <code>rounding</code> and <code>precision</code> properties, rounding is applied first, and then you set the decimal length by using the specified <code>precision</code> value. This lets you round a number and still have a trailing decimal; for example, 303.99 = 304.00.</p>  <p>If an error occurs, an empty String is returned and a String describing  the error is saved to the <code>error</code> property. The <code>error</code>  property can have one of the following values:</p>  <ul> <li><code>&quot;Invalid value&quot;</code> means an invalid numeric value is passed to the <code>format()</code> method. The value should be a valid number in the form of a Number or a String.</li> <li><code>&quot;Invalid format&quot;</code> means one of the parameters contain an unusable setting.</li> </ul>   <p>The <code>&lt;mx:NumberFormatter&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:NumberFormatter\\n decimalSeparatorFrom=&quot;.&quot;\\n decimalSeparatorTo=&quot;.&quot;\\n precision=&quot;-1&quot;\\n rounding=&quot;none|up|down|nearest&quot;\\n thousandsSeparatorFrom=&quot;,&quot;\\n thousandsSeparatorTo=&quot;,&quot;\\n useNegativeSign=&quot;true|false&quot;\\n useThousandsSeparator=&quot;true|false&quot;/>\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/NumberFormatterExample.mxml", "examples/NumberFormatterExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.formatters.NumberBase", "mx.formatters.NumberBaseRoundType", "mx.formatters.NumberBase", "mx.formatters.NumberBaseRoundType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.PhoneFormatter",
  "description": "The PhoneFormatter class formats a valid number into a phone number format, including international configurations.  <p>A shortcut is provided for the United States seven-digit format. If the <code>areaCode</code> property contains a value and you use the seven-digit format string, (###-####), a seven-digit value to format automatically adds the area code to the returned String. The default format for the area code is (###). You can change this using the <code>areaCodeFormat</code> property. You can format the area code any way you want as long as it contains three number placeholders.</p>  <p>If an error occurs, an empty String is returned and a String that describes the error is saved to the <code>error</code> property. The <code>error</code> property can have one of the following values:</p>  <ul> <li><code>&quot;Invalid value&quot;</code> means an invalid numeric value is passed to the <code>format()</code> method. The value should be a valid number in the form of a Number or a String, or the value contains a different number of digits than what is specified in the format String.</li> <li> <code>&quot;Invalid format&quot;</code> means any of the characters in the <code>formatString</code> property do not match the allowed characters specified in the <code>validPatternChars</code> property, or the <code>areaCodeFormat</code> property is specified but does not contain exactly three numeric placeholders.</li> </ul>   <p>The <code>&lt;mx:PhoneFormatter&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:PhoneFormatter\\n areaCode=&quot;-1&quot;\\n areaCodeFormat=&quot;(###)&quot;\\n formatString=&quot;(###) ###-####&quot;\\n validPatternChars=&quot;+()#-. &quot;\\n />\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PhoneFormatterExample.mxml", "examples/PhoneFormatterExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.formatters.SwitchSymbolFormatter", "mx.formatters.SwitchSymbolFormatter"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.StringFormatter",
  "description": "The StringFormatter class provides a mechanism for displaying and saving data in the specified format. The constructor accepts the format and an Array of tokens, and uses these values to create the data structures to support the formatting during data retrieval and saving.  <p>This class is used internally by other formatters, and is typically not used directly.</p>",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "see",
       "values": ["mx.formatters.DateFormatter", "mx.formatters.DateFormatter"]}  ]},
{ "name": "mx.formatters.SwitchSymbolFormatter",
  "description": "The SwitchSymbolFormatter class is a utility class that you can use when creating custom formatters. This class performs a substitution by replacing placeholder characters in one String with numbers from a second String.  <p>For example, you specify the following information to the SwitchSymbolFormatter class:</p>  <p>Format String: &quot;The SocialSecurity number is: ###-##-####&quot;</p> <p>Input String: &quot;123456789&quot;</p>  <p>The SwitchSymbolFormatter class parses the format String and replaces each placeholder character, by default the number character (#), with a number from the input String in the order in which the numbers are specified in the input String. You can define a different placeholder symbol by passing it to the constructor when you instantiate a SwitchSymbolFormatter object.</p>  <p>The output String created by the SwitchSymbolFormatter class from these two Strings is the following:</p>  <p>&quot;The SocialSecurity number is: 123-45-6789&quot;</p>  <p>The pattern can contain any characters as long as they are constant for all values of the numeric portion of the String. However, the value for formatting must be numeric.</p>  <p>The number of digits supplied in the source value must match the number of digits defined in the pattern String. This is the responsibility of the script calling the SwitchSymbolFormatter object.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SwitchSymbolFormatterExample.mxml", "examples/SwitchSymbolFormatterExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.formatters.PhoneFormatter", "mx.formatters.PhoneFormatter"]},
    {  "tagName": "access",
       "values": ["private", "private"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.formatters.ZipCodeFormatter",
  "description": "The ZipCodeFormatter class formats a valid number into one of the following formats, based on a user-supplied <code>formatString</code> property.  <ul> <li>#####-####</li> <li>##### ####</li> <li>#####</li> <li>### ### (Canadian)</li> </ul>  <p>A six-digit number must be supplied for a six-digit mask. If you use a five-digit or a nine-digit mask, you can use either a five-digit or a nine-digit number for formatting.</p>  <p>If an error occurs, an empty String is returned and a String that describes the error is saved to the <code>error</code> property. The <code>error</code> property can have one of the following values:</p>  <ul> <li><code>&quot;Invalid value&quot;</code> means an invalid numeric value is passed to the <code>format()</code> method. The value should be a valid number in the form of a Number or a String, except for Canadian postal code, which allows alphanumeric values, or the number of digits does not match the allowed digits from the <code>formatString</code> property.</li> <li> <code>&quot;Invalid format&quot;</code> means any of the characters in the <code>formatString</code> property do not match the allowed characters specified in the <code>validFormatChars</code> property, or the number of numeric placeholders does not equal 9, 5, or 6.</li> </ul>   <p>The <code>&lt;mx:ZipCodeFormatter&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:ZipCodeFormatter\\n formatString=&quot;#####|#####-####|### ###&quot;\\n />\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ZipCodeFormatterExample.mxml", "examples/ZipCodeFormatterExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.formatters.SwitchSymbolFormatter", "mx.formatters.SwitchSymbolFormatter"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.geom.Matrix",
  "description": "2D Matrix",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7", "Royale 0.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.graphics.GradientEntry",
  "description": "The GradientEntry class defines the objects that control a transition as part of a gradient fill. You use this class with the LinearGradient and RadialGradient classes to define a gradient fill.   <p>The <code>&lt;mx:GradientEntry&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:GradientEntry\\n <b>Properties</b>\\n alpha=&quot;1.0&quot;\\n color=&quot;0x000000&quot;\\n ratio=&quot;NaN&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.graphics.IFill",
  "description": ""},
{ "name": "mx.graphics.IStroke",
  "description": ""},
{ "name": "mx.graphics.LinearGradient",
  "description": ""},
{ "name": "mx.graphics.LinearGradientStroke",
  "description": "The LinearGradientStroke class lets you specify a gradient filled stroke. You use the LinearGradientStroke class, along with the GradientEntry class, to define a gradient stroke.",
"tags": [
{  "tagName": "see",
       "values": ["mx.graphics.Stroke", "mx.graphics.GradientEntry", "mx.graphics.RadialGradient", "flash.display.Graphics", "mx.graphics.Stroke", "mx.graphics.GradientEntry", "mx.graphics.RadialGradient", "flash.display.Graphics"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.graphics.SolidColor",
  "description": ""},
{ "name": "mx.graphics.SolidColorStroke",
  "description": ""},
{ "name": "mx.graphics.Stroke",
  "description": "The Stroke class defines the properties for a line.  You can define a Stroke object in MXML, but you must attach that Stroke to another object for it to appear in your application. The following example defines two Stroke objects and then uses them in the horizontalAxisRenderer of a LineChart control:  <pre>\\n ...\\n &lt;mx:Stroke id=&quot;ticks&quot; color=&quot;0xFF0000&quot; weight=&quot;1&quot;/&gt;\\n &lt;mx:Stroke id=&quot;mticks&quot; color=&quot;0x0000FF&quot; weight=&quot;1&quot;/&gt;\\n \\n &lt;mx:LineChart id=&quot;mychart&quot; dataProvider=&quot;{ndxa}&quot;&gt;\\n &lt;mx:horizontalAxisRenderer&gt;\\n &lt;mx:AxisRenderer placement=&quot;bottom&quot; canDropLabels=&quot;true&quot;&gt;\\n &lt;mx:tickStroke&gt;{ticks}&lt;/mx:tickStroke&gt;\\n &lt;mx:minorTickStroke&gt;{mticks}&lt;/mx:minorTickStroke&gt;\\n &lt;/mx:AxisRenderer&gt;\\n &lt;/mx:horizontalAxisRenderer&gt;\\n &lt;/LineChart&gt;\\n ...\\n </pre>   <p>The <code>&lt;mx:Stroke&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:Stroke\\n <b>Properties</b>\\n alpha=&quot;1.0&quot;\\n caps=&quot;null|none|round|square&quot;\\n color=&quot;0x000000&quot;\\n joints=&quot;null|bevel|miter|round&quot;\\n miterLimit=&quot;1&quot;\\n pixelHinting=&quot;false|true&quot;\\n scaleMode=&quot;normal|none|horizontal|vertical&quot;\\n weight=&quot;1 (<i>in most cases</i>)&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["flash.display.Graphics", "flash.display.Graphics"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.AbstractTarget",
  "description": "This class provides the basic functionality required by the logging framework for a target implementation. It handles the validation of filter expressions and provides a default level property. No implementation of the <code>logEvent()</code> method is provided.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.ILogger",
  "description": "All loggers within the logging framework must implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.ILoggingTarget",
  "description": "All logger target implementations within the logging framework must implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.Log",
  "description": "Provides pseudo-hierarchical logging capabilities with multiple format and output options. The log system consists of two major components, the logger and a target. You can use the logger to send information to a target. The target is responsible for formatting and general output of the log data. <p> Loggers are singleton instances created for a particular category of information. Typically, the category is the package name of the component that desires to log information. The category provides users the ability to specify what log information they are interested in. Multiple categories can be selected and combined with regular expressions. This allows for both broad and narrow logging information to be acquired. For example, you might be interested in all logging information under the &quot;mx.messaging&quot; and &quot;mx.rpc&quot; packages and want the output from these packages to be formatted as XML. To get the all of the logging information under the &quot;mx.messaging&quot; category including sub-packages and components a wildcard expression is required, such as &quot;mx.messaging.~~&quot;. See the code example below for more details. </p> <p>Targets provide the output mechanism of the data being logged. This mechanism typically includes formatting, transmission, or storage, but can be anything possible under the VM. There are two targets provided: <code>MiniDebugTarget</code> and <code>TraceTarget</code>. Each of these writers take the current log information and &quot;sends&quot; it somewhere for display and/or storage. Targets also provide the specification of what log data to output. </p>  <pre>\\n ...\\n import mx.logging.targets.*;\\n import mx.logging.*;\\n \\n private function initLogging():void {\\n // Create a target.\\n var logTarget:TraceTarget = new TraceTarget();\\n \\n // Log only messages for the classes in the mx.rpc.* and\\n // mx.messaging packages.\\n logTarget.filters=[&quot;mx.rpc.*&quot;,&quot;mx.messaging.*&quot;];\\n \\n // Log all log levels.\\n logTarget.level = LogEventLevel.ALL;\\n \\n // Add date, time, category, and log level to the output.\\n logTarget.includeDate = true;\\n logTarget.includeTime = true;\\n logTarget.includeCategory = true;\\n logTarget.includeLevel = true;\\n \\n // Begin logging.\\n Log.addTarget(logTarget);\\n }\\n ...\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "example",
       "values": []},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.LogEvent",
  "description": "Represents the log information for a single logging event. The loging system dispatches a single event each time a process requests information be logged. This event can be captured by any object for storage or formatting.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.logging.LogEventLevel",
  "description": "Static class containing constants for use in the <code>level</code> property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.LogLogger",
  "description": "The logger that is used within the logging framework. This class dispatches events for each message logged using the <code>log()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.errors.InvalidCategoryError",
  "description": "This error is thrown when a category specified for a logger contains invalid characters or is malformed. This error is thrown by the following method: <ul> <li><code>Log.getLogger()</code> if a category specified is malformed.</li> </ul>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.errors.InvalidFilterError",
  "description": "This error is thrown when a filter specified for a target contains invalid characters or is malformed. This error is thrown by the following methods/properties: <ul> <li><code>ILoggerTarget.filters</code> if a filter expression in this listis malformed.</li> </ul>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.logging.targets.LineFormattedTarget",
  "description": "All logger target implementations that have a formatted line style output should extend this class. It provides default behavior for including date, time, category, and level within the output.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.logging.targets.TraceTarget",
  "description": "Provides a logger target that uses the global <code>trace()</code> method to output log messages.  <p>To view <code>trace()</code> method output, you must be running the debugger version of Flash Player or AIR Debug Launcher.</p>  <p>The debugger version of Flash Player and AIR Debug Launcher send output from the <code>trace()</code> method to the flashlog.txt file. The default location of this file is the same directory as the mm.cfg file. You can customize the location of this file by using the <code>TraceOutputFileName</code> property in the mm.cfg file. You must also set <code>TraceOutputFileEnable</code> to 1 in your mm.cfg file.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.managers.BrowserManager",
  "description": "The BrowserManager is a Singleton manager that acts as a proxy between the browser and the application. It provides access to the URL in the browser address bar similar to accessing the <code>document.location</code> property in JavaScript. Events are dispatched when the <code>url</code> property is changed. Listeners can then respond, alter the URL, and/or block others from getting the event.  <p>To use the BrowserManager, you call the <code>getInstance()</code> method to get the current instance of the manager, and call methods and listen to events on that manager. See the IBrowserManager class for the methods, properties, and events to use.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.IBrowserManager", "mx.managers.HistoryManager", "mx.managers.IBrowserManager", "mx.managers.HistoryManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.CursorManager",
  "description": "The CursorManager class controls a prioritized list of cursors, where the cursor with the highest priority is currently visible. If the cursor list contains more than one cursor with the same priority, the Cursor Manager displays the most recently created cursor.  <p>For example, if your application performs processing that requires the user to wait until the processing completes, you can change the cursor so that it reflects the waiting period. In this case, you can change the cursor to an hourglass or other image.</p>  <p>You also might want to change the cursor to provide feedback to the user to indicate the actions that the user can perform. For example, you can use one cursor image to indicate that user input is enabled, and another to indicate that input is disabled. You can use a JPEG, GIF, PNG, or SVG image, a Sprite object, or a SWF file as the cursor image.</p>  <p>All methods and properties of the CursorManager are static, so you do not need to create an instance of it.</p>  <p>In AIR, each mx.core.Window instance uses its own instance of the CursorManager class. Instead of directly referencing the static methods and properties of the CursorManager class, use the <code>Window.cursorManager</code> property to reference the CursorManager instance for the Window instance. </p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.CursorManagerPriority", "mx.core.Window", "mx.managers.CursorManagerPriority", "mx.core.Window"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.CursorManagerPriority",
  "description": "The CursorManagerPriority class defines the constant values for the <code>priority</code> argument to the <code>CursorManager.setCursor()</code> method.",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.CursorManager", "mx.managers.CursorManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.DragManager",
  "description": "The DragManager class manages drag and drop operations, which let you move data from one place to another in a Flex application. For example, you can select an object, such as an item in a List control or a Flex control, such as an Image control, and then drag it over another component to add it to that component.  <p>All methods and properties of the DragManager are static, so you do not need to create an instance of it.</p>  <p>All Flex components support drag and drop operations. Flex provides additional support for drag and drop to the List, Tree, and DataGrid controls.</p>  <p>When the user selects an item with the mouse, the selected component is called the drag initiator. The image displayed during the drag operation is called the drag proxy.</p>  <p>When the user moves the drag proxy over another component, the <code>dragEnter</code> event is sent to that component. If the component accepts the drag, it becomes the drop target and receives <code>dragOver</code>, <code>dragExit</code>, and <code>dragDrop</code> events.</p>  <p>When the drag is complete, a <code>dragComplete</code> event is sent to the drag initiator.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.DragSource", "mx.events.DragEvent", "mx.core.UIComponent", "mx.core.DragSource", "mx.events.DragEvent", "mx.core.UIComponent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.FocusManager",
  "description": "The FocusManager class manages the focus on components in response to mouse activity or keyboard activity (Tab key).  There can be several FocusManager instances in an application.  Each FocusManager instance is responsible for a set of components that comprise a &quot;tab loop&quot;.  If you hit Tab enough times, focus traverses through a set of components and eventually get back to the first component that had focus.  That is a &quot;tab loop&quot; and a FocusManager instance manages that loop.  If there are popup windows with their own set of components in a &quot;tab loop&quot; those popup windows will have their own FocusManager instances.  The main application always has a FocusManager instance.  <p>The FocusManager manages focus from the &quot;component level&quot;. In Flex, a UITextField in a component is the only way to allow keyboard entry of text. To the Flash Player or AIR, that UITextField has focus. However, from the FocusManager's perspective the component that parents the UITextField has focus. Thus there is a distinction between component-level focus and player-level focus. Application developers generally only have to deal with component-level focus while component developers must understand player-level focus.</p>  <p>All components that can be managed by the FocusManager must implement mx.managers.IFocusManagerComponent, whereas objects managed by player-level focus do not.</p>  <p>The FocusManager also managers the concept of a defaultButton, which is the Button on a form that dispatches a click event when the Enter key is pressed depending on where focus is at that time.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.IActiveWindowManager",
  "description": "Interface for subsystem that manages which focus manager is active when there is more than one IFocusManagerContainer on screen."},
{ "name": "mx.managers.IBrowserManager",
  "description": "The interface that the shared instance of the BrowserManager implements. Applications listen for events, call methods, and access properties on the shared instance which is accessed with the <code>BrowserManager.getInstance()</code> method.",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.BrowserManager", "mx.managers.BrowserManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.ICursorManager",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.managers.IFocusManager",
  "description": "The IFocusManager interface defines the interface that components must implement to manage the focus on components in response to mouse activity or keyboard activity (Tab key), and to support a default button.",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.FocusManager", "mx.managers.FocusManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.IFocusManagerComplexComponent",
  "description": "The IFocusManagerComplexComponent interface defines the interface that components that can have more than one internal focus target should implement in order to receive focus from the FocusManager.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.IFocusManagerComponent",
  "description": "The IFocusManagerComponent interface defines the interface that focusable components must implement in order to receive focus from the FocusManager. The base implementations of this interface are in the UIComponent class, but UIComponent does not implement the full IFocusManagerComponent interface since some UIComponents are not intended to receive focus. Therefore, to make a UIComponent-derived component be a valid focusable component, you simply add &quot;implements IFocusManagerComponent&quot; to the class definition.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.IFocusManagerContainer",
  "description": "The IFocusManagerContainer interface defines the interface that containers implement to host a FocusManager. The PopUpManager automatically installs a FocusManager in any IFocusManagerContainer it pops up.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.IFocusManagerGroup",
  "description": "The IFocusManagerGroup interface defines the interface that any component must implement if it is grouped in sets, where only one member of the set can be selected at any given time. For example, a RadioButton implements IFocusManagerGroup because a set of RadioButtons in the same group can only have one RadioButton selected at any one time, and the FocusManager will make sure not to give focus to the RadioButtons that are not selected in response to moving focus via the Tab key.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.ILayoutManagerClient",
  "description": "The ILayoutManagerClient interface defines the interface that a component must implement to participate in the LayoutManager's commit/measurement/layout sequence.  <p>Objects that implement this interface can be passed to the LayoutManager's <code>invalidateProperties()</code> method. When the LayoutManager reaches the commit properties phase, the LayoutManager invokes this object's <code>validateProperties()</code> method.</p>  <p>Similarly, if an object is passed to the LayoutManager's <code>invalidateSize()</code> method, then the LayoutManager calls that object's <code>validateSize()</code> method during its measurement phase, and if an object is passed to LayoutManager's <code>invalidateDisplayList()</code> method, then the LayoutManager  calls its <code>validateDisplayList()</code> method during the layout phase.</p>  <p>The ILayoutManagerClient interface is implemented by the UIComponent and ProgrammaticSkin classes.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.ISystemManager",
  "description": "An ISystemManager manages an &quot;application window&quot;. Every application that runs on the desktop or in a browser has an area where the visuals of the application will be displayed.  It may be a window in the operating system or an area within the browser.  That is an &quot;application window&quot; and different from an instance of <code>mx.core.Application</code>, which is the main &quot;top-level&quot; window within an application.  <p>Every application has an ISystemManager. The ISystemManager  sends an event if the size of the application window changes (you cannot change it from within the application, but only through interaction with the operating system window or browser).  It parents all displayable items within the application, such as the main mx.core.Application instance and all popups, tooltips, cursors, an so on.  Any object parented by the ISystemManager is considered to be a &quot;top-level&quot; window, even tooltips and cursors.</p>  <p>The ISystemManager also switches focus between top-level windows if there  are more than one IFocusManagerContainer displayed and users are interacting with components within the IFocusManagerContainers.</p>  <p>All keyboard and mouse activity that is not expressly trapped is seen by the ISystemManager, making it a good place to monitor activity should you need to do so.</p>  <p>If an application is loaded into another application, an ISystemManager will still be created, but will not manage an &quot;application window&quot;, depending on security and domain rules. Instead, it will be the <code>content</code> of the <code>Loader</code> that loaded it and simply serve as the parent of the sub-application</p>  <p>The ISystemManager maintains multiple lists of children, one each for tooltips, cursors, popup windows. This is how it ensures that popup windows &quot;float&quot; above the main application windows and that tooltips &quot;float&quot; above that and cursors above that. If you examine the <code>numChildren</code> property or <code>getChildAt()</code> method on the ISystemManager you are accessing the main application window and any other windows that aren't popped up. To get the list of all windows, including popups, tooltips and cursors, use the <code>rawChildren</code> property.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.IToolTipManager2",
  "description": "This interface is used internally by Flex 3. Flex 2.0.1 used the IToolTipManager interface.  This interface does not extend IToolTipManager because IToolTipManager had a dependency on Effect, which has a dependency on UIComponent. IToolTipManager2 fixes this by depending on IAbstractEffect, a new interface in Flex 3.  IToolTipManager2 must be in the cross-versioning bootstrap set of classes (see bootstrap-defs.as) and if the bootstrap loader contains implementation classes such as Effect and UIComponent then any apps and modules it loads would use the bootstrap's version of these classes, instead of using their own versions.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.managers.IToolTipManagerClient",
  "description": "Components that implement IToolTipManagerClient can have tooltips and must have a toolTip getter/setter. The ToolTipManager class manages showing and hiding the tooltip on behalf of any component which is an IToolTipManagerClient.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.ToolTip", "mx.managers.ToolTipManager", "mx.core.IToolTip", "mx.controls.ToolTip", "mx.managers.ToolTipManager", "mx.core.IToolTip"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.PopUpManager",
  "description": "The PopUpManager singleton class creates new top-level windows and places or removes those windows from the layer on top of all other visible windows.  See the SystemManager for a description of the layering. It is used for popup dialogs, menus, and dropdowns in the ComboBox control and in similar components.  <p>The PopUpManager also provides modality, so that windows below the popup cannot receive mouse events, and also provides an event if the user clicks the mouse outside the window so the developer can choose to dismiss the window or warn the user.</p>",
"tags": [
{  "tagName": "see",
       "values": ["PopUpManagerChildList", "PopUpManagerChildList"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.PopUpManagerModal",
  "description": ""},
{ "name": "mx.managers.SystemManager",
  "description": "The SystemManager class manages an application window. Every application that runs on the desktop or in a browser has an area where the visuals of the application are displayed. It may be a window in the operating system or an area within the browser.  That area is an application window and different from an instance of <code>mx.core.Application</code>, which is the main, or top-level, window within an application.  <p>Every application has a SystemManager. The SystemManager sends an event if the size of the application window changes (you cannot change it from within the application, but only through interaction with the operating system window or browser).  It parents all displayable things within the application like the main mx.core.Application instance and all popups, tooltips, cursors, and so on.  Any object parented by the SystemManager is considered to be a top-level window, even tooltips and cursors.</p>  <p>The SystemManager also switches focus between top-level windows if there are more than one IFocusManagerContainer displayed and users are interacting with components within the IFocusManagerContainers.  </p>  <p>All keyboard and mouse activity that is not expressly trapped is seen by the SystemManager, making it a good place to monitor activity should you need to do so.</p>  <p>If an application is loaded into another application, a SystemManager will still be created, but will not manage an application window, depending on security and domain rules. Instead, it will be the <code>content</code> of the <code>Loader</code> that loaded it and simply serve as the parent of the sub-application</p>  <p>The SystemManager maintains multiple lists of children, one each for tooltips, cursors, popup windows.  This is how it ensures that popup windows &quot;float&quot; above the main application windows and that tooltips &quot;float&quot; above that and cursors above that. If you simply examine the <code>numChildren</code> property or call the <code>getChildAt()</code> method on the SystemManager, you are accessing the main application window and any other windows that aren't popped up.  To get the list of all windows, including popups, tooltips and cursors, use the <code>rawChildren</code> property.</p>  <p>The SystemManager is the first display class created within an application. It is responsible for creating an <code>mx.preloaders.Preloader</code> that displays and <code>mx.preloaders.SparkDownloadProgressBar</code> while the application finishes loading, then creates the <code>mx.core.Application</code> instance.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.SystemManagerBase",
  "description": "The platform base class for SystemManager",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.managers.SystemManagerGlobals",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.managers.ToolTipManager",
  "description": "The ToolTipManager lets you set basic ToolTip and error tip functionality, such as display delay and the disabling of ToolTips.",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.ToolTip", "mx.validators.Validator", "mx.controls.ToolTip", "mx.validators.Validator"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.AbstractConsumer",
  "description": "The AbstractConsumer is the base class for both the Consumer and MultiTopicConsumer classes.  You use those classes to receive pushed messages from the server.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.AbstractProducer",
  "description": "The AbstractProducer is the base class for the Producer and MultiTopicConsumer classes. You use these classes to push messages to the server.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.Channel",
  "description": "The Channel class is the base message channel class that all channels in the messaging system must extend.  <p>Channels are specific protocol-based conduits for messages sent between MessageAgents and remote destinations. Preconfigured channels are obtained within the framework using the <code>ServerConfig.getChannel()</code> method. You can create a Channel directly using the <code>new</code> operator and add it to a ChannelSet directly.</p>  <p> Channels represent a physical connection to a remote endpoint. Channels are shared across destinations by default. This means that a client targetting different destinations may use the same Channel to communicate with these destinations. </p>  <p><b>Note:</b> This class is for advanced use only. Use this class for creating custom channels like the existing RTMPChannel, AMFChannel, and HTTPChannel.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.ChannelSet",
  "description": "The ChannelSet is a set of Channels that are used to send messages to a target destination. The ChannelSet improves the quality of service on the client by hunting through its Channels to send messages in the face of network failures or individual Channel problems.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.Consumer",
  "description": "A Consumer subscribes to a destination to receive messages. Consumers send subscribe and unsubscribe messages which generate a MessageAckEvent or MessageFaultEvent depending upon whether the operation was successful or not. Once subscribed, a Consumer dispatches a MessageEvent for each message it receives. Consumers provide the ability to filter messages using a selector. These selectors must be understood by the destination. <p> The &lt;mx:Consumer&gt; tag inherits all the tag attributes of its superclass, and adds the following tag attributes: </p> <pre>\\n &lt;mx:Consumer\\n <b>Properties</b>\\n resubscribeAttempts=&quot;<i>5</i>&quot;\\n resubscribeInterval=&quot;<i>5000</i>&quot;\\n selector=&quot;<i>No default.</i>&quot;\\n timestamp=&quot;<i>No default.</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.ConsumerMessageDispatcher",
  "description": "Helper class that listens for MessageEvents dispatched by ChannelSets that Consumers are subscribed over. This class is necessary because the server maintains queues of messages to push to this Flex client on a per-endpoint basis but the client may create more than one Channel that connects to a single server endpoint. In this scenario, messages can be pushed/polled to the client over a different channel instance than the one that the target Consumer subscribed over. The server isn't aware of this difference because both channels are pointed at the same endpoint. Here's a diagram to illustrate.  Client: Consumer 1           Consumer 2    Consumer 3 |                       |       / ChannelSet 1            ChannelSet 2 |                       | Channel 1               Channel 2  <- The endpoint URIs for these two channels are identical |                       | &#92;_______________________/ Server:                     | | Endpoint (that the two channels point to) | FlexClientOutboundQueue (for this endpoint for this FlexClient) &#92;-- Outbound messages for the three Consumer subscriptions  When the endpoint receives a poll request from Channel 1 it will return queued messages for all three subscriptions but back on the client when Channel 1 dispatches message events for Consumer 2 and 3's subscriptions they won't see them because they're directly connected to the separate Channel2/ChannelSet2. This helper class keeps track of Consumer subscriptions and watches all ChannelSets for message events to ensure they're dispatched to the proper Consumer even when the client has been manually (miss)configured as the diagram illustrates.  This class is a singleton that maintains a table of all subscribed Consumers and ref-counts the number of active subscriptions per ChannelSet to determine whether it needs to be listening for message events from a given ChannelSet or not; it dispatches message events from these ChannelSets to the proper Consumer instance by invoking the Consumer's messageHandler() method directly.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.MessageAgent",
  "description": "The MessageAgent class provides the basic low-level functionality common to message handling for a destination.  <p><b>Note:</b> For advanced use only. Use this class for creating custom message agents like the existing Producer and Consumer classes.</p>  <p> All message agent classes, including the Producer and Consumer classes, extend MessageAgent and inherit the following tag attributes: </p> <pre>\\n &lt;mx:<i>tagname</i><br>\\n <b>Properties</b>\\n channelSet=&quot;<i>No default.</i>&quot;\\n clientId=&quot;<i>No default.</i>&quot;\\n connected=&quot;<i>false</i>&quot;\\n destination=&quot;<i>No default.</i>&quot;\\n requestTimeout=&quot;<i>-1</i>&quot;\\n subtopic=&quot;<i>No default.</i>&quot;\\n \\n \\n <b>Events</b>\\n acknowledge=&quot;<i>No default.</i>&quot;\\n channelConnect=&quot;<i>No default.</i>&quot;\\n channelDisconnect=&quot;<i>No default.</i>&quot;\\n channelFault=&quot;<i>No default.</i>&quot;\\n fault=&quot;<i>No default.</i>&quot;\\n propertyChange=&quot;<i>No default.</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.MessageResponder",
  "description": "The MessageResponder class handles a successful result or fault from a message destination. For each message that a Channel sends, the Channel creates a MessageResponder to handle the result. Upon a response, the Channel will invoke either the <code>result()</code> or <code>status()</code> callback on the MessageResponder. MessageResponder subclasses should override these methods to perform any necessary processing. For every response, whether a successful result or an error, the MessageResponder should invoke <code>acknowledge()</code> on its agent. If the response was a fault, the MessageResponder should also invoke <code>fault()</code> on its agent.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.Producer",
  "description": "A Producer sends messages to a destination. Producers dispatch a MessageAckEvent or MessageFaultEvent for each message they send depending upon whether the outbound message was sent and processed successfully or not. <p> The &lt;mx:Producer&gt; tag inherits all the tag attributes of its superclass, and adds the following tag attributes: </p> <pre>\\n &lt;mx:Producer\\n <b>Properties</b>\\n defaultHeaders=&quot;<i>No default.</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.RoyaleClient",
  "description": "Singleton class that stores the global Id for this Player instance that is server assigned when the client makes its initial connection to the server.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.channels.AMFChannel",
  "description": "The AMFChannel class provides the AMF support for messaging. You can configure this Channel to poll the server at an interval to approximate server push. You can also use this Channel with polling disabled to send RPC messages to remote destinations to invoke their methods.  <p> The AMFChannel relies on network services native to Flash Player and AIR, and exposed to ActionScript by the NetConnection class. This channel uses NetConnection exclusively, and creates a new NetConnection per instance. </p>  <p> Channels are created within the framework using the <code>ServerConfig.getChannel()</code> method. Channels can be constructed directly and assigned to a ChannelSet if desired. </p>  <p> Channels represent a physical connection to a remote endpoint. Channels are shared across destinations by default. This means that a client targetting different destinations may use the same Channel to communicate with these destinations. </p>  <p> When used in polling mode, this Channel polls the server for new messages based on the <code>polling-interval-seconds</code> property in the configuration file, and this can be changed by setting the <code>pollingInterval</code> property. The default value is 3 seconds. To enable polling, the channel must be connected and the <code>polling-enabled</code> property in the configuration file must be set to <code>true</code>, or the <code>pollingEnabled</code> property of the Channel must be set to <code>true</code>. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.channels.DirectHTTPChannel",
  "description": "The DirectHTTPChannel class is used to turn an HTTPRequestMessage object into an HTTP request. This Channel does not connect to a Flex endpoint.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.channels.HTTPChannel",
  "description": "The HTTPChannel class provides the HTTP support for messaging. You can configure this Channel to poll the server at an interval to approximate server push. You can also use this Channel with polling disabled to send RPC messages to remote destinations to invoke their methods.  <p> The HTTPChannel relies on network services native to Flash Player and AIR, and exposed to ActionScript by the URLLoader class. This channel uses URLLoader exclusively, and creates a new URLLoader per request. </p>  <p> Channels are created within the framework using the <code>ServerConfig.getChannel()</code> method. Channels can be constructed directly and assigned to a ChannelSet if desired. </p>  <p> Channels represent a physical connection to a remote endpoint. Channels are shared across destinations by default. This means that a client targetting different destinations may use the same Channel to communicate with these destinations. </p>  <p> When used in polling mode, this Channel polls the server for new messages based on the <code>polling-interval-seconds</code> property in the configuration file, and this can be changed by setting the <code>pollingInterval</code> property. The default value is 3 seconds. To enable polling, the channel must be connected and the <code>polling-enabled</code> property in the configuration file must be set to <code>true</code>, or the <code>pollingEnabled</code> property of the Channel must be set to <code>true</code>. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.channels.NetConnectionChannel",
  "description": "This NetConnectionChannel provides the basic NetConnection support for messaging. The AMFChannel and RTMPChannel both extend this class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.channels.PollingChannel",
  "description": "The PollingChannel class provides the polling behavior that all polling channels in the messaging system require.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.channels.SecureAMFChannel",
  "description": "The SecureAMFChannel class is identical to the AMFChannel class except that it uses a secure protocol, HTTPS, to send messages to an AMF endpoint.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.channels.SecureHTTPChannel",
  "description": "The SecureHTTPChannel class is identical to the HTTPChannel class except that it uses a secure protocol, HTTPS, to send messages to an HTTP endpoint.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.channels.URLVariables",
  "description": ""},
{ "name": "mx.messaging.channels.amfx.AMFXContext",
  "description": "Holds a list of complex object references, object trait info references, or string references generated while encoding or decoding and AMFX packet. Note that a new set of reference tables should be used per AMFX packet. Calling reset() will create new tables for each of these types of references.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.channels.amfx.AMFXDecoder",
  "description": "Decodes an AMFX packet into an ActionScript Object graph. Headers and the result body are accessed from the returned AMFXResult.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.channels.amfx.AMFXEncoder",
  "description": "Serializes an arbitrary ActionScript object graph to an XML representation that is based on Action Message Format (AMF) version 3.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.channels.amfx.AMFXHeader",
  "description": "An AMFX request or response packet can contain headers.  A Header must have a name, can be marked with a mustUnderstand boolean flag (the default is false), and the content can be any Object.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.channels.amfx.AMFXResult",
  "description": "A simple context to hold the result of an AMFX request.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.config.ConfigMap",
  "description": "The ConfigMap class provides a mechanism to store the properties returned by the server with the ordering of the properties maintained.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.config.LoaderConfig",
  "description": "This class acts as a context for the messaging framework so that it has access the URL and arguments of the SWF without needing access to the root MovieClip's LoaderInfo or Flex's Application class.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.config.ServerConfig",
  "description": "This class provides access to the server messaging configuration information. This class encapsulates information from the services-config.xml file on the client and is used by the messaging system to provide configured ChannelSets and Channels to the messaging framework.  <p>The XML source is provided during the compilation process. However, there is currently no internal restriction preventing the acquisition of this XML data by other means, such as network, local file system, or shared object at runtime.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.messaging.errors.ArgumentError",
  "description": "This is the base class for any messaging related error. It allows for less granular catch code.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.errors.ChannelError",
  "description": "This is the base class for any channel related errors. It allows for less granular catch code.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.errors.InvalidChannelError",
  "description": "This error is thrown when a Channel can't be accessed or is not valid for the current destination. This error is thrown by the following methods/properties within the framework: <ul> <li><code>ServerConfig.getChannel()</code> if the channel can't be found based on channel id.</li> </ul>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.errors.InvalidDestinationError",
  "description": "This error is thrown when a destination can't be accessed or is not valid. This error is thrown by the following methods/properties within the framework: <ul> <li><code>ServerConfig.getChannelSet()</code> if an invalid destination is specified.</li> <li><code>ServerConfig.getProperties()</code> if an invalid destination is specified.</li> <li><code>Channel.send()</code> if no destination is specified for the message to send.</li> <li><code>MessageAgent.destination</code> setter if the destination value is null or zero length.</li> <li><code>Producer.send()</code> if no destination is specified for the Producer or message to send.</li> <li><code>Consumer.subscribe()</code> if no destination is specified for the Consumer.</li> </ul>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.errors.MessageSerializationError",
  "description": "This error indicates a problem serializing a message within a channel. It provides a fault property which corresponds to an ErrorMessage generated when this error is thrown.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.errors.MessagingError",
  "description": "This is the base class for any messaging related error. It allows for less granular catch code.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.errors.NoChannelAvailableError",
  "description": "This error is thrown when no Channel is available to send messages. This error is thrown by the following methods within the framework: <ul> <li><code>ChannelSet.send()</code> if the ChannelSet has no channels.</li> </ul>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.events.ChannelEvent",
  "description": "The ChannelEvent is used to propagate channel events within the messaging system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.messaging.events.ChannelFaultEvent",
  "description": "The ChannelFaultEvent class is used to propagate channel fault events within the messaging system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.messaging.events.MessageAckEvent",
  "description": "The MessageAckEvent class is used to propagate acknowledge messages within the messaging system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.messaging.events.MessageEvent",
  "description": "The MessageEvent class is used to propagate messages within the messaging system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.messaging.events.MessageFaultEvent",
  "description": "The MessageFaultEvent class is used to propagate fault messages within the messaging system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.messaging.messages.AbstractMessage",
  "description": "Abstract base class for all messages. Messages have two customizable sections; headers and body. The <code>headers</code> property provides access to specialized meta information for a specific message instance. The <code>headers</code> property is an associative array with the specific header name as the key. <p> The body of a message contains the instance specific data that needs to be delivered and processed by the remote destination. The <code>body</code> is an object and is the payload for a message. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.AcknowledgeMessage",
  "description": "An AcknowledgeMessage acknowledges the receipt of a message that was sent previously. Every message sent within the messaging system must receive an acknowledgement.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.AcknowledgeMessageExt",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.messages.AsyncMessage",
  "description": "AsyncMessage is the base class for all asynchronous messages.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.AsyncMessageExt",
  "description": "A special serialization wrapper for AsyncMessages. This wrapper is used to enable the externalizable form of an AsyncMessage for serialization. The wrapper must be applied just before the message is serialized as it does not proxy any information to the wrapped message.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.messages.CommandMessage",
  "description": "The CommandMessage class provides a mechanism for sending commands to the server infrastructure, such as commands related to publish/subscribe messaging scenarios, ping operations, and cluster operations.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.CommandMessageExt",
  "description": "A special serialization wrapper for CommandMessage. This wrapper is used to enable the externalizable form of an CommandMessage for serialization. The wrapper must be applied just before the message is serialized as it does not proxy any information to the wrapped message.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.messages.ErrorMessage",
  "description": "The ErrorMessage class is used to report errors within the messaging system. An error message only occurs in response to a message sent within the system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.HTTPRequestMessage",
  "description": "HTTP requests are sent to the HTTP endpoint using this message type. An HTTPRequestMessage encapsulates content and header information normally found in HTTP requests made by a browser.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.IMessage",
  "description": "This interface defines the contract for message objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.ISmallMessage",
  "description": "A marker interface that is used to indicate that an IMessage has an alternative smaller form for serialization.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.MessagePerformanceInfo",
  "description": "The MessagePerformanceInfo class is used to capture various metrics about the sizing and timing of a message sent from a client to the server and its response message, as well as pushed messages from the server to the client. A response message should have two instances of this class among its headers, headers[MPII] - info for the client to server message, headers[MPIO] - info for the response message from server to client. A pushed message will have an extra headers and its headers will represent, headers[MPII] - info for the client to server message poll message (non RTMP) headers[MPIO] - info for the pushed message from server to client, headers[MPIP] - info for the message from the client that caused the push message",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.messaging.messages.MessagePerformanceUtils",
  "description": "The MessagePerformanceUtils utility class is used to retrieve various metrics about the sizing and timing of a message sent from a client to the server and its response message, as well as pushed messages from the server to the client. Metrics are gathered when corresponding properties on the channel used are enabled: &lt;record-message-times&gt; denotes capturing of timing information, &lt;record-message-sizes&gt; denotes capturing of sizing information.  <p>You can then use methods of this utility class to retrieve various performance information about the message that you have just received.</p>  <p>When these metrics are enabled an instance of this class should be created from a response, acknowledgement, or message handler using code such as below: </p>  <pre>\\n var mpiutil:MessagePerformanceUtils = new MessagePerformanceUtils(event.message);\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.messaging.messages.RemotingMessage",
  "description": "RemotingMessages are used to send RPC requests to a remote endpoint. These messages use the <code>operation</code> property to specify which method to call on the remote object. The <code>destination</code> property indicates what object/service should be used.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.messaging.messages.SOAPMessage",
  "description": "SOAPMessages are similar to HTTPRequestMessages. However, they always contain a SOAP XML envelope request body that will always be sent using HTTP POST. They also allow a SOAP action to be specified.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.modules.IModule",
  "description": "An interface that marks a class as being a module.",
"tags": [
{  "tagName": "see",
       "values": ["mx.modules.Module", "mx.modules.Module"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.modules.IModuleInfo",
  "description": "An interface that acts as a handle for a particular module. From this interface, the module status can be queried, its inner factory can be obtained, and it can be loaded or unloaded.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.modules.Module",
  "description": "The base class for MXML-based dynamically-loadable modules. You extend this class in MXML by using the <code>&lt;mx:Module&gt;</code> tag in an MXML file, as the following example shows:  <pre>\\n &lt;?xml version=&quot;1.0&quot;?&gt;\\n &lt;!-- This module loads an image. --&gt;\\n &lt;mx:Module  width=&quot;100%&quot; height=&quot;100%&quot; xmlns:mx=&quot;http://www.adobe.com/2006/mxml&quot;&gt;\\n \\n &lt;mx:Image source=&quot;trinity.gif&quot;/&gt;\\n \\n &lt;/mx:Module&gt;\\n </pre>  <p>Extending the Module class in ActionScript is the same as using the <code>&lt;mx:Module&gt;</code> tag in an MXML file. You extend this class if your module interacts with the framework. To see an example of an ActionScript class that extends the Module class, create an MXML file with the root tag of <code>&lt;mx:Module&gt;</code>. When you compile this file, set the value of the <code>keep-generated-actionscript</code> compiler option to <code>true</code>. The Flex compiler stores the generated ActionScript class in a directory called generated, which you can look at.</p>  <p>If your module does not include any framework code, you can create a class that extends the ModuleBase class. If you use the ModuleBase class, your module will typically be smaller than if you create a module that is based on the Module class because it does not have any framework class dependencies.</p>   cornerRadius=&quot;0&quot; fontWeight=&quot;normal&quot; paddingLeft=&quot;0&quot; verticalAlign=&quot;top|bottom|middle&quot; verticalScrollPolicy=&quot;auto|on|off&quot;",
"tags": [
{  "tagName": "see",
       "values": ["mx.modules.ModuleBase", "mx.modules.ModuleBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.modules.ModuleLoader",
  "description": "ModuleLoader is a component that behaves much like a SWFLoader except that it follows a contract with the loaded content. This contract dictates that the child SWF file implements IFlexModuleFactory and that the factory implemented can be used to create multiple instances of the child class as needed.  <p>The ModuleLoader is connected to deferred instantiation and ensures that only a single copy of the module SWF file is transferred over the network by using the ModuleManager singleton.</p>  <pre>\\n &lt;mx:ModuleLoader\\n <strong>Properties</strong>\\n url=&quot;<i>No default</i>&quot;\\n trustContent=&quot;false|true&quot;\\n \\n <strong>Events</strong>\\n error=&quot;<i>No default</i>&quot;\\n loading=&quot;<i>No default</i>&quot;\\n progress=&quot;<i>No default</i>&quot;\\n ready=&quot;<i>No default</i>&quot;\\n setup=&quot;<i>No default</i>&quot;\\n unload=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.modules.ModuleManager", "mx.controls.SWFLoader", "mx.modules.ModuleManager", "mx.controls.SWFLoader"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.modules.ModuleManager",
  "description": "The ModuleManager class centrally manages dynamically loaded modules. It maintains a mapping of URLs to modules. A module can exist in a state where it is already loaded (and ready for use), or in a not-loaded-yet state. The ModuleManager dispatches events that indicate module status. Clients can register event handlers and then call the <code>load()</code> method, which dispatches events when the factory is ready (or immediately, if it was already loaded).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.net.FileFilter",
  "description": ""},
{ "name": "mx.net.FileReference",
  "description": ""},
{ "name": "mx.net.NetConnection",
  "description": "The NetConnection class mimics the Flash NetConnection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.net.ObjectEncoding",
  "description": "The ObjectEncoding class contains constants for AMF Encoding.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.net.Responder",
  "description": "This class mimics flash.net.Responder which is different from mx.rpc.Responder",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.net.SharedObject",
  "description": "An emulation class to support the swf based Local SharedObject support. This implementation supports AMF encoded content (requires registerClassAlias before reading and writing to roundtrip instances of custom classes)"},
{ "name": "mx.net.SharedObjectFlushStatus",
  "description": "This class is not available for reflection in the javascript target",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "mx.net.SharedObjectJSON",
  "description": "An lighter weight emulation class to support the swf based Local SharedObject support. This implementation does not support AMF encoded content. It is intended for javascript implementations that require persistence, but do not already have the AMF support dependency as part of the application"},
{ "name": "mx.net.URLLoader",
  "description": "",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.net.beads.FileUploaderUsingFormData",
  "description": "This class does uploads using FormData in JS",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.net.supportClasses.ByteArrayFileLoader",
  "description": ""},
{ "name": "mx.netmon.NetworkMonitor",
  "description": "NetworkMonitor is a stub used by the framework and enterprise service classes to send information to the Flash Builder Network Monitor feature.  The NetworkMonitor declares a number of Impl functions which are to be filled in by a mix-in class provided by Flash Builder. If those functions are not assigned the stub will do nothing, will or return false or null as appropriate. We don't use a singleton or an instance object at the moment to simplify the code that calls the monitor.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.printing.FlexPrintJob",
  "description": "The FlexPrintJob class is a wrapper for the flash.printing.PrintJob class. It supports automatically slicing and paginating the output on multilple pages, and scaling the grid contents to fit the printer's page size.",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/FormPrintHeader.mxml -noswf", "examples/FormPrintFooter.mxml -noswf", "examples/FormPrintView.mxml -noswf", "examples/PrintDataGridExample.mxml", "examples/FormPrintHeader.mxml -noswf", "examples/FormPrintFooter.mxml -noswf", "examples/FormPrintView.mxml -noswf", "examples/PrintDataGridExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.printing.FlexPrintJobScaleType",
  "description": "Values for the <code>scaleType</code> property of the FlexPrintJob.addObject() method parameter.",
"tags": [
{  "tagName": "see",
       "values": ["FlexPrintJob#addObject()", "FlexPrintJob#addObject()"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.resources.IResourceBundle",
  "description": "The IResourceBundle and IResourceManager interfaces work together to provide localization support for Flex applications.  <p>There are three main concepts involved in localization: locales, resources, and resource bundles.</p>  <p>A locale specifies a language and a country for which your application has been localized. For example, the locale <code>&quot;en_US&quot;</code> specifies English as spoken in the United States. (See the mx.resources.Locale class for more information.)</p>  <p>A resource is a named value that is locale-dependent. For example, your application might have a resource whose name is <code>&quot;OPEN&quot;</code> and whose value for an English locale is <code>&quot;Open&quot;</code> but whose value for a French locale is <code>&quot;Ouvrir&quot;</code>.</p>  <p>A resource bundle is a named group of resources whose values have been localized for a particular locale. A resource bundle is identified by the combination of its <code>bundleName</code> and its <code>locale</code>, and has a <code>content</code> Object that contains the name-value pairs for the bundle's resources.</p>  <p>The IResourceBundle interface represents a specific resource bundle. However, most applications will only need to use IResourceManager. A single ResourceManager object implementing this interface manages multiple resource bundles, possibly for multiple locales, and provides access to the resources that they contain. For example, you can retrieve a specific resource as a String by calling <code>resourceManager.getString(bundleName, resourceName)</code>. By changing the <code>localeChain</code> property of the ResourceManager, you can change which resource bundles are searched for resource values.</p>  <p>Generally, you do not create resource bundles yourself; instead, they are usually compiled from ~~.properties files. A properties file named MyResources.properties produces a resource bundle with <code>&quot;MyResources&quot;</code> for its <code>bundleName</code>. You generally produce multiple versions of each properties file, one for each locale that your application supports.</p>  <p>Flex properties files are similar to Java properties files, except that they also support MXML's <code>Embed()</code> and <code>ClassReference()</code> directives. These directives work the same way in a properties file as they do in a CSS file, producing class references. Also, the encoding for Flex properties files is always assumed to be UTF-8.</p>  <p>The Flex framework's resources have been localized for U.S. English (the <code>&quot;en_US&quot;</code> locale) and for Japanese (the <code>&quot;ja_JP&quot;</code> locale). The framework resources are organized into multiple bundles corresponding to framework packages; for example, the &quot;formatters&quot; bundle is used by classes in the mx.formatters package. (There is also a &quot;SharedResources&quot; bundle for resources used by multiple packages.)</p>  <p>The properties files for the framework resources, such as formatters.properties, can be found in the frameworks/projects/framework/bundles/{locale}/src directories of the Flex SDK. Your applications normally link against the Flex framework as a precompiled library, framework.swc, in the frameworks/libs directory. This library has no resources in it. Instead, the framework resources have been compiled into separate resource bundle libraries such as framework_rb.swc. These are located in the frameworks/locales/{locale} directories and your application must also link in one or more of these.</p>  <p>You are free to organize your application's own resources into whatever bundles you find convenient. If you localize your application for locales other than <code>&quot;en_US&quot;</code> and <code>&quot;ja_JP&quot;</code>, you should localize the framework's properties files for those locales as well and compile additional resource bundle libaries for them.</p>  <p>When your application starts, the ResourceManager is automatically populated with whatever resource bundles were compiled into the application. If you create a code module, by default the resources that its classes need are compiled into the module. When the module is loaded into an application, any bundles that the application does not already have are added to the ResourceManager.</p>  <p>You can compile &quot;resource modules&quot; that have only resources in them, and load them with the <code>loadResourceModule()</code> method of the ResourceManager. With resource modules, you can support multiple locales by loading the resources you need at run time rather than compiling them into your application.</p>  <p>Although the ResourceManager is normally populated with resource bundles that were compiled into your application or loaded from modules, you can also programmatically create resource bundles and add them to the ResourceManager yourself with the <code>addResourceBundle()</code> method.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.resources.ResourceBundle", "mx.resources.IResourceManager", "mx.resources.ResourceManager", "mx.resources.ResourceBundle", "mx.resources.IResourceManager", "mx.resources.ResourceManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.resources.IResourceManager",
  "description": "The APIs of the IResourceManager interface provide localization support for Flex applications.  <p>There are three main concepts involved in localization: locales, resources, and resource bundles.</p>  <p>A locale specifies a language and a country for which your application has been localized. For example, the locale <code>&quot;en_US&quot;</code> specifies English as spoken in the United States. (See the mx.resources.Locale class for more information.)</p>  <p>A resource is a named value that is locale-dependent. For example, your application might have a resource whose name is <code>&quot;OPEN&quot;</code> and whose value for an English locale is <code>&quot;Open&quot;</code> but whose value for a French locale is <code>&quot;Ouvrir&quot;</code>.</p>  <p>A resource bundle is a named group of resources whose values have been localized for a particular locale. A resource bundle is identified by the combination of its <code>bundleName</code> and its <code>locale</code>, and has a <code>content</code> object that contains the name-value pairs for the bundle's resources. See the documentation for mx.resources.IResourceBundle for information about how you typically create resource bundles from properties files.</p>  <p>A single ResourceManager object implementing the IResourceManager interface manages multiple resource bundles, possibly for multiple locales, and provides access to the resources that they contain. For example, you can retrieve a specific resource as a String by calling <code>resourceManager.getString(bundleName, resourceName)</code>.</p>  <p>All classes that extend UIComponent, Formatter, or Validator have a <code>resourceManager</code> property that provides a reference to the object implementing this interface. Other classes can call <code>ResourceManager.getInstance()</code> to obtain this object.</p>  <p>Resource retrieval methods such as <code>getString()</code> search for resources in the locales specified by the <code>localeChain</code> property. By changing this property, you can make your application suddenly use, for example, Japanese rather than English resources.</p>  <p>When your application starts, the ResourceManager is automatically populated with whatever resource bundles were compiled into the application. If you create a code module, by default the resources that its classes need are compiled into the module. When the module is loaded into an application, any bundles that the application does not already have are added to the ResourceManager.</p>  <p>You can compile &quot;resource modules&quot; which have only resources in them, and load them with the <code>loadResourceModule()</code> method of IResourceManager. With resource modules, you can support multiple locales by loading the resources you need at run time rather than compiling them into your application.</p>  <p>Although the ResourceManager is normally populated with resource bundles that were compiled into your application or loaded from modules, you can also programmatically create resource bundles and add them to the ResourceManager yourself with the <code>addResourceBundle()</code> method.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.resources.ResourceManager", "mx.resources.IResourceBundle", "mx.resources.ResourceBundle", "mx.resources.ResourceManager", "mx.resources.IResourceBundle", "mx.resources.ResourceBundle"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.resources.Locale",
  "description": "The Locale class can be used to parse a locale String such as <code>&quot;en_US_MAC&quot;</code> into its three parts: a language code, a country code, and a variant.  <p>The localization APIs in the IResourceManager and IResourceBundle interfaces use locale Strings rather than Locale instances, so this class is seldom used in an application.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.resources.IResourceBundle", "mx.resources.IResourceManager", "mx.resources.IResourceBundle", "mx.resources.IResourceManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.resources.LocaleSorter",
  "description": "The APIs of the LocaleSorter class provides the sorting functionality of application locales against system preferences.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.resources.ResourceBundle",
  "description": "Provides an implementation of the IResourceBundle interface. The IResourceManager and IResourceBundle interfaces work together to provide internationalization support for Flex applications.  <p>A Flex application typically has multiple instances of this class, all managed by a single instance of the ResourceManager class. It is possible to have ResourceBundle instances for multiple locales, one for each locale. There can be multiple ResourceBundle instances with different bundle names.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.resources.IResourceBundle", "mx.resources.IResourceManager", "mx.resources.IResourceBundle", "mx.resources.IResourceManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.resources.ResourceManager",
  "description": "This class is used to get a single instance of the IResourceManager implementation. The IResourceManager and IResourceBundle interfaces work together to provide internationalization support for Flex applications.  <p>A single instance of an IResourceManager implementation manages all localized resources for a Flex application.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.resources.IResourceManager", "mx.resources.IResourceBundle", "mx.resources.IResourceManager", "mx.resources.IResourceBundle"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.resources.ResourceManagerImpl",
  "description": "This class provides an implementation of the IResourceManager interface. The IResourceManager and IResourceBundle interfaces work together to provide internationalization support for Flex applications.  <p>A single instance of this class manages all localized resources for a Flex application.</p>",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "see",
       "values": ["mx.resources.IResourceManager", "mx.resources.IResourceBundle", "mx.resources.IResourceManager", "mx.resources.IResourceBundle"]}  ]},
{ "name": "mx.rpc.AbstractInvoker",
  "description": "An invoker is an object that actually executes a remote procedure call (RPC). For example, RemoteObject, HTTPService, and WebService objects are invokers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.AbstractOperation",
  "description": "The AbstractOperation class represents an individual method on a service. An Operation can be called either by invoking the function of the same name on the service or by accessing the Operation as a property on the service and calling the <code>send()</code> method.",
"tags": [
{  "tagName": "see",
       "values": ["mx.rpc.AbstractService", "mx.rpc.remoting.RemoteObject", "mx.rpc.soap.WebService", "mx.rpc.AbstractService", "mx.rpc.remoting.RemoteObject", "mx.rpc.soap.WebService"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.AbstractService",
  "description": "The AbstractService class is the base class for the HTTPMultiService, WebService, and RemoteObject classes. This class does the work of creating Operations which do the actual execution of remote procedure calls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.ActiveCalls",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.AsyncDispatcher",
  "description": "This class provides a mechanism for dispatching a method asynchronously.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.AsyncRequest",
  "description": "The AsyncRequest class provides an abstraction of messaging for RPC call invocation. An AsyncRequest allows multiple requests to be made on a remote destination and will call back to the responder specified within the request when the remote request is completed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.AsyncResponder",
  "description": "This class provides an RPC specific implementation of <code>mx.rpc.IResponder</code>.  It allows the creator to associate data (a token) and methods that should be called when a request is completed.  The result method specified must have the following signature: <code><pre>\\n public function myResultFunction(result:Object, token:Object = null):void;\\n </pre></code>  The fault method specified must have the following signature: <code><pre>\\n public function myFaultFunction(error:Object, token:Object = null):void;\\n </pre></code>  Any other signature will result in a runtime error.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.AsyncToken",
  "description": "This class provides a place to set additional or token-level data for asynchronous RPC operations.  It also allows an IResponder to be attached for an individual call. The AsyncToken can be referenced in <code>ResultEvent</code> and <code>FaultEvent</code> from the <code>token</code> property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.CallResponder",
  "description": "This component helps you manage the results for asynchronous calls made from RPC based services, typically from MXML components.  While each individual service and operation dispatches result and fault events, it is common to need to use the same operation in different parts of your application.  Using one event listener or lastResult value across the entire application can be awkward.  Rather than creating two service components which refer to the same service, you can use a simple lightweight CallResponder to manage the event listeners and lastResult value for a specific invocation of a service. <p> You set the token property of this component to the AsyncToken returned by the service.  You can then add event listeners on this component instead of having to add them to each AsyncToken returned.   This component also maintains the lastResult property which is a copy of the value returned by the last successful result event dispatched by a token monitored by this service.  Though you can bind to either the <code>callResponder.token.result</code> or <code>callResponder.lastResult</code>, the latter will be preserved while a second call to the same service is in progress while the former will be reset as soon as a new service invocation is started. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.Fault",
  "description": "The Fault class represents a fault in a remote procedure call (RPC) service invocation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.rpc.IResponder",
  "description": "This interface provides the contract for any service that needs to respond to remote or asynchronous calls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.Responder",
  "description": "This class provides a default implementation of the mx.rpc.IResponder interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.events.AbstractEvent",
  "description": "The base class for events that RPC services dispatch.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.events.FaultEvent",
  "description": "This event is dispatched when an RPC call has a fault.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.events.HeaderEvent",
  "description": "The event that indicates an RPC operation, such as a WebService SOAP request, returned a header in the response. A new header event is dispatched for each service header.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.events.InvokeEvent",
  "description": "The event that indicates an RPC operation has been invoked.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.events.ResultEvent",
  "description": "The event that indicates an RPC operation has successfully returned a result.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.events.SchemaLoadEvent",
  "description": "This event is dispatched when an XML Schema has loaded sucessfully.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.events.WSDLLoadEvent",
  "description": "The WSDLLoadEvent class represents the event object for the event dispatched when a WSDL XML document has loaded successfully.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.events.XMLLoadEvent",
  "description": "The XMLLoadEvent class is a base class for events that are dispatched when an RPC service successfully loaded an XML document.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.http.AbstractOperation",
  "description": "An Operation used specifically by HTTPService or HTTPMultiService.  An Operation is an individual operation on a service usually corresponding to a single operation on the server side.  An Operation can be called either by invoking the function of the same name on the service or by accessing the Operation as a property on the service and calling the <code>send(param1, param2)</code> method.  HTTP services also support a sendBody method which allows you to directly specify the body of the HTTP response.  If you use the send(param1, param2) method, the body is typically formed by combining the argumentNames property of the operation with the parameters sent.  An Object is created which uses the argumentNames[i] as the key and the corresponding parameter as the value.  <p>The exact way in which the HTTP operation arguments is put into the HTTP body is determined by the serializationFilter used.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.http.HTTPMultiService",
  "description": "You use the <code>&lt;mx:HTTPMultiService&gt;</code> tag to represent a collection of http operations.  Each one has a URL, method, parameters and return type.  <p>You can set attributes such as the URL and method on the HTTPMultiService tag to act as defaults for values set on each individual operation tag.  The URL of the HTTPMultiService serves as the base url (meaning the prefix) for any relative urls set on the http operation tags. Each http operation has a <code>send()</code> method, which makes an HTTP request to the specified URL, and an HTTP response is returned. </p>  <p>You can pass parameters to the specified URL which are used to put data into the HTTP request. The contentType property specifies a mime-type which is used to determine the over-the-wire data format (such as HTTP form encoding or XML).  </p>  <p>You can also use a serialization filter to implement a custom resultFormat such as JSON. When you do not go through the server-based proxy service, you can use only HTTP GET or POST methods. However, when you set the <code>useProxy </code> property to true and you use the server-based proxy service, you can also use the HTTP HEAD, OPTIONS, TRACE, and DELETE methods.</p>  <p><b>Note:</b> Unlike the HTTPService class, the HTTPMultiService class does not define a <code>request</code> property.</p>  <p><b>Note:</b> Due to a software limitation, like HTTPService, the HTTPMultiService does not generate user-friendly error messages when using GET and not using a proxy.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.rpc.http.HTTPService", "mx.rpc.http.HTTPService"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.http.HTTPService",
  "description": "You use the HTTPService class to represent an HTTPService object in ActionScript. When you call the HTTPService object's <code>send()</code> method, it makes an HTTP request to the specified URL, and an HTTP response is returned. Optionally, you can pass parameters to the specified URL. When you do not go through the server-based proxy service, you can use only HTTP GET or POST methods. However, when you set the useProxy  property to true and you use the server-based proxy service, you can also use the HTTP HEAD, OPTIONS, TRACE, and DELETE methods.  <p><b>Note:</b> Due to a software limitation, HTTPService does not generate user-friendly error messages when using GET.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.rpc.http.mxml.HTTPService", "mx.rpc.http.mxml.HTTPService"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.http.Operation",
  "description": "An Operation used specifically by an HTTPMultiService.  An Operation is an individual operation on a service usually corresponding to a single operation on the server side.  An Operation can be called either by invoking the function of the same name on the service or by accessing the Operation as a property on the service and calling the <code>send(param1, param2)</code> method.  HTTP services also support a sendBody method which allows you to directly specify the body of the HTTP response.  If you use the send(param1, param2) method, the body is typically formed by combining the argumentNames property of the operation with the parameters sent.  An Object is created which uses the argumentNames[i] as the key and the corresponding parameter as the value.  <p>The exact way in which the HTTP operation arguments is put into the HTTP body is determined by the serializationFilter used.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.http.SerializationFilter",
  "description": "This class is useful for framework developers wishing to plug in or modify the HTTP services to use a new serialization format.  This allows you to invoke methods on the service object and control how parameters are mapped to a specific serialiation format such as XML, JSON, etc.  The SerializationFilter mechanism allows you to add a new resultFormat as well.  <p> An instance of this class can manage formatting HTTP requests, responses, and converting their parameters.  When you use HTTPService or HTTPMultiService, you are usually talking to a server which expects the data to be provided in a specific format - for example, URL encoded values for a type HTML form, XML values or another serialization format such as JSON.  SerializationFilter allows you to customize how HTTPService and HTTPMultiService convert an operation's parameters into the body of the HTTP request and how the response is converted into the return value of the operation.  Framework developers can introduce a new serialization format to the system by providing a new implementation of the SerializationFilter and use these components and all of the frameworks and tools built on these components without having to know the details of the format itself. </p>  <p>The first thing you do is to extend the SerializationFilter and override one or more of the conversion methods.   The filter allows you to turn the ordered list of parameters into a request body, modify the request body, modify the content type used in the request, modify the actual URL used in the request, and convert the response data into the result object returned in the result event of the service.</p>  <p>There are two ways to specify the SerializationFilter for a particular HTTPService, or HTTPMultiService.  You can either set the serializationFilter property on the service or you can statically register a SerializationFilter for a new result format.  If you use this approach, simply by specifying the resultFormat you can use a pre-registered SerializationFilter.  So for example, you might register a SerializationFilter for the &quot;json&quot; type and can then use that filter by setting resultFormat=&quot;json&quot;.</p>  <p> Note that HTTPService only provides methods which directly take the request body and so does not use the &quot;serializeParameters&quot; method. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.http.mxml.HTTPService",
  "description": "You use the <code>&lt;mx:HTTPService&gt;</code> tag to represent an HTTPService object in an MXML file. When you call the HTTPService object's <code>send()</code> method, it makes an HTTP request to the specified URL, and an HTTP response is returned. Optionally, you can pass parameters to the specified URL. When you do not go through the server-based proxy service, you can use only HTTP GET or POST methods. However, when you set the useProxy  property to true and you use the server-based proxy service, you can also use the HTTP HEAD, OPTIONS, TRACE, and DELETE methods.  <p><b>Note:</b> Due to a software limitation, HTTPService does not generate user-friendly error messages when using GET. </p>  <p> The &lt;mx:HTTPService&gt; tag accepts the following tag attributes: </p> <pre>\\n &lt;mx:HTTPService\\n <b>Properties</b>\\n concurrency=&quot;multiple|single|last&quot;\\n contentType=&quot;application/x-www-form-urlencoded|application/xml&quot;\\n destination=&quot;<i>DefaultHTTP</i>&quot;\\n id=&quot;<i>No default.</i>&quot;\\n method=&quot;GET|POST|HEAD|OPTIONS|PUT|TRACE|DELETE&quot;\\n resultFormat=&quot;object|array|xml|e4x|flashvars|text&quot;\\n showBusyCursor=&quot;false|true&quot;\\n makeObjectsBindable=&quot;false|true&quot;\\n url=&quot;<i>No default.</i>&quot;\\n useProxy=&quot;false|true&quot;\\n xmlEncode=&quot;<i>No default.</i>&quot;\\n xmlDecode=&quot;<i>No default.</i>&quot;\\n \\n <b>Events</b>\\n fault=&quot;<i>No default.</i>&quot;\\n result=&quot;<i>No default.</i>&quot;\\n /&gt;\\n </pre>  The <code>&lt;mx:HTTPService&gt;</code> tag can have a single &lt;mx:request&gt; tag under which the parameters can be specified. </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HTTPServiceExample.mxml -noswf", "examples/HTTPServiceExample.mxml -noswf"]},
    {  "tagName": "see",
       "values": ["mx.rpc.http.HTTPService", "mx.validators.Validator", "mx.managers.CursorManager", "mx.rpc.http.HTTPService", "mx.validators.Validator", "mx.managers.CursorManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.mxml.Concurrency",
  "description": "Concurrency is set via MXML based access to RPC services to indicate how to handle multiple calls to the same service. The default concurrency value is <code>multiple</code>.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.mxml.IMXMLSupport",
  "description": "Implementing this interface means that an RPC service can be used in an MXML document by using MXML tags.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.remoting.CompressedRemoteObject",
  "description": "A RemoteObject that performs automatic serialization/deserialization of results.  It deserializes the compressed ByteArray in order to optimize the transfer time. TODO improve to serialize the sending."},
{ "name": "mx.rpc.remoting.Operation",
  "description": "An Operation used specifically by RemoteObjects. An Operation is an individual method on a service. An Operation can be called either by invoking the function of the same name on the service or by accessing the Operation as a property on the service and calling the <code>send()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.remoting.RemoteObject",
  "description": "The RemoteObject class gives you access to classes on a remote application server.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.remoting.mxml.CompressedRemoteObject",
  "description": "A RemoteObject that performs automatic serialization/deserialization of results.  It deserializes the compressed ByteArray in order to optimize the transfer time. TODO improve to serialize the sending."},
{ "name": "mx.rpc.remoting.mxml.Operation",
  "description": "The Operation used for RemoteObject when created in an MXML document.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.remoting.mxml.RemoteObject",
  "description": "Use the &lt;mx:RemoteObject&gt; tag to represent an HTTPService object in an MXML file. This tag gives you access to the methods of Java objects using Action Message Format (AMF) encoding.  <p> The &lt;mx:RemoteObject&gt; tag accepts the following tag attributes: </p> <pre>\\n &lt;mx:RemoteObject\\n <b>Properties</b>\\n concurrency=&quot;multiple|single|last&quot;\\n destination=&quot;<i>No default.</i>&quot;\\n id=&quot;<i>No default.</i>&quot;\\n endpoint=&quot;<i>No default.</i>&quot;\\n showBusyCursor=&quot;false|true&quot;\\n source=&quot;<i>No default.</i>&quot; (currently, Adobe ColdFusion only)\\n makeObjectsBindable=&quot;false|true&quot;\\n \\n <b>Events</b>\\n fault=&quot;<i>No default.</i>&quot;\\n result=&quot;<i>No default.</i>&quot;\\n /&gt;\\n </pre> </p>  <p> &lt;mx:RemoteObject&gt; can have multiple &lt;mx:method&gt; tags, which have the following tag attributes: </p> <pre>\\n &lt;mx:method\\n <b>Properties</b>\\n concurrency=&quot;multiple|single|last&quot;\\n name=&quot;<i>No default, required.</i>&quot;\\n makeObjectsBindable=&quot;false|true&quot;\\n \\n <b>Events</b>\\n fault=&quot;<i>No default.</i>&quot;\\n result=&quot;<i>No default.</i>&quot;\\n /&gt;\\n </pre> <p> It then can have a single &lt;mx:arguments&gt; child tag which is an array of objects that is passed in order.",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RemoteObjectExample.mxml -noswf", "examples/RemoteObjectExample.mxml -noswf"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.AbstractWebService",
  "description": "AbstractWebService is an abstract base class for implementations that provide RPC access to SOAP-based web services. This class does not load WSDL descriptions at runtime.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.ISOAPDecoder",
  "description": "Decodes the SOAP response for a particular operation."},
{ "name": "mx.rpc.soap.ISOAPEncoder",
  "description": "An ISOAPEncoder is used to create SOAP 1.1 formatted requests for a web service operation. A WSDLOperation provides the definition of how a SOAP request should be formatted and therefore must be set before a call is made to encode()."},
{ "name": "mx.rpc.soap.LoadEvent",
  "description": "This event is dispatched when a WSDL XML document has loaded successfully.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.Operation",
  "description": "An Operation used specifically by WebServices. An Operation is an individual method on a service. An Operation can be called either by invoking the function of the same name on the service or by accessing the Operation as a property on the service and calling the <code>send()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.SOAPConstants",
  "description": "A helper class listing all of the constants required to encode and decode SOAP messages.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.SOAPDecoder",
  "description": "Decodes the SOAP response for a particular operation",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.SOAPEncoder",
  "description": "A SOAPEncoder is used to create SOAP 1.1 formatted requests for a web service operation. A WSDLOperation provides the definition of how SOAP request should be formatted and thus must be set before a call is made to encode().  TODO: Create a SOAP 1.2 specific subclass of this encoder.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.SOAPFault",
  "description": "A subclass of mx.rpc.Fault that provides SOAP specific information from a SOAP envelope Fault element.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.SOAPHeader",
  "description": "You use a SOAPHeader to specify the headers that need to be added to a SOAP envelope of a WebService Operation request.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.SOAPResult",
  "description": "A context for the result of a SOAP based Remote Procedure Call.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.WebService",
  "description": "The WebService class provides access to SOAP-based web services on remote servers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.mxml.Operation",
  "description": "An Operation used specifically by WebServices. An Operation is an individual method on a service. An Operation can be called either by invoking the function of the same name on the service or by accessing the Operation as a property on the service and calling the <code>send()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.mxml.WebService",
  "description": "The &lt;mx:WebService&gt; tag gives you access to the operations of SOAP-compliant web services. <p> The &lt;mx:WebService&gt; tag accepts the following tag attributes: </p> <pre>\\n &lt;mx:WebService\\n <b>Properties</b>\\n concurrency=&quot;multiple|single|last&quot;\\n destination=&quot;<i>No default.</i>&quot;\\n id=&quot;<i>No default.</i>&quot;\\n serviceName=&quot;<i>No default.</i>&quot;\\n showBusyCursor=&quot;false|true&quot;\\n makeObjectsBindable=&quot;false|true&quot;\\n useProxy=&quot;false|true&quot;\\n wsdl=&quot;<i>No default.</i>&quot;\\n \\n <b>Events</b>\\n fault=&quot;<i>No default.</i>&quot;\\n result=&quot;<i>No default.</i>&quot;\\n /&gt;\\n </pre> </p> <p> An &lt;mx:WebService&gt; tag can have multiple &lt;mx:operation&gt; tags, which have the following tag attributes: </p> <pre>\\n &lt;mx:operation\\n <b>Properties</b>\\n concurrency=&quot;multiple|single|last&quot;\\n name=<i>No default, required.</i>\\n resultFormat=&quot;object|xml|e4x&quot;\\n makeObjectsBindable=&quot;false|true&quot;\\n \\n \\n <b>Events</b>\\n fault=<i>No default.</i>\\n result=<i>No default.</i>\\n /&gt;\\n </pre>  An &lt;mx:Operation&gt; tag contains an &lt;mx:request&gt; tag. To specify an XML structure in an &lt;mx:request&gt; tag, you must set the value of the tag's <code>format</code> attribute to <code>&quot;xml&quot;</code>. Otherwise, the body is converted into Objects.",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/WebServiceExample.mxml -noswf", "examples/WebServiceExample.mxml -noswf"]},
    {  "tagName": "mxml",
       "values": ["", ""]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.soap.types.ApacheDocumentType",
  "description": "Marshalls between an Apache SOAP Document type and ActionScript XML.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.types.DataSetType",
  "description": "Marshalls between a .NET DataSet diffgram and ActionScript.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.types.ICustomSOAPType",
  "description": "Implementations handle encoding and decoding between custom SOAP types and ActionScript.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.types.MapType",
  "description": "Marshalls between the SOAP representation of a java.util.Map and ActionScript.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.types.QueryBeanType",
  "description": "Marshalls between the SOAP representation of a ColdFusion Query (aka a &quot;Query Bean&quot;) and ActionScript.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.types.RowSetType",
  "description": "Marshalls between the SOAP representation of a ColdFusion Query (aka a &quot;Query Bean&quot;) and ActionScript.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.soap.types.SOAPArrayType",
  "description": "Marshalls SOAP 1.1 encoded Arrays between XML and ActionScript.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDL",
  "description": "Manages a WSDL top-level <code>definitions</code> element. WSDL definitions may contain imports to other WSDL definitions. Only SOAP bindings are supported.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLBinding",
  "description": "A binding defines the message format and protocol for messages sent to and from operations as defined by a particular portType. <p> Currently only SOAP binding is supported for WSDL. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.wsdl.WSDLConstants",
  "description": "Manages the constants for a particular version of WSDL (and its accompanying version of SOAP).  The default version is WSDL 1.1.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLEncoding",
  "description": "SOAP specific WSDL bindings that describe how to encode messages for a given operation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLLoader",
  "description": "Manages the loading of a WSDL at runtime, including all imports for WSDL",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLMessage",
  "description": "From the WSDL 1.1 specification:  Messages consist of one or more logical parts. Each part is associated with a type from some type system using a message-typing attribute. The set of message-typing attributes is extensible.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLMessagePart",
  "description": "Parts are a flexible mechanism for describing the content of a message.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLOperation",
  "description": "A <code>WSDLOperation</code> describes both the interface for messages being sent to and from an operation and the SOAP encoding style for operation binding.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLPort",
  "description": "A port defines an individual endpoint by specifying a single address for a binding.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLPortType",
  "description": "A portType lists a set of named operations and defines abstract interface or &quot;messages&quot; used to interoperate with each operation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.wsdl.WSDLService",
  "description": "A service groups a set of related ports together for a given WSDL.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.ContentProxy",
  "description": "Wraps the value of an element's or child type's content so that it can be added as a property to a parent complex type at a later time when processing against a Schema.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.DecodingContext",
  "description": "This internal utility class is used by XMLDecoder, to store some properties relevant to the current context, such as which is the current element from an XMLList of values, which elements were deserialized by <any> definitions, etc.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.IXMLDecoder",
  "description": "Decodes an XML document to an ActionScript object graph based on XML Schema definitions.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.xml.IXMLEncoder",
  "description": "Encodes an ActionScript object graph to XML based on an XML schema.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.xml.IXMLSchemaInstance",
  "description": "An ActionScript type should implement this interface when it needs to instruct an XML Schema based encoder (such as the WebService SOAP client) which concrete type definition to use while encoding instances of the type.  <p>Note that anonymous ActionScript objects can also specify a qualified type by wrapping an object in an instance of mx.utils.ObjectProxy and setting the <code>object_proxy::type</code> property with the appropriate QName.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.utils.ObjectProxy", "mx.utils.ObjectProxy"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.xml.NamespaceUtil",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.QualifiedResourceManager",
  "description": "QualifiedResourceManager is a helper class that simply maintains the order that resources were added and maps a target namespace to one or more resources.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.xml.Schema",
  "description": "Manages an XML Schema Definition. Schemas can import other schemas.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.SchemaConstants",
  "description": "Establishes the constants for a particular version of XML Schema Definition (XSD) and XML Schema Instance (XSI). The default namespaces are http://www.w3.org/2001/XMLSchema and http://www.w3.org/2001/XMLSchema-instance respectively (which correspond to XML Schema 1.1).",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.SchemaDatatypes",
  "description": "Establishes the datatypes for a particular version of XML Schema. The default namespace is http://www.w3.org/2001/XMLSchema representing XML Schema 1.1.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.SchemaLoader",
  "description": "Manages the loading of an XML Schema at runtime, including all imports and includes.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.SchemaManager",
  "description": "SchemaManager manages multiple Schema definitions by target namespace.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.SchemaMarshaller",
  "description": "FIXME: Derivations and restrictions need to be considered in addition to base schema types",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.SchemaProcessor",
  "description": "This abstract class traverses an XML Schema to assist with marshalling typed data between XML and ActionScript.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.SchemaTypeRegistry",
  "description": "XMLDecoder uses this class to map an XML Schema type by QName to an ActionScript Class so that it can create strongly typed objects when decoding content. If the type is unqualified the QName uri may be left null or set to the empty String. <p> It is important to note that the desired Class must be linked into the SWF and possess a default constructor in order for the XMLDecoder to create a new instance of the type, otherwise an anonymous Object will be used to hold the decoded properties. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.xml.SimpleXMLDecoder",
  "description": "The SimpleXMLDecoder class deserialize XML into a graph of ActionScript objects. Use  this class when no schema information is available.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.xml.SimpleXMLEncoder",
  "description": "The SimpleXMLEncoder class takes ActionScript Objects and encodes them to XML using default serialization.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.rpc.xml.TypeIterator",
  "description": "A helper class to iterate over an Array, IList, or XMLList.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.XMLDecoder",
  "description": "Decodes an XML document to an object graph based on XML Schema definitions.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.XMLEncoder",
  "description": "Encodes an ActionScript Object graph to XML based on an XML Schema.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.rpc.xml.XMLLoader",
  "description": "Base class to help manage loading of an XML document at runtime.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.skins.Border",
  "description": "The Border class is an abstract base class for various classes that draw borders, either rectangular or non-rectangular, around UIComponents. This class does not do any actual drawing itself.  <p>If you create a new non-rectangular border class, you should extend this class. If you create a new rectangular border class, you should extend the abstract subclass RectangularBorder.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.skins.ProgrammaticSkin",
  "description": "This class is the base class for skin elements which draw themselves programmatically.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.skins.RectangularBorder",
  "description": "The RectangularBorder class is an abstract base class for various classes that draw rectangular borders around UIComponents.  <p>This class implements support for the <code>backgroundImage</code>, <code>backgroundSize</code>, and <code>backgroundAttachment</code> styles.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.states.State",
  "description": "The State class defines a view state, a particular view of a component. For example, a product thumbnail could have two view states; a base view state with minimal information, and a rich view state with additional information. The <code>overrides</code> property specifies a set of child classes to add or remove from the base view state, and properties, styles, and event handlers to set when the view state is in effect.  <p>You use the State class in the <code>states</code> property of Flex components. You can only specify a <code>states</code> property at the root of an application or a custom control, not on child controls.</p>  <p>You enable a view state by setting a component's <code>currentState</code> property.</p>  <p>The <code>&lt;mx:State&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;mx:State\\n <b>Properties</b>\\n basedOn=&quot;null&quot;\\n name=&quot;null&quot;\\n overrides=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/StatesExample.mxml", "examples/StatesExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.states.AddChild", "mx.states.RemoveChild", "mx.states.SetEventHandler", "mx.states.SetProperty", "mx.states.SetStyle", "mx.states.Transition", "mx.states.AddChild", "mx.states.RemoveChild", "mx.states.SetEventHandler", "mx.states.SetProperty", "mx.states.SetStyle", "mx.states.Transition"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.states.Transition",
  "description": "The Transition class defines a set of effects that play in response to a change of view state. While a view state definition defines how to change states, a transition defines the order in which visual changes occur during the state change.  <p>To define a transition, you set the <code>transitions</code> property of an Application to an Array of Transition objects. </p>  <p>You use the <code>toState</code> and <code>fromState</code> properties of the Transition class to specify the state changes that trigger the transition. By default, both the <code>fromState</code> and <code>toState</code> properties are set to &quot;&#42;&quot;, meaning apply the transition to any changes to the view state.</p>  <p>You can use the <code>fromState</code> property to explicitly specify a view state that your are changing from, and the <code>toState</code> property to explicitly specify a view state that you are changing to. If a state change matches two transitions, the <code>toState</code> property takes precedence over the <code>fromState</code> property. If more than one transition match, Flex uses the first definition in the transition array. </p>  <p>You use the <code>effect</code> property to specify the Effect object to play when you apply the transition. Typically, this is a composite effect object, such as the Parallel or Sequence effect, that contains multiple effects, as the following example shows:</p><pre>\\n \\n &lt;mx:Transition id=&quot;myTransition&quot; fromState=&quot;&#42;&quot; toState=&quot;&#42;&quot;&gt;\\n &lt;mx:Parallel&gt;\\n ...\\n &lt;/mx:Parallel&gt;\\n &lt;/mx:Transition&gt;\\n </pre>   <p>The <code>&lt;mx:Transition&gt;</code> tag defines the following attributes:</p>  <pre>\\n &lt;mx:Transition\\n <b>Properties</b>\\n id=&quot;ID&quot;\\n effect=&quot;&quot;\\n fromState=&quot;&#42;&quot;\\n toState=&quot;&#42;&quot;\\n autoReverse=&quot;false&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TransitionExample.mxml", "examples/TransitionExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.effects.AddChildAction", "mx.effects.RemoveChildAction", "mx.effects.SetPropertyAction", "mx.effects.SetStyleAction", "mx.effects.AddChildAction", "mx.effects.RemoveChildAction", "mx.effects.SetPropertyAction", "mx.effects.SetStyleAction"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.CSSStyleDeclaration",
  "description": "The CSSStyleDeclaration class represents a set of CSS style rules. The MXML compiler automatically generates one CSSStyleDeclaration object for each selector in the CSS files associated with a Flex application.  <p>A CSS rule such as <pre>\\n Button { color: #FF0000 }\\n </pre> affects every instance of the Button class; a selector like <code>Button</code> is called a type selector and must not start with a dot.</p>  <p>A CSS rule such as <pre>\\n .redButton { color: #FF0000 }\\n </pre> affects only components whose <code>styleName</code> property is set to <code>&quot;redButton&quot;</code>; a selector like <code>.redButton</code> is called a class selector and must start with a dot.</p>  <p>You can access the autogenerated CSSStyleDeclaration objects using the <code>StyleManager.getStyleDeclaration()</code> method, passing it either a type selector <pre>\\n var buttonDeclaration:CSSStyleDeclaration =\\n StyleManager.getStyleDeclaration(&quot;Button&quot;);\\n </pre> or a class selector <pre>\\n var redButtonStyleDeclaration:CSSStyleDeclaration =\\n StyleManager.getStyleDeclaration(&quot;.redButton&quot;);\\n </pre> </p>  <p>You can use the <code>getStyle()</code>, <code>setStyle()</code>, and <code>clearStyle()</code> methods to get, set, and clear style properties on a CSSStyleDeclaration.</p>  <p>You can also create and install a CSSStyleDeclaration at run time using the <code>StyleManager.setStyleDeclaration()</code> method: <pre>\\n var newStyleDeclaration:CSSStyleDeclaration = new CSSStyleDeclaration(&quot;.bigMargins&quot;);\\n newStyleDeclaration.defaultFactory = function():void\\n {\\n leftMargin = 50;\\n rightMargin = 50;\\n }\\n StyleManager.setStyleDeclaration(&quot;.bigMargins&quot;, newStyleDeclaration, true);\\n </pre> </p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.UIComponent", "mx.styles.StyleManager", "mx.core.UIComponent", "mx.styles.StyleManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.IAdvancedStyleClient",
  "description": "This interface describes the advanced properties that a component must implement to fully participate in the advanced style subsystem.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.ISimpleStyleClient",
  "description": "This interface describes the properties and methods that an object must implement so that it can participate in the style subsystem. This interface is intended to be used by classes that obtain their style values from other objects rather than through locally set values and type selectors. This interface is implemented by ProgrammaticSkin.",
"tags": [
{  "tagName": "see",
       "values": ["mx.styles.IStyleClient", "mx.styles.CSSStyleDeclaration", "mx.styles.IStyleClient", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.IStyleClient",
  "description": "This interface describes the properties and methods that an object must implement so that it can fully participate in the style subsystem. This interface is implemented by UIComponent.  <p>If the object does not need to store style values locally, it can implement the <code>ISimpleStyleClient</code> interface instead.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.styles.ISimpleStyleClient", "mx.styles.CSSStyleDeclaration", "mx.styles.ISimpleStyleClient", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.IStyleManager",
  "description": "The IStyleManager class manages the following: <ul> <li>Which CSS style properties the class inherits</li> <li>Which style properties are colors, and therefore get special handling</li> <li>A list of strings that are aliases for color values</li> </ul>  This interface was used by Flex 2.0.1. Flex 3 now uses IStyleManager2 instead.",
"tags": [
{  "tagName": "see",
       "values": ["mx.styles.CSSStyleDeclaration", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 2.0.1", "Flex 2.0.1"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.IStyleManager2",
  "description": "The IStyleManager2 class manages the following: <ul> <li>Which CSS style properties the class inherits</li> <li>Which style properties are colors, and therefore get special handling</li> <li>A list of strings that are aliases for color values</li> </ul>",
"tags": [
{  "tagName": "see",
       "values": ["mx.styles.CSSStyleDeclaration", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.StyleManager",
  "description": "The StyleManager class manages the following: <ul> <li>Which CSS style properties the class inherits</li> <li>Which style properties are colors, and therefore get special handling</li> <li>A list of strings that are aliases for color values</li> </ul>",
"tags": [
{  "tagName": "see",
       "values": ["mx.styles.CSSStyleDeclaration", "mx.styles.CSSStyleDeclaration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.styles.StyleManagerImpl",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.styles.StyleProxy",
  "description": "Wraps an object that implements the IAdvancedStyleClient interface. This interface supports a <code>filterMap</code> property that contains style-source/style-destination pairs.",
"tags": [
{  "tagName": "see",
       "values": ["mx.styles.IAdvancedStyleClient", "mx.styles.IAdvancedStyleClient"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.system.ApplicationDomain",
  "description": ""},
{ "name": "mx.text.TextFormat",
  "description": "This class holds text related styles See: See:",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.utils.ArrayUtil",
  "description": "The ArrayUtil utility class is an all-static class with methods for working with arrays within Flex. You do not create instances of ArrayUtil; instead you call static methods such as the <code>ArrayUtil.toArray()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.Base64Decoder",
  "description": "A utility class to decode a Base64 encoded String to a ByteArray.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.Base64Encoder",
  "description": "A utility class to encode a String or ByteArray as a Base64 encoded String.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.BitFlagUtil",
  "description": "BitFlagUtil is a framework internal class to help manipulate bit flags for the purpose of storing booleans effeciently in one integer.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.utils.ByteArray",
  "description": ""},
{ "name": "mx.utils.HexDecoder",
  "description": "Documentation is not currently available. Ported to ActionScript from flex/messaging/util/Hex.java",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.utils.HexEncoder",
  "description": "Documentation is not currently available. Ported to ActionScript from flex/messaging/util/Hex.java",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "mx.utils.IXMLNotifiable",
  "description": "The IXMLNotifiable interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.ObjectProxy",
  "description": "This class provides the ability to track changes to an item managed by this proxy. Any number of objects can &quot;listen&quot; for changes on this object, by using the <code>addEventListener()</code> method.  <pre>\\n import mx.events.PropertyChangeEvent;\\n import mx.utils.ObjectUtil;\\n import mx.utils.ObjectProxy;\\n import mx.utils.StringUtil;\\n \\n var a:Object = { name: &quot;Tyler&quot;, age: 5, ssnum: &quot;555-55-5555&quot; };\\n var p:ObjectProxy = new ObjectProxy(a);\\n p.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, updateHandler);\\n p.name = &quot;Jacey&quot;;\\n p.age = 2;\\n delete p.ssnum;\\n \\n // handler function\\n function updateHandler(event:ChangeEvent):void\\n {\\n trace(StringUtil.substitute(&quot;updateHandler('{0}', {1}, {2}, {3}, '{4}')&quot;,\\n event.kind,\\n event.property,\\n event.oldValue,\\n event.newValue,\\n event.target.object_proxy::UUID));\\n }\\n \\n // The trace output appears as:\\n // updateHandler('opUpdate', name, Tyler, Jacey, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2')\\n // updateHandler('opUpdate', age, 5, 2, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2')\\n // updateHandler('opDelete', ssnum, 555-55-5555, null, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2')\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "example",
       "values": []},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.ObjectUtil",
  "description": "The ObjectUtil class is an all-static class with methods for working with Objects within Flex. You do not create instances of ObjectUtil; instead you simply call static methods such as the <code>ObjectUtil.isSimple()</code> method.   JS PAYG : non-reflectable utility class, unused methods will be subject to deadcode elimination",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "mx.utils.PopUpUtil",
  "description": "Helper functionality for working with pop-ups."},
{ "name": "mx.utils.RPCStringUtil",
  "description": "The RPCStringUtil class is a subset of StringUtil, removing methods that create dependency issues when RPC messages are in a bootstrap loader.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.RPCUIDUtil",
  "description": "The RPCUIDUtil class is a copy of UIDUtil without some functions that cause dependency problems when RPC messages are put in a bootstrap loader.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.StringUtil",
  "description": "The StringUtil utility class is an all-static class with methods for working with String objects within Flex. You do not create instances of StringUtil; instead you call methods such as the <code>StringUtil.substitute()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.UIDUtil",
  "description": "The UIDUtil class is an all-static class with methods for working with UIDs (unique identifiers) within Flex. You do not create instances of UIDUtil; instead you simply call static methods such as the <code>UIDUtil.createUID()</code> method.  <p><b>Note</b>: If you have a dynamic object that has no [Bindable] properties (which force the object to implement the IUID interface), Flex  adds an <code>mx_internal_uid</code> property that contains a UID to the object. To avoid having this field in your dynamic object, make it [Bindable], implement the IUID interface in the object class, or set a <coded>uid</coded> property with a value.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.URLUtil",
  "description": "The URLUtil class is a static class with methods for working with full and relative URLs within Flex.",
"tags": [
{  "tagName": "see",
       "values": ["mx.managers.BrowserManager", "mx.managers.BrowserManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.XMLNotifier",
  "description": "Used for watching changes to XML and XMLList objects. Those objects are not EventDispatchers, so if multiple elements want to watch for changes they need to go through this mechanism. Call <code>watchXML()</code>, passing in the same notification function that you would pass to XML.notification. Use <code>unwatchXML()</code> to remove that notification.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.utils.XMLUtil",
  "description": "The XMLUtil class is an all-static class with methods for working with XML within Flex. You do not create instances of XMLUtil; instead you simply call static methods such as the <code>XMLUtil.qnamesEqual()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.DateValidator",
  "description": "The DateValidator class validates that a String, Date, or Object contains a proper date and matches a specified format. Users can enter a single digit or two digits for month, day, and year. By default, the validator ensures the following formats:  <ul> <li>The month is between 1 and 12 (or 0-11 for <code>Date</code> objects)</li> <li>The day is between 1 and 31</li> <li>The year is a number</li> </ul>  <p>You can specify the date in the DateValidator class in two ways:</p> <ul> <li>Single String containing the date - Use the <code>source</code> and <code>property</code> properties to specify the String. The String can contain digits and the formatting characters specified by the <code>allowedFormatChars</code> property, which include the &quot;/&#92;-. &quot; characters. By default, the input format of the date in a String field is &quot;MM/DD/YYYY&quot; where &quot;MM&quot; is the month, &quot;DD&quot; is the day, and &quot;YYYY&quot; is the year. You can use the <code>inputFormat</code> property to specify a different format.</li> <li><code>Date</code> object.</li> <li>Object or multiple fields containing the day, month, and year. Use all of the following properties to specify the day, month, and year inputs: <code>daySource</code>, <code>dayProperty</code>, <code>monthSource</code>, <code>monthProperty</code>, <code>yearSource</code>, and <code>yearProperty</code>.</li> </ul>   <p>The <code>&lt;mx:DateValidator&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:DateValidator\\n allowedFormatChars=&quot;/&#92;-. &quot;\\n dayListener=&quot;<i>Object specified by daySource</i>&quot;\\n dayProperty=&quot;<i>No default</i>&quot;\\n daySource=&quot;<i>No default</i>&quot;\\n formatError= &quot;Configuration error: Incorrect formatting string.&quot;\\n includeFormatInError=&quot;true|false&quot;\\n inputFormat=&quot;MM/DD/YYYY&quot;\\n invalidCharError=&quot;The date contains invalid characters.&quot;\\n monthListener=&quot;<i>Object specified by monthSource</i>&quot;\\n monthProperty=&quot;<i>No default</i>&quot;\\n monthSource=&quot;<i>No default</i>&quot;\\n validateAsString=&quot;true|false&quot;\\n wrongDayError=&quot;Enter a valid day for the month.&quot;\\n wrongLengthError=&quot;Type the date in the format <i>inputFormat</i>.&quot;\\n wrongMonthError=&quot;Enter a month between 1 and 12.&quot;\\n wrongYearError=&quot;Enter a year between 0 and 9999.&quot;\\n yearListener=&quot;<i>Object specified by yearSource</i>&quot;\\n yearProperty=&quot;<i>No default</i>&quot;\\n yearSource=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DateValidatorExample.mxml", "examples/DateValidatorExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.EmailValidator",
  "description": "The EmailValidator class validates that a String has a single &#64; sign, a period in the domain name and that the top-level domain suffix has two, three, four, or six characters. IP domain names are valid if they are enclosed in square brackets. The validator does not check whether the domain and user name actually exist.  <p>You can use IP domain names if they are enclosed in square brackets; for example, myname&#64;[206.132.22.1]. You can use individual IP numbers from 0 to 255.</p>   <p>The <code>&lt;mx:EmailValidator&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:EmailValidator\\n invalidCharError=&quot;Your e-mail address contains invalid characters.&quot;\\n invalidDomainError= &quot;The domain in your e-mail address is incorrectly formatted.&quot;\\n invalidIPDomainError=&quot;The IP domain in your e-mail address is incorrectly formatted.&quot;\\n invalidPeriodsInDomainError=&quot;The domain in your e-mail address has consecutive periods.&quot;\\n missingAtSignError=&quot;An at sign (&64;) is missing in your e-mail address.&quot;\\n missingPeriodInDomainError=&quot;The domain in your e-mail address is missing a period.&quot;\\n missingUsernameError=&quot;The username in your e-mail address is missing.&quot;\\n tooManyAtSignsError=&quot;Your e-mail address contains too many &64; characters.&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/EmailValidatorExample.mxml", "examples/EmailValidatorExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.IValidator",
  "description": "This interface specifies the methods and properties that a Validator object must implement. <p>This interface allows to validate multiple data types like numbers, currency, phone numbers, zip codes etc that are defined in both mx and spark namespaces. The classes mx:Validator and spark:GlobaliationValidatorBase implement this interface. The validateAll() method in these classes use this interface type to call the validate() method on multiple validator objects.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.validators.Validator", "spark.validators.GlobalizationValidatorBase", "mx.validators.Validator", "spark.validators.GlobalizationValidatorBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.IValidatorListener",
  "description": "The interface that components implement to support the Flex data validation mechanism. The UIComponent class implements this interface. Therefore, any subclass of UIComponent also implements it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.NumberValidator",
  "description": "The NumberValidator class ensures that a String represents a valid number. It can ensure that the input falls within a given range (specified by <code>minValue</code> and <code>maxValue</code>), is an integer (specified by <code>domain</code>), is non-negative (specified by <code>allowNegative</code>), and does not exceed the specified <code>precision</code>. The validator correctly validates formatted numbers (e.g., &quot;12,345.67&quot;) and you can customize the <code>thousandsSeparator</code> and <code>decimalSeparator</code> properties for internationalization.   <p>The <code>&lt;mx:NumberValidator&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:NumberValidator\\n allowNegative=&quot;true|false&quot;\\n decimalPointCountError=&quot;The decimal separator can only occur once.&quot;\\n decimalSeparator=&quot;.&quot;\\n domain=&quot;real|int&quot;\\n exceedsMaxError=&quot;The number entered is too large.&quot;\\n integerError=&quot;The number must be an integer.&quot;\\n invalidCharError=&quot;The input contains invalid characters.&quot;\\n invalidFormatCharsError=&quot;One of the formatting parameters is invalid.&quot;\\n lowerThanMinError=&quot;The amount entered is too small.&quot;\\n maxValue=&quot;NaN&quot;\\n minValue=&quot;NaN&quot;\\n negativeError=&quot;The amount may not be negative.&quot;\\n precision=&quot;-1&quot;\\n precisionError=&quot;The amount entered has too many digits beyond the decimal point.&quot;\\n separationError=&quot;The thousands separator must be followed by three digits.&quot;\\n thousandsSeparator=&quot;,&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/NumberValidatorExample.mxml", "examples/NumberValidatorExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.NumberValidatorDomainType",
  "description": "The NumberValidatorDomainType class defines the values for the <code>domain</code> property of the NumberValidator class.",
"tags": [
{  "tagName": "see",
       "values": ["mx.validators.NumberValidator", "mx.validators.NumberValidator"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.PhoneNumberValidator",
  "description": "The PhoneNumberValidator class validates that a string is a valid phone number. A valid phone number contains at least 10 digits, plus additional formatting characters. The validator does not check if the phone number is an actual active phone number.   <p>The <code>&lt;mx:PhoneNumberValidator&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:PhoneNumberValidator\\n allowedFormatChars=&quot;()- .+&quot;\\n invalidCharError=&quot;Your telephone number contains invalid characters.&quot;\\n minDigits=&quot;10&quot;\\n wrongLengthError=&quot;Your telephone number must contain at least 10 digits.&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PhoneNumberValidatorExample.mxml", "examples/PhoneNumberValidatorExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.RegExpValidationResult",
  "description": "The RegExpValidator class dispatches the <code>valid</code> and <code>invalid</code> events. For an <code>invalid</code> event, the event object is an instance of the ValidationResultEvent class, and the <code>ValidationResultEvent.results</code> property contains an Array of ValidationResult objects.  <p>However, for a <code>valid</code> event, the <code>ValidationResultEvent.results</code> property contains an Array of RegExpValidationResult objects. The RegExpValidationResult class is a child class of the ValidationResult class, and contains additional properties used with regular expressions.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.events.ValidationResultEvent", "mx.events.ValidationResultEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.validators.RegExpValidator",
  "description": "The RegExpValidator class lets you use a regular expression to validate a field. You pass a regular expression to the validator using the <code>expression</code> property, and additional flags to control the regular expression pattern matching using the <code>flags</code> property.  <p>The validation is successful if the validator can find a match of the regular expression in the field to validate. A validation error occurs when the validator finds no match.</p>  <p>The RegExpValidator class dispatches the <code>valid</code> and <code>invalid</code> events. For an <code>invalid</code> event, the event object is an instance of the ValidationResultEvent class, and it contains an Array of ValidationResult objects.</p>  <p>However, for a <code>valid</code> event, the ValidationResultEvent object contains an Array of RegExpValidationResult objects. The RegExpValidationResult class is a child class of the ValidationResult class, and contains additional properties used with regular expressions, including the following:</p> <ul> <li><code>matchedIndex</code> An integer that contains the starting index in the input String of the match.</li> <li><code>matchedString</code> A String that contains the substring of the input String that matches the regular expression.</li> <li><code>matchedSubStrings</code> An Array of Strings that contains parenthesized substring matches, if any. If no substring matches are found, this Array is of length 0.  Use matchedSubStrings[0] to access the first substring match.</li> </ul>   <p>The <code>&lt;mx:RegExpValidator&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;mx:RegExpValidator\\n expression=&quot;<i>No default</i>&quot;\\n flags=&quot;<i>No default</i>&quot;\\n noExpressionError=&quot;The expression is missing.&quot;\\n noMatchError=&quot;The field is invalid.&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RegExValidatorExample.mxml", "examples/RegExValidatorExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.validators.RegExpValidationResult", "mx.validators.ValidationResult", "RegExp", "mx.validators.RegExpValidationResult", "mx.validators.ValidationResult", "RegExp"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.StringValidator",
  "description": "The StringValidator class validates that the length of a String is within a specified range.   <p>The <code>&lt;mx:StringValidator&gt;</code> tag inherits all of the tag attributes of its superclass, and add the following tag attributes:</p>  <pre>\\n &lt;mx:StringValidator\\n maxLength=&quot;NaN&quot;\\n minLength=&quot;NaN&quot;\\n tooLongError=&quot;This string is longer than the maximum allowed length. This must be less than {0} characters long.&quot;\\n tooShortError=&quot;This string is shorter than the minimum allowed length. This must be at least {0} characters long.&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/StringValidatorExample.mxml", "examples/StringValidatorExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "mx.validators.ValidationResult",
  "description": "The ValidationResult class contains the results of a validation.  <p>The ValidationResultEvent class defines the event object that is passed to event listeners for the <code>valid</code> and <code>invalid</code> validator events. The class also defines the <code>results</code> property, which contains an Array of ValidationResult objects, one for each field examined by the validator. This lets you access the ValidationResult objects from within an event listener.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.events.ValidationResultEvent", "mx.events.ValidationResultEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "mx.validators.Validator",
  "description": "The Validator class is the base class for all Flex validators. This class implements the ability for a validator to make a field required, which means that the user must enter a value in the field or the validation fails.   <p>The Validator class defines the following tag attributes, which all of its subclasses inherit:</p>  <pre>\\n &lt;mx:Validator\\n enabled=&quot;true|false&quot;\\n listener=&quot;<i>Value of the source property</i>&quot;\\n property=&quot;<i>No default</i>&quot;\\n required=&quot;true|false&quot;\\n requiredFieldError=&quot;This field is required.&quot;\\n source=&quot;<i>No default</i>&quot;\\n trigger=&quot;<i>Value of the source property</i>&quot;\\n triggerEvent=&quot;valueCommit&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleValidatorExample.mxml", "examples/SimpleValidatorExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.events.ValidationResultEvent", "mx.validators.ValidationResult", "mx.validators.RegExpValidationResult", "mx.events.ValidationResultEvent", "mx.validators.ValidationResult", "mx.validators.RegExpValidationResult"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.ApplicationDataBinding",
  "description": "The ApplicationDataBinding class implements databinding for Application instances. When you want to use databinding within the MXML file that has Application as its root tag, include the ApplicationDataBinding tag as well.  Different classes can have different databinding implementation that optimize for the different lifecycles.  For example, an item renderer databinding implementation can wait to execute databindings until the data property is set.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.ChainBinding",
  "description": "The ChainBinding class is used to track changes of nested properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.ConstantBinding",
  "description": "The ConstantBinding class is lightweight data-binding class that is optimized for simple assignments of one object's constant to another object's property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.ContainerDataBinding",
  "description": "The ContainerDataBinding class implements databinding for Container instances.  Place a ContainerDataBinding tag into the MXML file that has Container as its root tag. Different classes can have different databinding implementation that optimize for the different lifecycles.  For example, an item renderer databinding implementation can wait to execute databindings until the data property is set.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.DataBindingBase",
  "description": "The DataBindingBase class is the base class for custom data binding implementations that can be cross-compiled.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.GenericBinding",
  "description": "The GenericBinding class is the data-binding class that applies changes to properties of source objects to a property of the destination object.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.binding.ItemRendererDataBinding",
  "description": "The ItemRendererDataBinding class implements databinding for ItemRenderer instances.  Different classes can have different databinding implementation that optimize for the different lifecycles.  For example, an item renderer databinding implementation can wait to execute databindings until the data property is set.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.ItemRendererSimpleBinding",
  "description": "The SimpleBinding class is lightweight data-binding class that is optimized for simple assignments of one object's property to another object's property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.MXMLBeadViewDataBinding",
  "description": "The MXMLBeadViewDataBinding class implements databinding for MXMLBeadView instances.  Different classes can have different databinding implementation that optimize for the different lifecycles.  For example, an item renderer databinding implementation can wait to execute databindings until the data property is set.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.PropertyWatcher",
  "description": "The PropertyWatcher class is the data-binding class that watches for changes to various properties in objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.binding.SimpleBinding",
  "description": "The SimpleBinding class is lightweight data-binding class that is optimized for simple assignments of one object's property to another object's property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.ViewDataBinding",
  "description": "The ViewDataBinding class implements databinding for View instances.  Different classes can have different databinding implementation that optimize for the different lifecycles.  For example, an item renderer databinding implementation can wait to execute databindings until the data property is set.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.binding.WatcherBase",
  "description": "The WatcherBase class is the base class for data-binding classes that watch various properties and styles for changes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.charts.BarChart",
  "description": "The BarChart class draws a multi-series graph of data using vertical columns. The series property is an array of BarChartSeries instances that represent the data in the model.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.ColumnChart",
  "description": "The ColumnChart displays a histogram chart where each series in in the chart is a vertical column placed side by side.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.LineChart",
  "description": "The LineChart displays a series of line graphs with optional graphics at each vertex.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.PieChart",
  "description": "The PieChart displays data as a percentage of pie.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.StackedBarChart",
  "description": "The StackedBarChart displays a histogram chart where each series in the chart is stack next to each other.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.StackedColumnChart",
  "description": "The StackedColumnChart displays a histogram chart where each series in the chart is stack on top of each other.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.AxisBaseBead",
  "description": "The AxisBaseBead is the base class for the chart axis beads.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.ChartItemRendererFactory",
  "description": "The ChartItemRendererFactory class implements IDataProviderItemRendererMapper and creats the itemRenderers for each series in a chart. The itemRenderer class is identified on each series either through a property or through a CSS style. Once all of the itemRenderers are created, an itemsCreated event is dispatched causing the layout associated with the chart to size and position the items.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.ChartSelectableItemRendererBead",
  "description": "The ChartSelectableItemRendererBead class implements the ISelectableItemRenderer interface and just stores the state. Subclasses will draw.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.ChartView",
  "description": "The ChartView class provides the visual elemental structure for a chart. This includes the axis areas and the chart data area where the graphs are drawn.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.DataItemRendererFactoryForSeriesArrayListData",
  "description": "The DataItemRendererFactoryForSeriesData creates the itemRenderers necessary for series-based charts.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.DataItemRendererFactoryForSeriesData",
  "description": "The DataItemRendererFactoryForSeriesData creates the itemRenderers necessary for series-based charts.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.DataTipBead",
  "description": "The DataTipBead can be added to a chart to produce a helpful tip when the moves over an itemRenderer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.HorizontalCategoryAxisBead",
  "description": "The HorizontalCategoryAxisBead displays a horizontal axis with tick marks corresponding to data points identified by the categoryField property. This type of axis is useful for non-numeric plots.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.HorizontalCategoryAxisForArrayListBead",
  "description": "The HorizontalCategoryAxisForArrayListBead displays a horizontal axis with tick marks corresponding to data points identified by the categoryField property. This type of axis is useful for non-numeric plots.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.HorizontalLinearAxisBead",
  "description": "The HorizontalLinearAxisBead class provides a horizontal axis that uses a numeric range.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.HorizontalLinearAxisForArrayListBead",
  "description": "The HorizontalLinearAxisForArrayListBead class provides a horizontal axis that uses a numeric range.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.VerticalCategoryAxisBead",
  "description": "The VerticalCategoryAxisBead displays a vertical axis with tick marks corresponding to data points identified by the categoryField property. This type of axis is useful for non-numeric plots.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.VerticalCategoryAxisForArrayListBead",
  "description": "The VerticalCategoryAxisForArrayListBead displays a vertical axis with tick marks corresponding to data points identified by the categoryField property. This type of axis is useful for non-numeric plots.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.VerticalLinearAxisBead",
  "description": "The VerticalLinearAxisBead class provides a vertical axis that uses a numeric range.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.VerticalLinearAxisForArrayListBead",
  "description": "The VerticalLinearAxisBead class provides a vertical axis that uses a numeric range.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.controllers.ChartSeriesMouseController",
  "description": ""},
{ "name": "org.apache.royale.charts.beads.layouts.BarChartLayout",
  "description": "The BarChartLayout class calculates the size and position of all of the itemRenderers for all of the series in a BarChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.BarChartLayoutForArrayList",
  "description": "The BarChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for all of the series in a BarChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.ChartBaseLayout",
  "description": ""},
{ "name": "org.apache.royale.charts.beads.layouts.ColumnChartLayout",
  "description": "The ColumnChartLayout arranges the graphics in vertical columns (or whatever shape the renderer uses) using a category axis horizontally and a linear axis vertically.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.ColumnChartLayoutForArrayList",
  "description": "The ColumnChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for all of the series in a BarChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.LineChartCategoryVsLinearLayout",
  "description": "The LineChartCategoryVsLinearLayout displays a line graph of plot points where the horizontal axis is category value and the vertical axis is numeric.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.LineChartLinearVsLinearLayout",
  "description": "The LineChartLinearVsLinearLayout displays a line graph of plot points where both axes are numeric values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.PieChartLayout",
  "description": "The PieChartLayout class calculates the size and position of all of the itemRenderers for a PieChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.PieChartLayoutForArrayList",
  "description": "The PieChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for a PieChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.StackedBarChartLayout",
  "description": "The StackedBarChartLayout class calculates the size and position of all of the itemRenderers for all of the series in a StackedBarChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.StackedBarChartLayoutForArrayList",
  "description": "The StackedBarChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for all of the series in a BarChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.StackedColumnChartLayout",
  "description": "The StackedColumnChartLayout class calculates the size and position of all of the itemRenderers for all of the series in a StackedColumnChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.layouts.StackedColumnChartLayoutForArrayList",
  "description": "The StackedColumnChartLayoutForArrayList class calculates the size and position of all of the itemRenderers for all of the series in a BarChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.models.ChartArrayListSelectionModel",
  "description": "The ArraySelectionModel class is a selection model for a dataProvider that is an array. It assumes that items can be fetched from the dataProvider dataProvider[index].  Other selection models would support other kinds of data providers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.beads.models.ChartArraySelectionModel",
  "description": "The ArraySelectionModel class is a selection model for a dataProvider that is an array. It assumes that items can be fetched from the dataProvider dataProvider[index].  Other selection models would support other kinds of data providers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.CartesianChart",
  "description": "This class provides the basis for standard X-Y plots and anything the requires a two-dimensional function graph.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.ChartBase",
  "description": "The ChartBase class contains all of the properties common to most charts. Some charts may not make any or full use of the properties however.  A chart is based on List which provides data and item renderers to draw the chart graphics. Charts are essentially lists with a different visualization.  Similar to a List, the chart's layout provides the structure of chart while the itemRenderers take care of the actual drawing.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IAxisBead",
  "description": ""},
{ "name": "org.apache.royale.charts.core.IAxisGroup",
  "description": "The IAxisGroup defines the interface for classes that provide drawing space for chart axis objects, such as tick marks and lines.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.ICartesianChartLayout",
  "description": "This interface is implemented by any Cartesian-style chart layout bead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IChart",
  "description": "The IChart interface is the basic interface for every chart component. All charts have a least one &quot;series&quot; - a collection of data values for each axis of the chart (a PieChart follows this pattern, too, since the total number of items in its series represents 100% of the pie and each item contributes some percentage). A Chart then uses a set of beads particular to that chart type.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IChartDataGroup",
  "description": "The IChartDataGroup is the interface for the parent element of chart itemRenderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IChartDataModel",
  "description": "The IChartDataModel provides extensions to the standard ISelectionModel to include the series selected (or rolled over).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IChartItemRenderer",
  "description": "The IChartItemRenderer interface is the interface implemented by any class that draws chart graphics.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IChartSeries",
  "description": "The IChartSeries interface is the basic interface for any type of chart data series.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IConnectedItemRenderer",
  "description": "The IConnectedItemRenderer interface is the interface used to connect data points on a chart. This interface adds a connection point, (x2,y2), to the (x,y) already supplied by IChartItemRenderer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IHorizontalAxisBead",
  "description": "The IHorizontalAxisBead interface is a marker for any class that draws a horizontal axis. The XAxisBead is an example that implements this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.IVerticalAxisBead",
  "description": "The IHorizontalAxisBead interface is a marker for any class that draws a verical axis. The YAxisBead is an example that implements this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.core.PolarChart",
  "description": "This class provides the basis for circular, or polar, charts. These types of charts, which include PieCharts, may be zero or more radial axes (or 'radii').",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.optimized.SVGBoxItemRenderer",
  "description": "The SVGBoxItemRenderer draws its graphics directly into a SVGChartDataGroup (CompoundGraphic).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.optimized.SVGChartAxisGroup",
  "description": "The SVGChartAxisGroup provides a CompoundGraphic whose drawing functions can be used to display a chart's axis graphics without resorting to the creation of extra objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.optimized.SVGChartDataGroup",
  "description": "The SVGChartDataGroup serves as the drawing canvas for SVG itemRenderers. Rather than having individual itemRenderer objects in the display list, this class provides a canvas where the itemRenderers can draw directly using the flex.core.graphics package.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.optimized.SVGLineSegmentItemRenderer",
  "description": "The SVGLineSegmentItemRenderer draws its graphics directly into a SVGChartDataGroup (a CompoundGraphic).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.optimized.SVGWedgeItemRenderer",
  "description": "The SVGWedgeItemRenderer draws its graphics directly into a SVGChartDataGroup (a CompoundGraphic).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.BarSeries",
  "description": "The BarSeries defines what field is being plotted from the chart's dataProvider. For BarChartSeries, only the xField is used.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.BoxItemRenderer",
  "description": "The BoxItemRenderer displays a colored rectangular area suitable for use as an itemRenderer for a BarChartSeries. This class implements the org.apache.royale.charts.core.IChartItemRenderer interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.ChartAxisGroup",
  "description": "The ChartAxisGroup provides a space where the objects for a chart's axis can be placed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.ChartDataGroup",
  "description": "The ChartDataGroup class provides the actual space for rendering the chart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.ChartItemRenderer",
  "description": "The ChartItemRenderer is the base class for Chart ItemRenderers. This class implements the org.apache.royale.charts.core.IChartItemRenderer interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.ColumnSeries",
  "description": "The ColumnSeries defines what field is being plotted from the chart's dataProvider. For ColumnSeries, only the yField is used.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.ILineSegmentItemRenderer",
  "description": "The ILineSegmentItemRenderer interface must be implemented by any class that will become an line segment itemRenderer for a LineSeries.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.IWedgeItemRenderer",
  "description": "The IWedgeItemRenderer interface must be implemented by any class that is used as an itemRenderer for a PieSeries.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.LineSegmentItemRenderer",
  "description": "The LineSegmentItemRenderer class draws a line between the vertices of a LineSeries.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.LineSeries",
  "description": "The LineChartSeries represents a pair of X and Y values to be drawn within a org.apache.royale.charts.LineChart.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.charts.supportClasses.PieSeries",
  "description": ""},
{ "name": "org.apache.royale.charts.supportClasses.WedgeItemRenderer",
  "description": "The WedgeItemRenderer draws a single slide of a PieSeries.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.ArrayList",
  "description": "The ArrayList class provides an event-driven wrapper for the standard Array. Events are dispatched when items are added, removed, or changed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.ArrayListView",
  "description": ""},
{ "name": "org.apache.royale.collections.Collection",
  "description": ""},
{ "name": "org.apache.royale.collections.CollectionUtils",
  "description": ""},
{ "name": "org.apache.royale.collections.CompareUtils",
  "description": ""},
{ "name": "org.apache.royale.collections.FlattenedList",
  "description": "The FlattenedList class takes a HierarchicalData object and &quot;flattens&quot; it using all of the open members.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.collections.HierarchicalData",
  "description": "Hierarchical data is data already in a structure of parent and child data items. The HierarchicalData class provides a default implementation for accessing and manipulating data.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.IArrayList",
  "description": "The ArrayList class provides an event-driven wrapper for the standard Array. Events are dispatched when items are added, removed, or changed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.IArrayListView",
  "description": ""},
{ "name": "org.apache.royale.collections.ICollection",
  "description": "The ICollection interface is the basic interface for an iterable collection of data items.  Other extension may offer the ability to modify the collection and dispatch change events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.ICollectionView",
  "description": "The ICollectionView interface is implemented by classes that provide collection data."},
{ "name": "org.apache.royale.collections.IHierarchicalData",
  "description": "The IHierarchicalData interface defines the interface used to represent hierarchical data as the data provider for a Royale component. Hierarchical data is data in a structure of parent and child data items.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.ISort",
  "description": "The <code>ISort</code> interface defines the interface for classes that provide the sorting information required to sort the data of a collection view.",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.ISortField", "mx.collections.ICollectionView", "mx.collections.ISortField"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.ISortField",
  "description": "The <code>ISortField</code> interface defines the interface for classes that are used with <code>ISort</code> classes, to provide the sorting information required to sort the specific fields or property in a collection view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.IStringCollection",
  "description": "The IStringCollection interface is the basic interface for an iterable collection of strings.  Other extension may offer the ability to modify the collection and dispatch change events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.ITreeData",
  "description": "The ITreeData interface is the basic interface for determining which items in a hierarchical collection should be displayed in the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.LazyCollection",
  "description": "The LazyCollection class implements a collection whose items require conversion from a source data format to some other data type.  For example, converting SOAP or JSON to ActionScript data classes. The Flex SDK used to convert all of the data items when the source data arrived, which, for very large data sets or complex data classes, could lock up the user interface. The lazy collection converts items as they are fetched from the collection, resulting in significant performance savings in many cases.  Note that, if you need to compute a summary of data in the collection when the source data arrives, the computation can still lock up the user interface as you will have to visit and convert every data item.  Of course, it is possible to compute that summary in a worker or pseudo-thread. The LazyCollection class is designed to be a bead that attaches to a data retrieval strand that dispatches an Event.COMPLETE and has a &quot;data&quot; property that gets passed to the input parser.  This LazyCollection does not support adding/removing items from the collection or sending data back to the source.  Subclasses have that additional functionality.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.Sort",
  "description": "Provides the sorting information required to establish a sort on an existing view (<code>ICollectionView</code> interface or class that implements the interface). After you assign a <code>Sort</code> instance to the view's <code>sort</code> property, you must call the view's <code>refresh()</code> method to apply the sort criteria.  <p>Typically the sort is defined for collections of complex items, that is collections in which the sort is performed on one or more properties of the objects in the collection. The following example shows this use:</p> <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n // In the real world, the collection would have more than one item.\\n col.addItem({first:&quot;Anders&quot;, last:&quot;Dickerson&quot;});\\n \\n // Create the Sort instance.\\n var sort:ISort = new Sort();\\n \\n // Set the sort field; sort on the last name first, first name second.\\n // Both fields are case-insensitive.\\n sort.fields = [new SortField(&quot;last&quot;,true), new SortField(&quot;first&quot;,true)];\\n // Assign the Sort object to the view.\\n col.sort = sort;\\n \\n // Apply the sort to the collection.\\n col.refresh();\\n </code></pre>  <p>There are situations in which the collection contains simple items, like <code>String</code>, <code>Date</code>, <code>Boolean</code>, etc. In this case, apply the sort to the simple type directly. When constructing a sort for simple items, use a single sort field, and specify a <code>null</code> <code>name</code> (first) parameter in the SortField object constructor. For example: <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem(&quot;California&quot;);\\n col.addItem(&quot;Arizona&quot;);\\n var sort:Sort = new Sort();\\n \\n // There is only one sort field, so use a <code>null</code>\\n // first parameter.\\n sort.fields = [new SortField(null, true)];\\n col.sort = sort;\\n col.refresh();\\n </code></pre> </p>  <p>The Flex implementations of the <code>ICollectionView</code> interface retrieve all items from a remote location before executing a sort. If you use paging with a sorted list, apply the sort to the remote collection before you retrieve the data. </p>  <p>By default this Sort class does not provide correct language specific sorting for strings.  For this type of sorting please see the <code>spark.collections.Sort</code> and <code>spark.collections.SortField</code> classes.</p>  Note: to prevent problems like <a href=&quot;https://issues.apache.org/jira/browse/FLEX-34853&quot;>FLEX-34853</a> it is recommended to use SortField instances as immutable objects (by not changing their state).   <p>The <code>&lt;mx:Sort&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;mx:Sort\\n <b>Properties</b>\\n compareFunction=&quot;<em>Internal compare function</em>&quot;\\n fields=&quot;null&quot;\\n unique=&quot;false | true&quot;\\n /&gt;\\n </pre>  <p>In case items have inconsistent data types or items have complex data types, the use of the default built-in compare functions is not recommended. Inconsistent sorting results may occur in such cases. To avoid such problem, provide a custom compare function and/or make the item types consistent.</p>  <p>Just like any other <code>AdvancedStyleClient</code>-based classes, the <code>Sort</code> and <code>SortField</code> classes do not have a parent-child relationship in terms of event handling. Locale changes in a <code>Sort</code> instance are not dispatched to its <code>SortField</code> instances automatically. The only exceptional case is the internal default <code>SortField</code> instance used when no explicit fields are provided. In this case, the internal default <code>SortField</code> instance follows the locale style that the owner <code>Sort</code> instance has.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.collections.IArrayListView", "org.apache.royale.collections.ISortField", "org.apache.royale.collections.Sort", "org.apache.royale.collections.SortField", "org.apache.royale.collections.IArrayListView", "org.apache.royale.collections.ISortField", "org.apache.royale.collections.Sort", "org.apache.royale.collections.SortField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.SortField",
  "description": "Provides the sorting information required to establish a sort on a field or property in a collection view.  The SortField class is meant to be used with the Sort class.  Typically the sort is defined for collections of complex items, that is items in which the sort is performed on properties of those objects. As in the following example:  <pre><code>\\n var col:ICollectionView = new ArrayListView();\\n col.addItem({first:&quot;Anders&quot;, last:&quot;Dickerson&quot;});\\n var sort:Sort = new Sort();\\n sort.fields = [new SortField(&quot;first&quot;, true)];\\n col.sort = sort;\\n </code></pre>  There are situations in which the collection contains simple items, like <code>String</code>, <code>Date</code>, <code>Boolean</code>, etc. In this case, sorting should be applied to the simple type directly. When constructing a sort for this situation only a single sort field is required and should not have a <code>name</code> specified. For example:  <pre><code>\\n var col:ICollectionView = new ArrayListView();\\n col.addItem(&quot;California&quot;);\\n col.addItem(&quot;Arizona&quot;);\\n var sort:Sort = new Sort();\\n sort.fields = [new SortField(null, true)];\\n col.sort = sort;\\n </code></pre>  <p>By default the comparison provided by the SortField class does not provide correct language specific sorting for strings.  For this type of sorting please see the <code>spark.collections.Sort</code> and <code>spark.collections.SortField</code> classes.</p>  Note: to prevent problems like <a href=&quot;https://issues.apache.org/jira/browse/FLEX-34853&quot;>FLEX-34853</a> it is recommended to use SortField instances as immutable objects (by not changing their state).   <p>The <code>&lt;mx:SortField&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;mx:SortField\\n <b>Properties</b>\\n caseInsensitive=&quot;false&quot;\\n compareFunction=&quot;<em>Internal compare function</em>&quot;\\n descending=&quot;false&quot;\\n name=&quot;null&quot;\\n numeric=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "mx.collections.Sort", "spark.collections.Sort", "spark.collections.SortField", "mx.collections.ICollectionView", "mx.collections.Sort", "spark.collections.Sort", "spark.collections.SortField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.SortFieldCompareTypes",
  "description": "The SortFieldCompareTypes class defines the valid constant values for the <code>sortCompareType</code> property of the <code>SortField</code>.  <p>Designed to be used from a DataGrids column, but can be referenced directly on the <code>SortField</code></p>  <p>Use the constants in ActionsScript, as the following example shows:</p> <pre>\\n column.sortCompareType = SortFieldCompareTypes.NUMERIC;\\n </pre>  <p>In MXML, use the String value of the constants, as the following example shows:</p> <pre>\\n &lt;s:GridColumn sortCompareType=&quot;numeric&quot; /&gt;\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 11.8", "AIR 3.8", "Flash 11.8", "AIR 3.8"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.11", "Flex 4.11"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.TreeData",
  "description": "TreeData is used with tree or structured data classes. This class incorporates a HierarchicalData structure as its primary source, but then internally flattens it for presentation."},
{ "name": "org.apache.royale.collections.converters.IItemConverter",
  "description": "The IItemConverter interface is the basic interface for converting a serialized data item to a data class instance.  This interface is generally used in a LazyCollection.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.net.dataConverters.LazyCollection.", "org.apache.royale.net.dataConverters.LazyCollection."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.converters.JSONItemConverter",
  "description": "The JSONItemConverter class parses a JSON structure into an ActionScript object.  Other variants would return a specific data class instance.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.parsers.IInputParser",
  "description": "The IInputParser interface is the basic interface for parsing data from a server or database into an array of items.  This interface is generally used in a LazyCollection.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.net.dataConverters.LazyCollection.", "org.apache.royale.net.dataConverters.LazyCollection."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.collections.parsers.JSONInputParser",
  "description": "The JSONInputParser class parses a JSON structure into an array of JSON sub-structures.  It assumes the input JSON format is an array without sub-arrays. A more complex parser might be needed for more complex JSON structures.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.cordova.Application",
  "description": "A customized Application that dispatches the Cordova deviceReady event",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.cordova.Camera",
  "description": ""},
{ "name": "org.apache.royale.cordova.Weinre",
  "description": "A class that helps set up to use Weinre for debugging",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.cordova.geolocation.Geolocation",
  "description": "The Geolocation class implements Cordova geolocation plugin",
"tags": [
{  "tagName": "royalecordovaplugin",
       "values": ["cordova-plugin-geolocation", "cordova-plugin-geolocation"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignorecoercion",
       "values": ["FileEntry", "FileWriter", "window", "Blob", "FileEntry", "FileWriter", "window", "Blob"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.AirApplication",
  "description": "The AirApplication class should be used by Air applications as their main entry point.",
"tags": [
{  "tagName": "see",
       "values": ["Application", "Application"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.AllCSSStyles",
  "description": "The AllCSSStyles class contains all CSS style supported in HTML. It is not advisable to use this class in production code because it will unnecessarily inflate your code size. Rather, you should copy the class and trim it down in your app to the specific styles you use.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.core.AllCSSValuesImpl",
  "description": "The AllCSSValuesImpl class will eventually implement a full set of CSS lookup rules.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.Application",
  "description": "The Application class is the main class and entry point for a Royale application.  This Application class is different than the Flex SDK's mx:Application or spark:Application in that it does not contain user interface elements.  Those UI elements go in the views (ViewBase).  This Application class expects there to be a main model, a controller, and an initial view.",
"tags": [
{  "tagName": "see",
       "values": ["ViewBase", "ViewBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ApplicationBase",
  "description": "This is a platform-dependent base class for Application",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ApplicationFactory",
  "description": "This is a platform-dependent base class for Application",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.Bead",
  "description": "Base class for simple beads",
"tags": [
{  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]}  ]},
{ "name": "org.apache.royale.core.BeadViewBase",
  "description": "The BeadViewBase class is the base class for most view beads.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.BindableCSSStyles",
  "description": "The BindableCSSStyles class contains CSS style properties supported by SimpleCSSValuesImpl but dispatch change events when modified  The class implements IStyleObject which means the host object sets a reference onto this one, allowing us to reapply the styles to the host component when the style is changed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.BindableCSSStylesWithFlex",
  "description": "The BindableCSSStyles class contains CSS style properties supported by SimpleCSSValuesImpl but dispatch change events when modified  The class implements IStyleObject which means the host object sets a reference onto this one, allowing us to reapply the styles to the host component when the style is changed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.BrowserOrientation",
  "description": "The BrowserOrientation class listens for browser resizing (only in devices) and dispatchh orientation change events. - if orientation is portratit it dispatches: 'orientationPortrait' - if orientation is ladspace it dispatches: 'orientationLandscape'",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.BrowserResizeApplicationListener",
  "description": "The BrowserResizeApplicationListener class listens for browser resizing and resizes the application accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.BrowserResizeListener",
  "description": "The BrowserResizeListener class listens for browser resizing and resizes the component accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.BrowserScroller",
  "description": "The BrowserScroller class enables browser scrollbars when the application is larger than the screen.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.BrowserWindow",
  "description": "The BrowserWindow class opens a new browser window.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ByteArrayAsset",
  "description": "The ByteArrayAsset represents an arbitrary sequence of byte data that can be embedded in a Royale swf class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.CSSClassList",
  "description": "The CSSClassList class is used to construct a list of class names to be applied.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.2", "Royale 0.9.2"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.CSSFontFaceBead",
  "description": "The CSSFontFaceBead class is the class that loads swfs of converted fonts so they can be used in Flash. It is just a stub in JS.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.CSSShape",
  "description": "The Border class is a class used internally by many controls to draw a border.  The border actually drawn is dictated by the IBeadView in the CSS.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.CSSSprite",
  "description": "The Border class is a class used internally by many controls to draw a border.  The border actually drawn is dictated by the IBeadView in the CSS.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.CSSTextField",
  "description": "The CSSTextField class implements CSS text styles in a TextField. Not every CSS text style is currently supported.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.CallLaterBead",
  "description": "The CallLater bead implements ways for a method to be called after other code has finished running.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ClassFactory",
  "description": "The ClassFactory class is the basic implementation of an IFactory that will generate multiple instances of item renderers or custom classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.core.ConstraintSize",
  "description": "The ConstraintSize class is used to set minimun and maximun sizes on the component",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ContainerBase",
  "description": "The ContainerBase class is the base class for most containers in Royale.  It is usable as the root tag of MXML documents and UI controls and containers are added to it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ContainerBaseStrandChildren",
  "description": "The ContainerBaseStrandChildren class the provides a way for advanced components to place children directly into the strand unlike the addElement() APIs on the Container which place children into the contentView.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.core.DataContainerBase",
  "description": "The DataContainerBase class is the base class for components that that have generated content, like lists.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.DispatcherBead",
  "description": "Base class for beads which need to dispatch events",
"tags": [
{  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]}  ]},
{ "name": "org.apache.royale.core.DropType",
  "description": "The DropType class provides a set of constant values of types of drops in a drag/drop operation",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ElementWrapper",
  "description": ""},
{ "name": "org.apache.royale.core.EventLoggingBead",
  "description": "The EventLogging bead logs dispatches of certain events.  This can be useful in debugging type coercion errors when an event handler has the wrong type in the function signature.  Place this bead in the application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.FilledRectangle",
  "description": "The FilledRectangle class draws a simple filled rectangle without a border and with square corners.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.FormatBase",
  "description": "The FormatBase class serves as a base class for custom formatters. It cannot be used as a base for an MXML document.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.GroupBase",
  "description": "The GroupBase class is the base class for most simple containers in Royale.  It is usable as the root tag of MXML documents and UI controls and containers are added to it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.HTMLElementWrapper",
  "description": ""},
{ "name": "org.apache.royale.core.IAlertModel",
  "description": "The IAlertModel interface describes the minimum set of properties available to an Alert control.  More sophisticated Alert controls could have models that extend IAlertModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IApplicationView",
  "description": "The IApplicationView interface is the  interface for main view of the application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBead",
  "description": "The IBead interface is the basic interface for plug-ins known as Beads. In Royale, the recommended pattern is to break out optional functionality into small plug-ins that can be re-used in other components, or replaced with different implementations optimized for different things such as size, performance, advanced features, debugging, etc.  Beads are told what host component or &quot;strand&quot; they ae attached to.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBeadController",
  "description": "The IBeadController interface is a &quot;marker&quot; interface for beads that are controllers.  A marker interface has no addtional APIs. It is used to find the controller on the strand via calls to getBeadByType.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBeadKeyController",
  "description": "The IBeadKeyController interface is a &quot;marker&quot; interface for beads that are key controllers. Key controllers add keyboard support to the strand. A marker interface has no addtional APIs. It is used to find the controller on the strand via calls to getBeadByType.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBeadLayout",
  "description": "The IBeadLayout interface is a &quot;marker&quot; interface for beads that manage the layout for a control.  A marker interface has no addtional APIs. It is used to find the layout bead on the strand via calls to getBeadByType.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBeadModel",
  "description": "The IBeadModel interface is a &quot;marker&quot; interface for beads that represent the data model for a control.  A marker interface has no addtional APIs. It is used to find the model bead on the strand via calls to getBeadByType.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBeadTransform",
  "description": "The IBeadTransform interface is the basic interface for the container views that transform drawable objects that implement ITransformHost",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBeadView",
  "description": "The IBeadView interface is the interface for beads that represent the view for a control. It is used to find the view bead on the strand via calls to getBeadByType.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBinaryImage",
  "description": "The IBinaryImage interface describes the minimum set of properties available to an Image control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBinaryImageLoader",
  "description": "The IBinaryImageLoader interface marks classes that are used for loading binary data to image views",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBinaryImageModel",
  "description": "The IImageModel interface describes the minimum set of properties available to an Image control.  More sophisticated Image controls could have models that extend IImageModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBinding",
  "description": "IBinding interface is a &quot;marker&quot; for data-binding class that is optimized for simple assignments of one object's property to another object's property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBorderModel",
  "description": "The IBorderModel interface is the basic interface for a data model for drawing borders.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IBorderPaddingMarginValuesImpl",
  "description": "The IBorderPaddingMarginValuesImpl abstracts how to get data on the border, padding and margin of a component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ICSSImpl",
  "description": "A marker interface so the compiler knows whether to emit CSS"},
{ "name": "org.apache.royale.core.ICascadingMenuModel",
  "description": "The ITextModel interface describes the minimum set of properties available to control that displays text.  More sophisticated controls often have models that extend ITextModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IChangePropagator",
  "description": "The IChangePropagator is a marker interface",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IChild",
  "description": "The IChild interface is the basic interface for a component that is parented by another component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IChrome",
  "description": "The IChrome interface is a &quot;marker&quot; interface. Items that implement IChrome are designating themselves as being attached to their parent in a way that's different from normal content. For example, to a Container, a child being added that's an IChrome implementor will be added outside of the content area.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IColorModel",
  "description": "The IColorModel interface describes the minimum set of properties available to a control that displays or edits color.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IColorSpectrumModel",
  "description": "The IColorSpectrumModel interface describes the minimum set of properties available to a control that displays a color spectrum",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IColorWithAlphaModel",
  "description": "The IColorModel interface describes the minimum set of properties available to a control that displays or edits color.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IColumns",
  "description": "The IColumns interface describes the minimum set of properties available for a component that uses columns. Examples of components are DataGrids and Tables.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IComboBoxModel",
  "description": "The IComboBoxModel interface describes the minimum set of properties available to a ComboBox control.  More sophisticated ComboBox controls could have models that extend IComboBoxModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IContainer",
  "description": "The IContainer interface is used to mark certain components as Containers. While most components are containers in the sense that they are composited from a set of child components, the term Container is commonly used in Flex to denote components that take an arbitrary set or sets of children and do not try to abstract away that fact.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IContainerBaseStrandChildrenHost",
  "description": "The IContainerBaseStrandChildrenHost interface is implemented by components that use a ContainerBaseStrandChildren to proxy addElement/removeElement calls to an internal child and has the following APIs so the View can set up the &quot;chrome&quot; around the internal child.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IContainerView",
  "description": "The IContainerView interface should be implemented by any view bead that acts as the primary view for a ContainerBase-derived class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IContentView",
  "description": ""},
{ "name": "org.apache.royale.core.IContentViewHost",
  "description": "This interface is implemented by components that provide access to &quot;behind the scenes&quot; children that are not accessible through the addElement()/removeElement() APIs.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDataGrid",
  "description": "The IDataGrid interface is implemented by any component that supports being a &quot;DataGrid&quot; which means its content is generated by a factory and whose children are item renderers (IItemRenderer).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDataGridModel",
  "description": "The IDataGridModel interface describes the minimum set of properties available to an DataGrid control.  More sophisticated DataGrid controls could have models that extend IDataGridModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDataGridPresentationModel",
  "description": "The IDataGridPresentationModel interfaces defines the data needed to present a DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDataProviderItemRendererMapper",
  "description": "The IDataProviderItemRendererMapper interface is the interface for beads that know how to iterate through a dataProvider, generate item renderers, and assign items from the dataProvider to those item renderers.  In Royale, a wide range of data providers are allowed, from simple Arrays and Vectors on up to sophisticated data structures that dispatch change events. Different IDataProviderItemRendererMapper implements are often required to iterate through those different data structures.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDataProviderModel",
  "description": "The IDataProviderModel interface describes the minimum set of properties available to control that let the user choose within a set of items in a dataProvider.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDataProviderNotifier",
  "description": "The IDataProviderNotifier interface is a &quot;marker&quot; interface for beads that manage that dispatch events when data providers change.  A marker interface has no addtional APIs. It is used to find the notifier bead on the strand via calls to getBeadByType.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDataProviderVirtualItemRendererMapper",
  "description": "The IDataProviderItemRendererMapper interface is the interface for beads that know how to iterate through a dataProvider, generate item renderers, and assign items from the dataProvider to those item renderers.  In Royale, a wide range of data providers are allowed, from simple Arrays and Vectors on up to sophisticated data structures that dispatch change events. Different IDataProviderItemRendererMapper implements are often required to iterate through those different data structures.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDateChooserModel",
  "description": "The IDateChooserModel interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDateChooserModelWithChangeCheck",
  "description": "The IDateChooserModelWithChangeCheck adds a disabledChangeCheck API to the IDateChooserModel interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDateControlConfigBead",
  "description": "The IDateControlConfigBead interface should be implemented by any bead that provides a locale configuration for date controls like DateField and DateChooser",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDateFormatter",
  "description": "The IDateFormatter interface should be implemented by any bead that provides formatting of a date.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDocument",
  "description": "The IDocument interface is the basic interface for objects that can be tags in an MXML document and need to know about the host document.  It is similar to the IMXMLObject interface in the Flex SDK.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IDragInitiator",
  "description": "The IDragInitiator interface is the basic interface for the object that wants to know if a drop was accepted in a drag/drop operation.  There are two methods instead of the usual one because in some scenarios the drag initiator needs to prepare the data before it gets dropped. For example, in a tree control, dragging from one node to another, the tree should un-parent the node before it is moved to the new parent node, so the tree would un-parent the node in acceptingDrop.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IEffectTimer",
  "description": "The IEffectTimer interface is the basic interface for the class that updates effects like tweens.  Different IEffectTimer implementations are tuned for various runtime environments like mobile, Flash, desktop, or even automated testing where the currentTime is controlled so the animation updates its target at predictable positions on the screen.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IFactory",
  "description": "The IFactory interface is the basic interface used as the type for properties that specify a factory for item renderers and other scenarios where multiple copies of a custom class are generated.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IFlexInfo",
  "description": "The IFlexInfo interface is an interface used to signal to the compiler that it should generate a data structure that contains information about the application such as its size, mixins, locale, etc.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IFocusable",
  "description": "The IFocusable interface should be implemented by any component that can get the focus",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IFormatter",
  "description": "The IFormatter interface should be implemented by any bead that provides a formatting service.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IHasImage",
  "description": "The IHasImage interface describes the minimum set of properties available to a component with an image.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IIcon",
  "description": "IIcon interface provides abstraction for easiest way to implements custom icon class",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IIconSupport",
  "description": "Implement if a class will need ability to display an icon",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IId",
  "description": "The IId interface is the basic interface for components that must have an id or identifier for a concrete instance.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IImage",
  "description": "The IBinaryImage interface describes the minimum set of properties available to an Image control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IImageButton",
  "description": "The IImageButton interface describes the minimum set of properties available to an ImageButton control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IImageModel",
  "description": "The IImageModel interface describes the minimum set of properties available to an Image control.  More sophisticated Image controls could have models that extend IImageModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IImageView",
  "description": "The IImageView interface is the interface for beads that represent image views. It is used to find the view bead on the strand via calls to getBeadByType.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IIndexedItemRenderer",
  "description": "The IIndexedItemRenderer interface is the basic interface for item renderers that have an index property that indicates its index in the list of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IIndexedItemRendererInitializer",
  "description": "The IIndexedItemRendererInitializer interface is the basic interface for beads that initialize properties on an IItemRenderer.  Simple implementations only assign the data and itemRendererOwnerView property, but others will assign other properties if needed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IInitialViewApplication",
  "description": "The IInitialViewApplication interface is the interface for applications with a single initial views.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IItemRenderer",
  "description": "The IItemRenderer interface is the basic interface for item renderers. More complex item renderers may implements extensions of this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IItemRendererClassFactory",
  "description": "The IItemRendererClassFactory interface is the basic interface for beads that generate instances of IItemRenderers.  Note that this is not the same as an org.apache.royale.core.IFactory which is a lower-level interface for generating an instance of just about anything.  IItemRendererClassFactory implementations often use IFactory to generate the actual item renderer instance, but the IItemRendererClassFactory bead allows for more computation about which renderer to instantiate. For example, the default implementation in org.apache.royale.core.ItemRendererClassFactory checks for an itemRenderer property on the strand, then looks for a default definition in CSS, but also handles the renderer being defined in MXML in sub tags of the ItemRendererClassFactory.  Other more advanced implementations could return different renderers based on the data item's type.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IItemRendererInitializer",
  "description": "The IItemRendererInitializer interface is the basic interface for beads that initialize properties on an IItemRenderer.  Simple implementations only assign the itemRendererOwnerView property, but others will assign other properties if needed.  The implementations do not assign the data property.  The Factory/Mapper will assign data as the last property, after parenting, in order to trigger any data-bindings once.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IItemRendererOwnerView",
  "description": "The IItemRendererOwnerView interface is the basic interface for the container that parents item renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IItemRendererProvider",
  "description": "The IItemRendererProvider interface is implemented by classes that provide a ClassFactory for itemRenderers.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IItemRenderer", "org.apache.royale.core.IItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ILabelFieldItemRenderer",
  "description": "The IIndexedItemRenderer interface is the basic interface for item renderers that have an index property that indicates its index in the list of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ILabelFunction",
  "description": "The ILabelFunction interface is the interface used at Item Renderer level to detect if there's a bead on the strand that wants to use an external label function to format labels.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ILayoutChild",
  "description": "The IChild interface is the basic interface for a component that is parented by another component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ILayoutHost",
  "description": "The ILayoutHost interface is the basic interface for the container views that have an IBeadLayout.  The layout implementation often needs to know certain things about other objects in the view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ILayoutParent",
  "description": "The ILayoutParent interface is implemented by those components that allow their children to be manipulated by a layout.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ILayoutView",
  "description": "The ILayoutView interface is implemented by any component that has ILayoutChild children.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IList",
  "description": "The IList interface is implemented by any component that supports being a &quot;list&quot; which means its content is generated by a factory and whose children are item renderers (IItemRenderer).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IListDataItemRenderer",
  "description": "The IItemRenderer interface is the basic interface for item renderers. More complex item renderers may implements extensions of this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IListPresentationModel",
  "description": "The IListPresentationModel interface holds key values for the display of lists.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IListWithPresentationModel",
  "description": "The IListWithPresentationModel interface is implemented by any IList that supports a separate IListPresentationModel",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ILocalizedValuesImpl",
  "description": "The ILocalizedValuesImpl interface is the basic interface for the subsystem that provides localized values to components.  In Royale, different interfaces and implementations will handle different aspects of localization.  For example, implementations of this interface returns strings and possibly other values stored in the application, whereas a different interface will tackle date formatting, yet another may take on date parsing, because, per the pay-as-you-go (PAYG) principle, applications don't need to carry every localization feature if they don't need them.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.SimpleLocalizedValuesImpl", "org.apache.royale.core.SimpleLocalizedValuesImpl"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IMXMLDocument",
  "description": "The IMXMLDocument interface is an interface for a component that supports being written in MXML.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IMeasurementBead",
  "description": "The IMeasurementBead interface is the basic interface for the bead that can compute and report the measurements of the contents of a component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IMenu",
  "description": ""},
{ "name": "org.apache.royale.core.IMenuBarModel",
  "description": "The IComboBoxModel interface describes the minimum set of properties available to a ComboBox control.  More sophisticated ComboBox controls could have models that extend IComboBoxModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IMenuModel",
  "description": "The IMenuModel interface describes the minimum set of properties available for a Menu.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IModule",
  "description": "The compiler checks the main class to see if it implements the IModule interface and generates bootstrapping code for a module instead of an application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IMultiSelectionModel",
  "description": "The IMultiSelectionModel interface describes the minimum set of properties available to control that let the user select one or more items from within a set of items in a dataProvider.  A more sophisticated model would support multiple selection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IOwnerViewItemRenderer",
  "description": "The IOwnerViewItemRenderer interface is the basic interface for item renderers that have an itemRendererOwnerView property that references the View of the component that eventually parents the item renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IPanelModel",
  "description": "The IPanelModel interface describes the minimum set of properties available to a Panel control.  More sophisticated Panel controls could have models that extend IPanelModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IParent",
  "description": "The IParent interface is the basic interface for a component that contains subcomponents, including the application class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IParentIUIBase",
  "description": "The IParentIUIBase interface is a convenience interface for IUIBase components that contains subcomponents.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IPopUp",
  "description": "The IPopUp interface is a &quot;marker&quot; interface for a component that should be floated above other components that aren't an IPopUp.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IPopUpHost",
  "description": "The IPopUpHost interface is a &quot;marker&quot; interface for a component that parents components that implement IPopUp.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IPopUpHostParent",
  "description": "The IPopUpHostParent is the effective parent of popups. The actual parent may not be the effective parent in some implementations, so the effective parent provides a reference back to the IPopUpHost for removing",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IRangeModel",
  "description": "The IRangeModel interface describes the minimum set of properties available to control that let the user select from within a range of numbers like NumericStepper and Slider.  More sophisticated controls could have models that extend IRangeModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IRemovableBead",
  "description": "The IRemovableBead interface is an interface for beads that need to do some work before beign removed from the strand calling tearDown method like clean listeners.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.IStrand#getBeadByType", "org.apache.royale.core.IStrand#getBeadByType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IRenderedObject",
  "description": "The IRenderedObject interface is the basic interface for a component that has been rendered.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IRollOverModel",
  "description": "The IRollOverModel interface describes the minimum set of properties available to control that supports rollover highlighting of an item within a set of items.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IRuntimeSelectableItemRenderer",
  "description": "The IItemRenderer interface is the basic interface for item renderers. More complex item renderers may implements extensions of this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ISWFApplication",
  "description": "Interface for bootstrapping SWF Applications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IScrollBarModel",
  "description": "The IScrollBarModel interface describes the minimum set of properties available to control that let the user select from within a range of numbers like ScrollBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IScrollingLayoutParent",
  "description": "The IScrollingLayoutParent interface is an ILayoutParent that has traditional scrollbars.  The layout implementation often needs to know certain things about other objects in the component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IScrollingViewport",
  "description": "A ScrollingViewport is a Viewport that scrolls overflow content."},
{ "name": "org.apache.royale.core.ISelectable",
  "description": "The ISelectable interface is a marker interface for indicating a class has a selected property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ISelectableItemRenderer",
  "description": "The IItemRenderer interface is the basic interface for item renderers that require selection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ISelectionModel",
  "description": "The ISelectionModel interface describes the minimum set of properties available to control that let the user select from within a set of items in a dataProvider.  A more sophisticated model would support multiple selection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IState",
  "description": "The IState interface is a basic interface for States that are handled by various IStatesImpls.  IStatesImpls watche for the currentState property to change and executes changes accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStatesImpl",
  "description": "The IStatesImpl interface is a &quot;marker&quot; interface for the implementation view states in a View like ViewBase.  The implementation watches for the currentState property to change and executes changes accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStatesObject",
  "description": "The IStatesObject interface is the interface for an object that supports states.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStrand",
  "description": "The IStrand interface is the basic interface for a host component for a set of plug-ins known as Beads. In Royale, the recommended pattern is to break out optional functionality into small plug-ins that can be re-used in other components, or replaced with different implementations optimized for different things such as size, performance, advanced features, debugging, etc.  Beads are added to and removed from a Strand and can find and coordinate with other beads on the strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStrandWithModel",
  "description": "The IStrand interface is the basic interface for a host component for a set of plug-ins known as Beads. In Royale, the recommended pattern is to break out optional functionality into small plug-ins that can be re-used in other components, or replaced with different implementations optimized for different things such as size, performance, advanced features, debugging, etc.  Beads are added to and removed from a Strand and can find and coordinate with other beads on the strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStrandWithModelView",
  "description": "The IStrandWithModelView interface is the basic interface for a host component for a set of plug-ins known as Beads where two of the plugins are a model and a view. In Royale, the recommended pattern is to break out optional functionality into small plug-ins that can be re-used in other components, or replaced with different implementations optimized for different things such as size, performance, advanced features, debugging, etc.  Beads are added to and removed from a Strand and can find and coordinate with other beads on the strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStrandWithPresentationModel",
  "description": "The IStrandWithPresentationModel interface is implemented by any IStrand that supports a separate bead that is a presentationModel.  A presentationModel is a set of properties that act as parameters to the View as opposed to the regular model that is the data to be displayed by the view.  A simple example is the rowHeight of a vertical list.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStyleObject",
  "description": "The IStyleObject interface is the interface for objects that contain style properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStyleableObject",
  "description": "The IStyleableObject interface is the interface for objects that support style properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IStyledUIBase",
  "description": "The IStyledUIBase interface is the interface for advanced user interface components. Used in StyledUIBase that is the core component in the Jewel UI Set",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ITableModel",
  "description": "The IDataGridModel interface describes the minimum set of properties available to an DataGrid control.  More sophisticated DataGrid controls could have models that extend IDataGridModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ITextButton",
  "description": "ITextButton interface is implemented by button classes with text property like Button, CheckBox and RadioButton",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ITextInput",
  "description": "The IContainer interface is used to mark certain components as Containers. While most components are containers in the sense that they are composited from a set of child components, the term Container is commonly used in Flex to denote components that take an arbitrary set or sets of children and do not try to abstract away that fact.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ITextModel",
  "description": "The ITextModel interface describes the minimum set of properties available to control that displays text.  More sophisticated controls often have models that extend ITextModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ITitleBarModel",
  "description": "The ITitleBarModel interface describes the minimum set of properties available to control that displays a title bar.  More sophisticated controls often have models that extend ITitleBarModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IToggleButtonModel",
  "description": "The IToggleButtonModel interface describes the minimum set of properties available to ToggleButton that displays a text label.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IToolTipBead",
  "description": "The IToolTipBead interface for tooltip implementations.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ITransformHost",
  "description": "The ITransformHost interface is the basic interface for the container views that have an IBeadTransform.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ITransformModel",
  "description": "The ITransformModel interface describes the minimum set of properties needed to define a transformation on an object.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IUIBase",
  "description": "The IUIBase interface is the basic interface for user interface components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IValueToggleButtonModel",
  "description": "The IValueToggleButtonModel interface describes the minimum set of properties available each ToggleButton in a group of ToggleButtons of which only one can be selected at a time.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IValuesImpl",
  "description": "The IValuesImpl interface is the basic interface for the subsystem that provides default values to components.  The most common implementation implements a simple version of CSS and uses data structures compiled from CSS files.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.core.SimpleCSSValuesImpl", "org.apache.royale.core.SimpleCSSValuesImpl"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.IViewport",
  "description": "A Viewport is a window onto an area of content. A viewport is given space in which to operate by a View bead. Viewports can control their area which is specified by the IViewportModel, adding scrollbars or whatever scrolling mechanism they want."},
{ "name": "org.apache.royale.core.IViewportModel",
  "description": "A Viewport is the area of a Container set aside for displaying content and any scrolling controls. The ViewportModel caches the offsets required to compute the size of the Viewport."},
{ "name": "org.apache.royale.core.IViewportScroller",
  "description": "The IViewportScroller interface describes an object that can be used to scroll or navigate around a system that uses an IViewport. This may be a traditional scroll bar, or it could be something completely different.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ImageBase",
  "description": "The ImageBase class serves as a base class for components that displays a bitmap. The Image uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Image, including the url/binary property. org.apache.royale.core.IBeadView: constructs the visual elements of the component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ImageViewBase",
  "description": "The ImageView class creates the visual elements of the org.apache.royale.html.Image component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ItemRendererClassFactory",
  "description": "The ItemRendererClassFactory class is the default implementation of IItemRendererClassFactory.  This implementation checks for an itemRenderer property on the strand, then looks for a default definition in CSS, but also handles the renderer being defined in MXML in sub tags of the ItemRendererClassFactory.  Other more advanced implementations could return different renderers based on the data item's type.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ItemRendererOwnerViewBead",
  "description": "The ItemRendererOwnerViewBead stores a reference to the IItemRendererOwnerView for an IItemRenderer",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.LayoutBase",
  "description": "This class is the base class for most, if not all, layouts.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.LayoutManager",
  "description": "The LayoutManager class is an all static class which allows queing up measuring of components and layouts to prevent layout thrashing",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ListBaseStrandChildren",
  "description": "The ListBaseStrandChildren exists so that Lists are compatible with the ListView/ContainerView beads.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.Lookalike",
  "description": "The UIElement class Takes an IRenderedObject and creates a new UIBase which has the *appearance* of the original object. It *does not* have any of the orginal object's functionality.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.MXMLDragInitiator",
  "description": "The MXMLDragInitiator is an IDragInitiator that dispatches events when the IDragInitiator methods are called to make it easier to handle in MXML.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.OverridableSelectableItemRendererClassFactory",
  "description": "The SelectableItemRendererClassFactory class extends the default ItemRendererClassFactory and adds an ISelectableItemRenderer Bead to each renderer instance.  That allows renderers to be used in lists with or without selection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ParentDocumentBead",
  "description": "The ParentDocumentBead class looks up the parent chain to find a parent that was written in MXML. Because it is usually rare for an application to need to know this information, an optional bead is used to compute it, instead of baking in the overhead of a recursive infrastucture to store this information.  It is intended to be used as a bead in the top-level tag of an MXML document.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "royaleignoreimport",
       "values": ["org.apache.royale.core.IChild", "org.apache.royale.core.IChild"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.SelectableItemRendererClassFactory",
  "description": "The SelectableItemRendererClassFactory class extends the default ItemRendererClassFactory and adds an ISelectableItemRenderer Bead to each renderer instance.  That allows renderers to be used in lists with or without selection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.SimpleApplication",
  "description": "The SimpleApplication class can be used as the main class and entry point for low-level ActionScript-only Royale applications.  It is not indended for use in MXML applications or most of the Royale components as they expect a certain application lifecycle in the org.apache.royale.core.Application class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.SimpleCSSStyles",
  "description": "The SimpleCSSStyles class contains CSS style properties supported by SimpleCSSValuesImpl.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.core.SimpleCSSStylesWithFlex",
  "description": "The SimpleCSSStyles class contains CSS style properties supported by SimpleCSSValuesImpl.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.core.SimpleCSSValuesImpl",
  "description": "The SimpleCSSValuesImpl class implements a minimal set of CSS lookup rules that is sufficient for most applications and is easily implemented for SWFs. It does not support attribute selectors or descendant selectors or id selectors.  It will filter on a custom -royale-swf media query but not other media queries.  It can be replaced with other implementations that handle more complex selector lookups.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.SimpleLocalizedValuesImpl",
  "description": "The SimpleLocalizedValuesImpl class implements a simple getValue implementation that is sufficient for many very simple applications. Every key in every bundle must be provided in every locale.  There is no fall-through logic to the next locale.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.SimpleStatesImpl",
  "description": "The SimpleStatesImpl class implements a minimal set of view state functionality that is sufficient for most applications. It only supports AddItems and SetProperty changes at this time.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.SimpleValuesImpl",
  "description": "The SimpleValuesImpl class implements a simple lookup rules that is sufficient for many very simple applications.  Every value is essential global and shared by other instances.  Values are set via calls to setValue.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.StageProxy",
  "description": "The StageProxy class wraps the stage and presents it as a Royale IEventDispatcher.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.StatesWithTransitionsImpl",
  "description": "The StatesWithTransitionsImpl class implements a set of view state functionality that includes transitions between states. It only supports AddItems and SetProperty and SetEventHandler changes at this time.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "royaleignoreimport",
       "values": ["org.apache.royale.core.IStatesObject", "org.apache.royale.core.IStatesObject"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.Strand",
  "description": "The Strand class is the base class for non-display object that implement a strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.StrandWithModel",
  "description": "The Strand class is the base class for non-display object that implement a strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.StyleChangeNotifier",
  "description": "The StyleChangeNotifier can be added to the bead list of any UI component that needs to react to dynamic changes to its styles.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.StyleableCSSTextField",
  "description": "The StyleableCSSTextField class implements more CSS text styles in a TextField. This makes it easier to use one in a &quot;shadow DOM&quot; in a complex skin.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.StyledMXMLItemRenderer",
  "description": "The StyledMXMLItemRenderer class is the base class for itemRenderers that are MXML-based and provides support for ClassSelectorList.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.StyledUIBase",
  "description": "The StyledUIBase is the base class for UIBase components that makes heavy use of styles through IClassSelectorListSupport, and supports emphasis property through IEmphasis.  For Javascript platform it allows to default size properties (like width and height) to broswer defaults by removing the property. This is done through NaN value (that is the default)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.TextLineMetrics",
  "description": "The TextLineMetrics class contains font information about a line of text",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.core.TransformBeadBase",
  "description": ""},
{ "name": "org.apache.royale.core.TransformCompoundModel",
  "description": ""},
{ "name": "org.apache.royale.core.TransformModel",
  "description": ""},
{ "name": "org.apache.royale.core.TransformMoveXModel",
  "description": ""},
{ "name": "org.apache.royale.core.TransformMoveYModel",
  "description": ""},
{ "name": "org.apache.royale.core.TransformRotateModel",
  "description": ""},
{ "name": "org.apache.royale.core.TransformScaleModel",
  "description": ""},
{ "name": "org.apache.royale.core.UIBase",
  "description": "The UIBase class is the base class for most composite user interface components.  For the Flash Player, Buttons and Text controls may have a different base class and therefore may not extend UIBase. However all user interface components should implement IUIBase.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.UIButtonBase",
  "description": "The UIButtonBase class is the base class for most Buttons in a Royale application.  In Flash, these buttons extend SimpleButton and therefore do not support all of the Sprite APIs.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.UIHTMLElementWrapper",
  "description": "The UIHTMLElementWrapper class is the base class for most Buttons and other UI objects in a Royale application that do not have children. In Flash, these buttons extend SimpleButton and therefore do not support all of the Sprite APIs.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ValuesManager",
  "description": "The ValuesManager class is one of the few Singleton classes in Royale.  Instances of other things can be shared via IValuesImpl, but this class's API is its one static property where you get the instance of IValuesImpl by which other instances can be shared.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.View",
  "description": "The View class is the class for most views in a Royale application.  It is generally used as the root tag of MXML documents and UI controls and containers are added to it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.ViewBase",
  "description": "The ViewBase class is the base class for most views in a Royale application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.WrappedMovieClip",
  "description": ""},
{ "name": "org.apache.royale.core.WrappedShape",
  "description": ""},
{ "name": "org.apache.royale.core.WrappedSimpleButton",
  "description": ""},
{ "name": "org.apache.royale.core.WrappedSprite",
  "description": ""},
{ "name": "org.apache.royale.core.WrappedTextField",
  "description": ""},
{ "name": "org.apache.royale.core.layout.EdgeData",
  "description": "The EdgeData class is a utility class for holding four border and or padding of a component.  We don't use a Rectangle because Rectangle likes wants a width instead of a right value.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.layout.ILayoutChildren",
  "description": "The ILayoutChildren interface is a configurator marker bead that indicate to layout classes (i.e: StyledLayoutBase) that child instances must refresh layout due to changes in size.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.layout.ILayoutStyleProperties",
  "description": "The ILayoutStyleProperties interface is the contract for layout beads that needs to retrieve style properties set in their host component and apply to itself.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.layout.IPaddings",
  "description": "The Paddings class is a bead that adds padding to its host",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.layout.LayoutData",
  "description": "The LayoutData class is a utility class for holding margins, border and padding of a component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.layout.MarginData",
  "description": "The MarginData class is a utility class for holding four margins of a component, plus a flag for if both left and right margin have been set to &quot;auto&quot;.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.styles.BorderStyles",
  "description": "The BorderStyles class is a utility class for getting the 3 main border styles (width, color, style)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.core.supportClasses.StyledImageBase",
  "description": "The StyledImageBase class serves as a base class for components that displays a bitmap and used ClassSelectorList for set class selector names The Image uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Image, including the url/binary property. org.apache.royale.core.IBeadView: constructs the visual elements of the component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.Application",
  "description": "The Application class is the main class and entry point for a Royale application.  This Application class is different than the Flex SDK's mx:Application or spark:Application in that it does not contain user interface elements.  Those UI elements go in the views (ViewBase).  This Application class expects there to be a main model, a controller, and an initial view.  This is the CreateJS Application class which must be used in place of the normal Royale Application. CreateJS uses the HTML5 &lt;canvas&gt;, rather than the HTML DOM. This class sets up the canvas and injects the necessary script elements into the index.html file to bootstrap CreateJS.",
"tags": [
{  "tagName": "see",
       "values": ["ViewBase", "ViewBase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.CheckBox",
  "description": ""},
{ "name": "org.apache.royale.createjs.Container",
  "description": "Provides a nestable Container for CreateJS elements.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.Label",
  "description": "The Label class provides a static text string which may be colored.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.TextButton",
  "description": "The TextButton class provides a clickable button.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.core.CreateJSBase",
  "description": "This is the base class for CreateJS component wrappers used by Royale applications. This class provides standard properties that most of the Royale CreateJS wrapper classes use, such as a fill color.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.core.UIBase",
  "description": "The CreateJS framework provides its own version of UIBase. CreateJS uses the HTML 5 &lt;canvas&gt; for its work and does not use the HTML DOM like the most of Royale, so this replacement for UIBase allows the CreateJS wrapper classes for Royale to fit in.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.core.View",
  "description": "This version of View is specific for CreateJS since CreateJS does not use the HTML DOM.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.graphics.Circle",
  "description": "Creates a circle.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.graphics.GraphicShape",
  "description": "This is the base class for CreateJS graphic shape components such as Circle and Rect.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.graphics.Rect",
  "description": "Creates a rectangle.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.tween.Ease",
  "description": "This is the base class for the CreateJS/TweenJS effects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.tween.Effect",
  "description": "This is the base class for the CreateJS/TweenJS effects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.tween.Sequence",
  "description": "The Sequence effect plays a set of effects, one after the other.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.createjs.tween.Tween",
  "description": "The Tween effect animates an object from one place to another; it can also fade and object in and out by adjusting the object's alpha value. Once the target object is set, its starting position may be given (or its current location will be used) and an ending position given, the play() function is used to make the animation have effect.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.css2.Cursors",
  "description": "The Label class implements the basic control for labeling other controls.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.display.CapsStyle",
  "description": "These constants will be inlined in javascript",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.Graphics",
  "description": "",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.GraphicsBitmapFill",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.GraphicsEndFill",
  "description": ""},
{ "name": "org.apache.royale.display.GraphicsGradientFill",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.GraphicsSolidFill",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.GraphicsStroke",
  "description": "",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.IGraphicsData",
  "description": ""},
{ "name": "org.apache.royale.display.IGraphicsFill",
  "description": ""},
{ "name": "org.apache.royale.display.IGraphicsStroke",
  "description": ""},
{ "name": "org.apache.royale.display.IGraphicsTarget",
  "description": ""},
{ "name": "org.apache.royale.display.InterpolationMethod",
  "description": "",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.JPEGEncoderOptions",
  "description": "This class is not available for reflection",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.JointStyle",
  "description": "These constants will be inlined in javascript",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.LineScaleMode",
  "description": "These constants will be inlined in javascript",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.PNGEncoderOptions",
  "description": "This class is not available for reflection",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.display.UIGraphicsBase",
  "description": ""},
{ "name": "org.apache.royale.effects.CompoundEffect",
  "description": "CompoundEffect implements ICompoundEffect by dispatching events that should be handled by pluggable beads.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Effect",
  "description": "Effect is the base class for effects in Royale.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Fade",
  "description": "The Fade effect animates a UI component's alpha or opacity.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.ICompoundEffect",
  "description": "ICompoundEffect aggregates several related effects. Implementors will decide on the order in which they're played.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.IEffect",
  "description": "IEffect is the lowest-level interface for effects in Royale.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Move",
  "description": "The Move effect animates a UI component's x or y position.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Parallel",
  "description": "The Parallel effect animates set of effects at the same time.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.PlatformWiper",
  "description": "Helper class for Wipe effects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Resize",
  "description": "The Resize effect animates a UI component's width or height.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Sequence",
  "description": "The Sequence effect animates set of effects one after the other.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Tween",
  "description": "Tween is the underlying animation class for the effects in Royale.  The Tween class defines a tween, a property animation performed on a target object over a period of time. That animation can be a change in position, such as performed by the Move effect; a change in size, as performed by the Resize or Zoom effects; a change in visibility, as performed by the Fade or Dissolve effects; or other types of animations.  <p>A Tween instance accepts the <code>startValue</code>, <code>endValue</code>, and <code>duration</code> properties, and an optional easing function to define the animation.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.Wipe",
  "description": "The Fade effect animates a UI component's alpha or opacity.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.effects.beads.EasyAccordionCollapseBead",
  "description": ""},
{ "name": "org.apache.royale.effects.beads.ParallelPlayBead",
  "description": ""},
{ "name": "org.apache.royale.effects.beads.ParallelReverseBead",
  "description": ""},
{ "name": "org.apache.royale.effects.beads.SequencePlayBead",
  "description": ""},
{ "name": "org.apache.royale.events.CloseEvent",
  "description": "The CloseEvent class represents event objects specific to popup windows, such as the Alert control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.CollectionEvent",
  "description": "The CollectionEvent class is used for dispatching an collection events",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.CustomEvent",
  "description": "MXML auto-imports flash.events.Event which then requires full qualification to use org.apache.royale.events.Event. Use CustomEvent to skip all that extra typing.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.DetailEvent",
  "description": "The DetailEvent class is used for dispatching an event that has a string with more information",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.DragEvent",
  "description": "Drag and Drop Events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.DragEventBase",
  "description": "Drag and Drop Events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.ElementEvents",
  "description": ""},
{ "name": "org.apache.royale.events.Event",
  "description": "This class simply wraps flash.events.Event so that no flash packages are needed on the JS side. At runtime, this class is not always the event object that is dispatched.  In most cases we are dispatching DOMEvents instead, so as long as you don't actually check the typeof(event) it will work",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.EventDispatcher",
  "description": "This class simply wraps flash.events.EventDispatcher so that no flash packages are needed on the JS side.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.FocusEvent",
  "description": "An object dispatches a FocusEvent object when the user changes the focus from one object in the display list to another  There are four types of focus events: FocusEvent.FOCUS_IN FocusEvent.FOCUS_OUT FocusEvent.KEY_FOCUS_CHANGE FocusEvent.MOUSE_FOCUS_CHANGE",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.IBrowserEvent",
  "description": ""},
{ "name": "org.apache.royale.events.IEventDispatcher",
  "description": "This class simply wraps flash.events.EventDispatcher so that no flash packages are needed on the JS side.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.IRoyaleEvent",
  "description": "This class simply wraps flash.events.Event so that no flash packages are needed on the JS side. At runtime, this class is not always the event object that is dispatched.  In most cases we are dispatching DOMEvents instead, so as long as you don't actually check the typeof(event) it will work",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.ItemAddedEvent",
  "description": "The ItemAddedEvent is dispatched by IItemRendererOwnerView objects whenenver an itemRenderer is added.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.ItemClickedEvent",
  "description": "The ItemClickedEvent is a custom event issued by an itemRenderer to convey information about itself when it has determined that the event(s) happening to it constitute a 'click' on itself.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.ItemRemovedEvent",
  "description": "The ItemRemovedEvent is dispatched by IItemRendererOwnerView objects whenenver an itemRenderer is removed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.ItemRendererEvent",
  "description": "The ItemRendererEvent is dispatched by DataItemRendererFactory classes under various conditions.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.KeyboardEvent",
  "description": "Keyboard events",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.MouseEvent",
  "description": "Mouse events",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.MultiSelectionItemClickedEvent",
  "description": "The MultiSelectionItemClickedEvent is a custom event issued by a multi selection itemRenderer to convey information about itself when it has determined that the event(s) happening to it constitute a 'click' on itself.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.ProgressEvent",
  "description": "The ProgressEvent",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.StyleChangeEvent",
  "description": "Instances of the StyleChangeEvent class are dispatched by the StyleChangeNotifier when it detects changes to a component's style.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.ValueChangeEvent",
  "description": "The ValueChangeEvent class replaces the PropertyChangeEvent as the default event for property changes used in the databinding subsystem.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.ValueEvent",
  "description": "The ValueEvent class is used for dispatching an event that has one useful value",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.utils.EditingKeys",
  "description": "This class holds constants for editing keys See: https://w3c.github.io/uievents-key/#keys-editing See: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values#Editing_keys",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.IHandlesOriginalEvent",
  "description": "The presence of this interface indicates that the event.target being processed by a converter, such as MouseEventConverter, should be ignored.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.KeyConverter",
  "description": "Converts Keyboard Codes and key values into rational string equivalents.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.KeyboardEventConverter",
  "description": "Converts low level keyboard events to Royale KeyboardEvents",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.ModifierKeys",
  "description": "This class holds constants for modifier keys See: https://w3c.github.io/uievents-key/#keys-modifier See: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values#Modifier_keys",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.MouseEventConverter",
  "description": "Mouse events conversion.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.MouseUtils",
  "description": "This class maps common event functions for MouseEvent",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.NavigationKeys",
  "description": "This class holds constants for keyboard navigation See: https://w3c.github.io/uievents-key/#keys-navigation See: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values#Navigation_keys",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.SpecialKeys",
  "description": "This class holds constants for special keys See: https://w3c.github.io/uievents-key/#keys-special See: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values#Special_values",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.UIKeys",
  "description": "This class holds constants for special keys See: https://w3c.github.io/uievents-key/#keys-ui See: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values#UI_keys",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.events.utils.WhitespaceKeys",
  "description": "This class holds constants for special keys See: https://w3c.github.io/uievents-key/#keys-whitespace See: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values#Whitespace_keys",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.express.Application",
  "description": "This class extends the standard Application and sets up the SimpleCSSValuesImpl (implementation) for convenience.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/Application.html", "https://flex.apache.org/asdoc/spark/components/Application.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.Application", "spark.components.Application"]},
    {  "tagName": "commentary",
       "values": ["Unlike Flex Application, Royale Application does not provide a user interface container. Instead, you create an instance of org.apache.royale.express.View as the Application's initialView property.", "The Express version of Application pre-packages some additional beads.", "Unlike Flex Application, Royale Application does not provide a user interface container. Instead, you create an instance of org.apache.royale.express.View as the Application's initialView property.", "The Express version of Application pre-packages some additional beads."]},
    {  "tagName": "example",
       "values": ["&lt;js:Application&gt;", "&nbsp;&nbsp;&lt;js:initialView&gt;", "&nbsp;&nbsp;&nbsp;&nbsp;&lt;local:MyInitialView /&gt;", "&nbsp;&nbsp;&lt;/js:initialView&gt;", "&lt;/js:Application&gt;", "&lt;js:Application&gt;", "&nbsp;&nbsp;&lt;js:initialView&gt;", "&nbsp;&nbsp;&nbsp;&nbsp;&lt;local:MyInitialView /&gt;", "&nbsp;&nbsp;&lt;/js:initialView&gt;", "&lt;/js:Application&gt;"]}  ]},
{ "name": "org.apache.royale.express.Container",
  "description": "This class extends the standard Container and adds the ContainerDataBinding bead and ScrollingViewport beads for convenience.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/Group.html", "https://flex.apache.org/asdoc/spark/components/Group.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.Group", "spark.components.Group"]},
    {  "tagName": "commentary",
       "values": ["In the Royale Express package, data binding is prepackaged into the Container component.", "Royale Express Container also includes support for scrolling.", "Royale Express also provides HContainer (horizontal layout) and VContainer (vertical layout) for convenience.", "In the Royale Express package, data binding is prepackaged into the Container component.", "Royale Express Container also includes support for scrolling.", "Royale Express also provides HContainer (horizontal layout) and VContainer (vertical layout) for convenience."]}  ]},
{ "name": "org.apache.royale.express.DataGrid",
  "description": "This class extends DataGrid and adds beads for drag and drop and column reordering.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/DataGrid.html", "https://flex.apache.org/asdoc/spark/components/DataGrid.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.DataGrid", "spark.components.DataGrid"]},
    {  "tagName": "commentary",
       "values": ["The Royale DataGrid is very similar to the Flex DataGrid. You define the DataGrid using DataGridColumn, assigning to each column a field in the data provider and an itemRenderer to display the data.", "The Royale Express DataGrid is packaged with support for drag-and-drop and column re-ordering.", "The Royale DataGrid is very similar to the Flex DataGrid. You define the DataGrid using DataGridColumn, assigning to each column a field in the data provider and an itemRenderer to display the data.", "The Royale Express DataGrid is packaged with support for drag-and-drop and column re-ordering."]},
    {  "tagName": "example",
       "values": ["&lt;js:DataGrid width=&quot;300&quot; height=&quot;400&quot;&gt;", "&nbsp;&nbsp;&lt;js:beads&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:ConstantBinding", "&nbsp;&nbsp;&nbsp;&nbsp;sourceID=&quot;applicationModel&quot;", "&nbsp;&nbsp;&nbsp;&nbsp;sourcePropertyName=&quot;productList&quot;", "&nbsp;&nbsp;&nbsp;&nbsp;destinationPropertyName=&quot;dataProvider&quot; /&gt;", "&nbsp;&nbsp;&lt;/js:beads&gt;", "&nbsp;&nbsp;&lt;js:columns&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:DataGridColumn label=&quot;Image&quot; dataField=&quot;image&quot; columnWidth=&quot;50&quot; itemRenderer=&quot;products.ProductItemRenderer&quot; /&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:DataGridColumn label=&quot;Title&quot; dataField=&quot;title&quot; columnWidth=&quot;150&quot; /&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:DataGridColumn label=&quot;Sales&quot; dataField=&quot;sales&quot; columnWidth=&quot;100&quot; /&gt;", "&nbsp;&nbsp;&lt;/js:columns&gt;", "&lt;/js:DataGrid&gt;", "&lt;js:DataGrid width=&quot;300&quot; height=&quot;400&quot;&gt;", "&nbsp;&nbsp;&lt;js:beads&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:ConstantBinding", "&nbsp;&nbsp;&nbsp;&nbsp;sourceID=&quot;applicationModel&quot;", "&nbsp;&nbsp;&nbsp;&nbsp;sourcePropertyName=&quot;productList&quot;", "&nbsp;&nbsp;&nbsp;&nbsp;destinationPropertyName=&quot;dataProvider&quot; /&gt;", "&nbsp;&nbsp;&lt;/js:beads&gt;", "&nbsp;&nbsp;&lt;js:columns&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:DataGridColumn label=&quot;Image&quot; dataField=&quot;image&quot; columnWidth=&quot;50&quot; itemRenderer=&quot;products.ProductItemRenderer&quot; /&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:DataGridColumn label=&quot;Title&quot; dataField=&quot;title&quot; columnWidth=&quot;150&quot; /&gt;", "&nbsp;&nbsp;&nbsp;&lt;js:DataGridColumn label=&quot;Sales&quot; dataField=&quot;sales&quot; columnWidth=&quot;100&quot; /&gt;", "&nbsp;&nbsp;&lt;/js:columns&gt;", "&lt;/js:DataGrid&gt;"]}  ]},
{ "name": "org.apache.royale.express.HContainer",
  "description": "This class extends Container and adds the HorizontalLayout bead for convenience.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/Group.html", "https://flex.apache.org/asdoc/spark/components/Group.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.HGroup", "spark.components.HGroup"]},
    {  "tagName": "commentary",
       "values": ["In the Royale Express package, data binding is prepackaged into the HContainer component.", "Royale Express HContainer also includes support for scrolling.", "Royale Express also provides Container (basic layout) and VContainer (vertical layout) for convenience.", "In the Royale Express package, data binding is prepackaged into the HContainer component.", "Royale Express HContainer also includes support for scrolling.", "Royale Express also provides Container (basic layout) and VContainer (vertical layout) for convenience."]}  ]},
{ "name": "org.apache.royale.express.HSlider",
  "description": ""},
{ "name": "org.apache.royale.express.HView",
  "description": "This class extends View and adds the HorizontalLayout bead for convenience."},
{ "name": "org.apache.royale.express.ImageAndTextButton",
  "description": "This class extends ImageAndTextButton and adds the toolTip bead as a convenience."},
{ "name": "org.apache.royale.express.ImageButton",
  "description": "This class extends ImageButton and adds the toolTip bead as a convenience.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/Button.html", "https://flex.apache.org/asdoc/spark/components/Button.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.Button", "spark.components.Button"]},
    {  "tagName": "commentary",
       "values": ["In Royale, buttons that uses images should either be an ImageButton or a ImageAndTextButton.", "This class includes <ul><li>toolTip: String</li><li>enabled: Boolean</li></ul> properties.", "In Royale, buttons that uses images should either be an ImageButton or a ImageAndTextButton.", "This class includes <ul><li>toolTip: String</li><li>enabled: Boolean</li></ul> properties."]}  ]},
{ "name": "org.apache.royale.express.List",
  "description": "The List class is a component that displays multiple data items take from a data source.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/List.html", "https://flex.apache.org/asdoc/spark/components/List.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.List", "spark.components.List"]},
    {  "tagName": "commentary",
       "values": ["In Royale, the List component requires a data provider source and a class to be used as an itemRenderer to display the data.", "In the Royale Express package, data binding is prepackaged into the List component. The Royale Express List also includes support for scrolling as well as drag-and-drop.", "In Royale, the List component requires a data provider source and a class to be used as an itemRenderer to display the data.", "In the Royale Express package, data binding is prepackaged into the List component. The Royale Express List also includes support for scrolling as well as drag-and-drop."]},
    {  "tagName": "example",
       "values": ["&lt;js:List dataProvider=&quot;{employees}&quot; itemRenderer=&quot;local.EmployeeCard&quot; /&gt;", "&lt;js:List dataProvider=&quot;{employees}&quot; itemRenderer=&quot;local.EmployeeCard&quot; /&gt;"]}  ]},
{ "name": "org.apache.royale.express.MXMLItemRenderer",
  "description": "This class extends MXMLItemRenderer and adds ItemRendererDataBinding for convenience."},
{ "name": "org.apache.royale.express.MXMLViewer",
  "description": "This class extends the standard Label and allows MXML content (ie, XML or HTML) to be displayed."},
{ "name": "org.apache.royale.express.NumericStepper",
  "description": "The NumericStepper class is a component that displays a numeric value and up/down controls (using a org.apache.royale.html.Spinner) to increase and decrease the value by specific amounts. The NumericStepper uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the component of type org.apache.royale.core.IRangeModel. org.apache.royale.core.IBeadView: constructs the parts of the component. org.apache.royale.core.IBeadController: handles the input events.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.express.TextButton",
  "description": "This class extends TextButton and adds the toolTip bead as a convenience.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/Button.html", "https://flex.apache.org/asdoc/spark/components/Button.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.Button", "spark.components.Button"]},
    {  "tagName": "commentary",
       "values": ["The Royale Express TextButton is pre-packaged with beads to do:", "<ul><li>enabled: Boolean</li><li>toolTip: String</li><li>secure: Boolean</li></ul>See also the Royale Express ImageButton and the Royale Express ImageAndTextButton.", "The Royale Express TextButton is pre-packaged with beads to do:", "<ul><li>enabled: Boolean</li><li>toolTip: String</li><li>secure: Boolean</li></ul>See also the Royale Express ImageButton and the Royale Express ImageAndTextButton."]}  ]},
{ "name": "org.apache.royale.express.TextInput",
  "description": "This class extends the standard TextInput class and adds in the prompt, password, and numeric accessories (as needed) for convenience."},
{ "name": "org.apache.royale.express.VContainer",
  "description": "This class extends Container and adds the VerticalLayout bead for convenience.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/Group.html", "https://flex.apache.org/asdoc/spark/components/Group.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.VGroup", "spark.components.VGroup"]},
    {  "tagName": "commentary",
       "values": ["In the Royale Express package, data binding is prepackaged into the VContainer component.", "Royale Express VContainer also includes support for scrolling.", "Royale Express also provides Container (basic layout) and HContainer (horizontal layout) for convenience.", "In the Royale Express package, data binding is prepackaged into the VContainer component.", "Royale Express VContainer also includes support for scrolling.", "Royale Express also provides Container (basic layout) and HContainer (horizontal layout) for convenience."]}  ]},
{ "name": "org.apache.royale.express.VSlider",
  "description": ""},
{ "name": "org.apache.royale.express.VView",
  "description": "This class extends View and adds the VerticalLayout bead for convenience."},
{ "name": "org.apache.royale.express.View",
  "description": "This View extends the standard View and adds the ViewDataBinding bead for convenience.",
"tags": [
{  "tagName": "flexdocurl",
       "values": ["https://flex.apache.org/asdoc/spark/components/Application.html", "https://flex.apache.org/asdoc/spark/components/Application.html"]},
    {  "tagName": "flexcomponent",
       "values": ["spark.components.Application", "spark.components.Application"]},
    {  "tagName": "commentary",
       "values": ["Unlike Flex, the Royale Application has no visual aspect. Instead, Royale application's extend the View class which is most often the base class for application MXML components.", "The Royale Express View includes data binding. For convenience, Royale Express also provides HView (horizontal layout) and VView (vertical layout).", "Unlike Flex, the Royale Application has no visual aspect. Instead, Royale application's extend the View class which is most often the base class for application MXML components.", "The Royale Express View includes data binding. For convenience, Royale Express also provides HView (horizontal layout) and VView (vertical layout)."]}  ]},
{ "name": "org.apache.royale.express.beads.layouts.DataGridLayout",
  "description": "This DataGridLayout class sizes and positions all of the elements of the DataGrid in the Express package. The ButtonBar header, the container content area for the the list columns, and the positioning and sizing of the list columns within that container. On top of the contain a drawing layer is floating to allow for the graphics of a drag-and-drop indicator."},
{ "name": "org.apache.royale.express.beads.models.DataGridModel",
  "description": ""},
{ "name": "org.apache.royale.express.supportClasses.DataGridColumn",
  "description": "This class defines how a column in the DataGrid should look, including the label for the column and its width. In particular, the width may be given as a fixed pixel size (e.g., &quot;80&quot;) or a percentage of the remaining space once all fixed-width columns have been taken into consideration (e.g., &quot;100%&quot;). That is, if the DataGrid has a width of 400 pixels with columns of &quot;50&quot;, &quot;100%&quot;, and &quot;80&quot;, the &quot;100%&quot; column is the remainder of 400-50-80 or 260. If the DataGrid is resized to 500 pixels, the outer columns remain at 50 and 80 pixels, but the middle column expands to 360 pixels given its &quot;100%&quot; value."},
{ "name": "org.apache.royale.file.FileProxy",
  "description": "The FileProxy class is where beads regarding file operations are added. Information about operations can be queried in the file model, or by listenening to events dispatched by beads.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.IFileModel",
  "description": ""},
{ "name": "org.apache.royale.file.beads.FileBrowser",
  "description": "The FileBrowser class is a bead which adds to UploadImageProxy the ability to browse the file system and select a file.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileBrowserWithFilter",
  "description": "The FileBrowserWithFilter adds a filtering option to FileBrowser",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileLoader",
  "description": "The FileLoader class is a bead which adds to UploadImageProxy the ability to browse the file system and select a file.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileLoaderAndUploader",
  "description": "The FileLoaderAndUploader is a compound bead that allows you to load a file and upload it in one operation.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileModel",
  "description": "The FileModel class is a bead that contains basic information on the file referenced by FileProxy",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileModelWithParams",
  "description": "The FileModelWithParams class should allow sending a file with parameters. The js implementation uses FormData.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileModelWithParamsAndFileContent",
  "description": "The FileModelWithParamsAndFileContent behaves like FileModelWithParams but retains the file content. This can be useful e.g. for displaying a thumbnail of a file you are about to upload in FormData format.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileUploader",
  "description": "The FileUploader class is a bead which adds to FileProxy the ability to upload files.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.file.beads.FileUploaderWithResponseData",
  "description": "FileUploaderWithResponseData records responseData before dispatching the complete event",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.geom.Matrix",
  "description": "2D Matrix",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7", "Royale 0.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.geom.Point",
  "description": "The Point class is a utility class for holding x and y values, not that you can't use it to hold a width and height value.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.geom.Rectangle",
  "description": "The Rectangle class is a utility class for holding four coordinates of a rectangle",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.geom.Size",
  "description": "The Size class is a utility class for holding width and height values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.graphics.CubicCurve",
  "description": ""},
{ "name": "org.apache.royale.graphics.GradientBase",
  "description": ""},
{ "name": "org.apache.royale.graphics.GradientEntry",
  "description": ""},
{ "name": "org.apache.royale.graphics.ICircle",
  "description": ""},
{ "name": "org.apache.royale.graphics.ICompoundGraphic",
  "description": ""},
{ "name": "org.apache.royale.graphics.IDrawable",
  "description": ""},
{ "name": "org.apache.royale.graphics.IEllipse",
  "description": ""},
{ "name": "org.apache.royale.graphics.IFill",
  "description": ""},
{ "name": "org.apache.royale.graphics.IGraphicShape",
  "description": ""},
{ "name": "org.apache.royale.graphics.IPath",
  "description": ""},
{ "name": "org.apache.royale.graphics.IPathCommand",
  "description": ""},
{ "name": "org.apache.royale.graphics.IRect",
  "description": ""},
{ "name": "org.apache.royale.graphics.IStroke",
  "description": ""},
{ "name": "org.apache.royale.graphics.IText",
  "description": ""},
{ "name": "org.apache.royale.graphics.LineStyle",
  "description": ""},
{ "name": "org.apache.royale.graphics.LineTo",
  "description": ""},
{ "name": "org.apache.royale.graphics.MoveTo",
  "description": ""},
{ "name": "org.apache.royale.graphics.PathBuilder",
  "description": ""},
{ "name": "org.apache.royale.graphics.QuadraticCurve",
  "description": ""},
{ "name": "org.apache.royale.graphics.SolidColor",
  "description": ""},
{ "name": "org.apache.royale.graphics.SolidColorStroke",
  "description": ""},
{ "name": "org.apache.royale.graphics.beads.BlendBead",
  "description": "The BlendBead class translates HTML mixBlendMode CSS values to flash. The JS implementation is degenerated and exists only to enable output agnostic compilation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.AdvancedLayoutFeatures",
  "description": "Transform Offsets can be assigned to any Component or GraphicElement to modify the transform of the object beyond where its parent layout places it.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.CompoundTransform",
  "description": "A CompoundTransform represents a 2D or 3D matrix transform.  A compound transform represents a matrix that can be queried or set either as a 2D matrix, a 3D matrix, or as individual convenience transform properties such as x, y, scaleX, rotationZ, etc.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.IAssetLayoutFeatures",
  "description": "The IAssetLayoutFeatures interface defines the minimum properties and methods required for an Object to support advanced transforms in embedded assets.",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.AdvancedLayoutFeatures", "mx.core.AdvancedLayoutFeatures"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0.1", "Royale 1.0.0.1"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.MatrixUtil",
  "description": "The MatrixUtil class is for internal use only. Class for matrix and geometric related math routines.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.graphics.utils.PathHelper",
  "description": ""},
{ "name": "org.apache.royale.graphics.utils.TransformOffsets",
  "description": "A CompoundTransform represents a 2D or 3D matrix transform. It can be used in the postLayoutTransformOffsets property on a UIComponent or GraphicElement.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.ColorBurnShader",
  "description": "Creates a blend shader that is equivalent to the 'Color Burn' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>The 'colorburn' blend mode can be set on Flex groups and graphic elements and the visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ColorBurnShaderExample.mxml", "examples/ColorBurnShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.ColorDodgeShader",
  "description": "Creates a blend shader that is equivalent to the 'Color Dodge' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>The 'colordodge' blend mode can be set on Flex groups and graphic elements. The visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ColorDodgeShaderExample.mxml", "examples/ColorDodgeShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.ColorShader",
  "description": "The ColorShader class creates a blend shader that is equivalent to the 'Color' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  The 'color' blend mode can be set on Flex groups and graphic elements and the visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ColorShaderExample.mxml", "examples/ColorShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.ExclusionShader",
  "description": "Creates a blend shader that is equivalent to the 'Exclusion' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>The 'exclusion' blend mode can be set on Flex groups and graphic elements. The visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ExclusionShaderExample.mxml", "examples/ExclusionShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.HueShader",
  "description": "Creates a blend shader that is equivalent to the 'Hue' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>The 'hue' blend mode can be set on Flex groups and graphic elements. The visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HueShaderExample.mxml", "examples/HueShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.LuminosityMaskShader",
  "description": "Creates a blend shader that is equivalent to the luminosity masking option (also known as soft masking) available in Adobe Creative Suite tools. This mask type is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>A luminosity mask type can be set on Flex groups and graphic elements. The visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LuminosityMaskShaderExample.mxml", "examples/LuminosityMaskShaderExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.primitives.supportClasses.GraphicElement#maskType", "spark.components.supportClasses.GroupBase#maskType", "spark.primitives.supportClasses.GraphicElement#maskType", "spark.components.supportClasses.GroupBase#maskType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.LuminosityShader",
  "description": "Creates a blend shader that is equivalent to the 'Luminosity' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>The 'luminosity' blend mode can be set on Flex groups and graphic elements. The visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LuminosityShaderExample.mxml", "examples/LuminosityShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.SaturationShader",
  "description": "Creates a blend shader that is equivalent to the 'Saturation' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>The 'saturation' blend mode can be set on Flex groups and graphic elements. The visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SaturationShaderExample.mxml", "examples/SaturationShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.graphics.utils.shaderClasses.SoftLightShader",
  "description": "Creates a blend shader that is equivalent to the 'Soft Light' blend mode for RGB premultiplied colors available in Adobe Creative Suite tools. This blend mode is not native to Flash, but is available in tools like Adobe Illustrator and Adobe Photoshop.  <p>The 'softlight' blend mode can be set on Flex groups and graphic elements. The visual appearance in tools like Adobe Illustrator and Adobe Photoshop will be mimicked through this blend shader.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SoftLightShaderExample.mxml", "examples/SoftLightShaderExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Accordion",
  "description": "The Accordion class used to display a list of collapsible components All but the selected item are expected to be collapsed.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Alert",
  "description": "The Alert class is a component that displays a message and one or more buttons in a view that pops up over all other controls and views. The Alert component uses the AlertView bead to display a modal dialog with a title and a variety of buttons configured through the flag property of its show() static function. The Alert component uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Alert. org.apache.royale.core.IBeadView: the bead used to create the parts of the Alert. org.apache.royale.core.IBeadController: the bead used to handle input events. org.apache.royale.html.beads.IBorderBead: if present, draws a border around the Alert. org.apache.royale.html.beads.IBackgroundBead: if present, places a solid color background below the Alert.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.BinaryImage",
  "description": "The Image class is a component that displays a bitmap. The Image uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Image, including the url/binary property. org.apache.royale.core.IBeadView: constructs the visual elements of the component.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Button",
  "description": "The Button class is a simple button.  Use TextButton for buttons that should show text.  This is the lightest weight button used for non-text buttons like the arrow buttons in a Scrollbar or NumericStepper.  The most common view for this button is CSSButtonView that allows you to specify a backgroundImage in CSS that defines the look of the button.  However, when used in ScrollBar and when composed in many other components, it is more common to assign a custom view to the button.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ButtonBar",
  "description": "The ButtonBar class is a component that displays a set of Buttons. The ButtonBar is actually a List with a default horizontal layout and an itemRenderer that produces Buttons. The ButtonBar uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the ButtonBar, including the dataProvider. org.apache.royale.core.IBeadView: constructs the parts of the component. org.apache.royale.core.IBeadController: handles input events. org.apache.royale.core.IBeadLayout: sizes and positions the component parts. org.apache.royale.core.IDataProviderItemRendererMapper: produces itemRenderers. org.apache.royale.core.IItemRenderer: the class or class factory to use.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ButtonBase",
  "description": "The ButtonBase class is the base class for Button.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.CSSCheckBox",
  "description": "The CSSCheckBox class implements the common user interface control.  The CSSCheckBox includes its text label and is styleable using CSS. To style the checkbox control, a `checkClassName` should be specified which corresponds to a CSS class name.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.CascadingMenu",
  "description": "The CascadingMenu class displays a list of selections with a potential for displaying a sub-list and a sub-sub-list etc. depending on how the data is organized.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.CascadingMenuWithOnScreenCheck",
  "description": "The CascadingMenuWithOnScreenCheck adjusts the position to make sure it is on-screen.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.CheckBox",
  "description": "The CheckBox class implements the common user interface control.  The CheckBox includes its text label.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.CloseButton",
  "description": "The CloseButton class is Button that displays an X and is commonly used in a Panel's TitleBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ColorPicker",
  "description": "The ColorPicker class is a component that lets you select a color",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ComboBox",
  "description": "The ComboBox class is a component that displays an input field and pop-up List with selections. Selecting an item from the pop-up List places that item into the input field of the ComboBox. The ComboBox uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItem, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the component. org.apache.royale.core.IBeadController: the bead that handles input and output.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Container",
  "description": "The Container class implements a basic container for other controls and containers.  The position and size of the children are determined by a layout while the size of a Container can either be determined by its children or by specifying an exact size in pixels or as a percentage of the parent element.  This Container does not have a built-in scroll bar or clipping of its content should the content exceed the Container's boundaries. To have scroll bars and clipping, add the ScrollingView bead.  While the container is relatively lightweight, it should generally not be used as the base class for other controls, even if those controls are composed of children.  That's because the fundamental API of Container is to support an arbitrary set of children, and most controls only support a specific set of children.  And that's one of the advantages of beads: that functionality used in a Container can also be used in a Control as long as that bead doesn't assume that its strand is a Container.  For example, even though you can use a Panel to create the equivalent of an Alert control, the Alert is a control and not a Container because the Alert does not support an arbitrary set of children.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.layout", "org.apache.royale.html.supportClasses.ScrollingViewport", "org.apache.royale.html.beads.layout", "org.apache.royale.html.supportClasses.ScrollingViewport"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ControlBar",
  "description": "The ControlBar class is used within a Panel as a place to position additional controls. The ControlBar appears at the bottom of the org.apache.royale.html.Panel and is not part of the Panel's scrollable content area. The ControlBar is a Container and implements the org.apache.royale.core.IChrome interface, indicating that is outside of the Container's content area. The ControlBar uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the component. org.apache.royale.core.IMeasurementBead: helps determine the overlay size of the ControlBar for layout. org.apache.royale.html.beads.IBorderBead: if present, displays a border around the component. org.apache.royale.html.beads.IBackgroundBead: if present, displays a solid background below the ControlBar.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DataContainer",
  "description": "The DataContainer class is a component that displays multiple data items. The DataContainer uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the list. org.apache.royale.core.IBeadController: the bead that handles input and output. org.apache.royale.core.IBeadLayout: the bead responsible for the size and position of the itemRenderers. org.apache.royale.core.IDataProviderItemRendererMapper: the bead responsible for creating the itemRenders. org.apache.royale.core.IItemRenderer: the class or factory used to display an item in the list.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DataGrid",
  "description": "The DataGrid class displays a collection of data using columns and rows. Each column represents a specific field in the data set; each row represents a specific datum. The DataGrid is a composite component built with a org.apache.royale.html.ButtonBar for the column headers and a org.apache.royale.html.List for each column. The DataGrid's view bead (usually org.apache.royale.html.beads.DataGridView) constructs these parts while itemRenderer factories contruct the elements to display the data in each cell.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DataGridButtonBar",
  "description": "The DataGridButtonBar class extends ButtonBar and provides a class for styling the header region of the DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DataGridButtonBarTextButton",
  "description": "The DataGridButtonBarTextButton class extends TextButton so that the buttons used in the DataGrid header can be styled separately from normal TextButtons.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DateChooser",
  "description": "The DateChooser class is a component that displays a calendar.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DateField",
  "description": "The DateField class provides an input field where a date can be entered and a pop-up calendar control for picking a date as an alternative to the text field.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DividedContainer",
  "description": "The DividedContainer lays out its children (either horizontally or vertically, depending on which layout is used) separated by dividers. The dividers can be moved to grow and shrink the children.  This is the base class. See HDividedContainer and VDividedContainer for useful implementations.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DropDownList",
  "description": "The DropDownList class implements the basic equivalent of the <code>&lt;select&gt;</code> tag in HTML. The default implementation only lets the user see and choose from an array of strings.  More complex controls would display icons as well as strings, or colors instead of strings or just about anything.  The default behavior only lets the user choose one and only one item.  More complex controls would allow mutiple selection by not dismissing the dropdown as soon as a selection is made.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.DynamicDataGrid",
  "description": ""},
{ "name": "org.apache.royale.html.DynamicList",
  "description": ""},
{ "name": "org.apache.royale.html.Form",
  "description": "The Form class is a simple form.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Group",
  "description": "The Group class provides a light-weight container for visual elements. By default the Group does not have a layout, allowing its children to be sized and positioned using styles or CSS.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.layout", "org.apache.royale.html.supportClasses.ScrollingViewport", "org.apache.royale.html.beads.layout", "org.apache.royale.html.supportClasses.ScrollingViewport"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.HContainer",
  "description": "A Container that has a HorizontalLayout.  This is effectively the same as the pattern <code> <basic:Container xmlns:basic=&quot;library://ns.apache.org/royale/basic&quot;> <basic:layout> <basic:HorizontalLayout /> </basic:layout> </basic:Container> </code>",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.HDividedContainer",
  "description": "This sub-class of DividedContainer organizes its children into columns separated by movable dividers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.HGroup",
  "description": "This Group subclass uses HorizontalLayout as its default layout.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.layout", "org.apache.royale.html.beads.layout"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.HRule",
  "description": "The HRule class displays a horizontal line",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.HTMLText",
  "description": "The HTMLText class implements the basic control for adding HTML formatted text.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.HueSelector",
  "description": "The HueSelector is a slider that lets you select a hue for a color picker.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.IListPresentationModel",
  "description": "The IListPresentationModel interface holds key values for the display of lists.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Image",
  "description": "Load Images.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ImageAndTextButton",
  "description": "The ImageTextButton class implements a basic button that displays and image and text.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ImageButton",
  "description": "The ImageButton class presents an image as a button.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Label",
  "description": "The Label class implements the basic control for labeling other controls.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.List",
  "description": "The List class is a component that displays multiple data items. The List uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItem, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the list. org.apache.royale.core.IBeadController: the bead that handles input and output. org.apache.royale.core.IBeadLayout: the bead responsible for the size and position of the itemRenderers. org.apache.royale.core.IDataProviderItemRendererMapper: the bead responsible for creating the itemRenders. org.apache.royale.core.IItemRenderer: the class or factory used to display an item in the list.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.LoadIndicator",
  "description": "The loader class provides an animated indicator",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.MXMLBeadView",
  "description": "The MXMLBeadView class extends ContainerView and adds support for databinding and specification of children in MXML.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Menu",
  "description": "The Menu class builds pop-up menus that are presented as a list, displayed at a specific location. The dataProvider should be an Array of either Strings or Objects; if Objects, set the Menu's labelField to identify the property in the Object to use for the labels in the Menu.  Use createMenu to create a Menu and add an event listener to be triggered when a menu item is selected.  var menu:Menu = Menu.createMenu(dataProvider); menu.addEventListener(&quot;change&quot;, handleSelection);  Present the menu using the show function: menu.show(component, xoffset, yoffset);  Pass a component to use a reference when calculating the position of the menu. Set an offset from the component's upper-left corner. If an item is selected the event listener will be called.  Remove the menu using menu.hide();  Note: submenus are not supported.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.MenuBar",
  "description": "The MenuBar class is a list that, when an item is tapped, displays a menu of selections.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.MultiSelectionList",
  "description": "The MultiSelectionList class is a component that displays multiple data items. The MultiSelectionList uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItems, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the list. org.apache.royale.core.IBeadController: the bead that handles input and output. org.apache.royale.core.IBeadLayout: the bead responsible for the size and position of the itemRenderers. org.apache.royale.core.IDataProviderItemRendererMapper: the bead responsible for creating the itemRenders. org.apache.royale.core.IItemRenderer: the class or factory used to display an item in the list.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.MultiSelectionTree",
  "description": "The MultiSelectionTree class is a component that displays multiple data items. The MultiSelectionTree uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItems, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the tree. org.apache.royale.core.IBeadController: the bead that handles input and output. org.apache.royale.core.IBeadLayout: the bead responsible for the size and position of the itemRenderers. org.apache.royale.core.IDataProviderItemRendererMapper: the bead responsible for creating the itemRenders. org.apache.royale.core.IItemRenderer: the class or factory used to display an item in the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.MultilineLabel",
  "description": "The MultilineLabel class implements the basic control for displaying multiline labels.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.NodeElementBase",
  "description": ""},
{ "name": "org.apache.royale.html.NumericStepper",
  "description": "The NumericStepper class is a component that displays a numeric value and up/down controls (using a org.apache.royale.html.Spinner) to increase and decrease the value by specific amounts. The NumericStepper uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the component of type org.apache.royale.core.IRangeModel. org.apache.royale.core.IBeadView: constructs the parts of the component. org.apache.royale.core.IBeadController: handles the input events.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Panel",
  "description": "The Panel class is a Container component capable of parenting other components. The Panel has a TitleBar.  If you want to a Panel with a ControlBar, use PanelWithControlBar which will instantiate, by default, an ControlBar. The Panel uses the following bead types:  org.apache.royale.core.IBeadModel: the data model for the Panel that includes the title and whether or not to display the close button. org.apache.royale.core.IBeadView: creates the parts of the Panel. org.apache.royale.html.beads.IBorderBead: if present, draws a border around the Panel. org.apache.royale.html.beads.IBackgroundBead: if present, provides a colored background for the Panel.",
"tags": [
{  "tagName": "see",
       "values": ["PanelWithControlBar", "ControlBar", "TitleBar", "PanelWithControlBar", "ControlBar", "TitleBar"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.PanelTitleBar",
  "description": ""},
{ "name": "org.apache.royale.html.PanelWithControlBar",
  "description": "The Panel class is a Container component capable of parenting other components. The Panel has a TitleBar and an optional org.apache.royale.html.ControlBar. The Panel uses the following bead types:  org.apache.royale.core.IBeadModel: the data model for the Panel that includes the title and whether or not to display the close button. org.apache.royale.core.IBeadView: creates the parts of the Panel. org.apache.royale.core.IBorderBead: if present, draws a border around the Panel. org.apache.royale.core.IBackgroundBead: if present, provides a colored background for the Panel.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.PopUpList",
  "description": "The PopUpList class is a List that can be popped up or floated over the view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.RadioButton",
  "description": "The RadioButton class is a component that displays a selectable Button. RadioButtons are typically used in groups, identified by the groupName property. RadioButton use the following beads:  org.apache.royale.core.IBeadModel: the data model, which includes the groupName. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the RadioButton..",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.RangeStepper",
  "description": "The RangeStepper control allows for the selection of a single value from multiple choices.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.SimpleAlert",
  "description": "The SimpleAlert class is a component that displays a message and an OK button. The SimpleAlert converts directly to window.alert() for HTML. SimpleAlert uses the following beads:  org.apache.royale.core.IBeadModel: the data model, which includes the message. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the Alert. org.apache.royale.core.IBeadController: the bead responsible for handling input events. org.apache.royale.html.beads.IBorderBead: a bead, if present, that draws a border around the control. org.apache.royale.html.beads.IBackgroundBead: a bead, if present, that creates a solid-color background.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.SimpleList",
  "description": "The SimpleList class is a component that displays data in a vertical column. This component differs from org.apache.royale.html.List in that it displays only string values and maps to the &lt;select&gt; HTML element.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Slider",
  "description": "The Slider class is a component that displays a range of values using a track and a thumb control. The Slider uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, typically an IRangeModel, that holds the Slider values. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the Slider. org.apache.royale.core.IBeadController: the bead that handles input. org.apache.royale.core.IThumbValue: the bead responsible for the display of the thumb control. org.apache.royale.core.ITrackView: the bead responsible for the display of the track.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Spacer",
  "description": "The Spacer class takes up space in the UI layout.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Spinner",
  "description": "The Spinner class is a component that displays a control for incrementing a value and a control for decrementing a value. The org.apache.royale.html.NumericStepper uses a Spinner as part of the component. Spinner uses the following beads:  org.apache.royale.core.IBeadModel: an IRangeModel to hold the properties. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the Spinner. org.apache.royale.core.IBeadController: a bead that handles the input events.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.SubAppLoader",
  "description": "The SubAppLoader class can load Flash or HTML content into a space within an application. Use SubAppLoader to identify where the application should appear, then use its loadApplication() function to load the application dynamically.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.layout", "org.apache.royale.html.supportClasses.ScrollingViewport", "org.apache.royale.html.beads.layout", "org.apache.royale.html.supportClasses.ScrollingViewport"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Table",
  "description": "The Table class represents an HTML <table> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TableCell",
  "description": "The TableCell class defines a table data cell in the Table component. This element may have nearly any type of Royale component as children.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TableHeader",
  "description": "The TableHeader class defines a table header cell in the Table component.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TableRow",
  "description": "The TableRow class defines a row of a Table. This will translate to a <tr> elemement",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TextArea",
  "description": "The TextArea class implements the basic control for multi-line text input.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TextButton",
  "description": "The TextButton class implements a basic button that displays text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TextInput",
  "description": "The TextInput class implements the basic control for single-line text input.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TextNode",
  "description": "The TextNode class represents an HTML Text node element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TextNodeContainerBase",
  "description": ""},
{ "name": "org.apache.royale.html.TitleBar",
  "description": "The TitleBar class is a Container component that displays a title and an optional close button. The TitleBar uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the title and showCloseButton values. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the component. org.apache.royale.core.IBeadLayout: the bead that handles size and position of the component parts (org.apache.royale.html.Label and org.apache.royale.html.Button). org.apache.royale.core.IMeasurementBead: a bead that helps determine the size of the org.apache.royale.html.TitleBar for layout.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ToggleTextButton",
  "description": "The ToggleButton class is a TextButton that supports a selected property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.ToolTip",
  "description": "The Label class implements the basic control for labeling other controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.Tree",
  "description": "The Tree component displays structured data. The Tree uses a HierarchicalData object as its data provider.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.TreeGrid",
  "description": "A TreeGrid is a combination of a Tree and a DataGrid. The first column of the TreeGrid is a Tree; the remaining columns are Lists. Each column of the TreeGrid is defined by the TreeGridColumn, which names the data field within each datum to be displayed. The dataProvider should be a HierarchicalData object with &quot;children&quot; properties to build the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.UIModule",
  "description": "The UIModule class is the base class for modules of user interface controls in Royale.  It is usable as the root tag of MXML documents and UI controls and containers are added to it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.UIModuleLoader",
  "description": "The UIModuleLoader class can load a UIModule.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.VContainer",
  "description": "A Container that has a VerticalLayout.  This is effectively the same as the pattern <code> <basic:Container xmlns:basic=&quot;library://ns.apache.org/royale/basic&quot;> <basic:layout> <basic:VerticalLayout /> </basic:layout> </basic:Container> </code>",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.VDividedContainer",
  "description": "This sub-class of DividedContainer organizes its children into rows separated by movable dividers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.VGroup",
  "description": "This Group subclass uses VerticalLayout as its default layout.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.layout", "org.apache.royale.html.beads.layout"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.VRule",
  "description": "The VRule class displays a vertical line",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.WebBrowser",
  "description": "The WebBrowser provides a space in which to display a web page within a Royale application. Use the url property to change the location of the web page being displayed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.AdaptiveToolTipBead",
  "description": "The AdaptiveToolTipBead class is a specialty bead that can be used with any control. The bead floats a string over a control if the user hovers over the control with a mouse. It contains logic to ensure the tooltip remains inside the window.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.CurrencyFormatter",
  "description": "The CurrencyFormatter class formats a value in separated groups. The formatter listens to a property on a model and when the property changes, formats it and dispatches a formatChanged event.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.DateAndTimeFormatter",
  "description": "The DateFormatter class wraps an IFormatter and adds an hour.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "royaleignoreimport",
       "values": ["org.apache.royale.core.IStrandWithModel", "org.apache.royale.core.IStrandWithModel"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.DateFormatDDMMYYYY",
  "description": "The DateFormatDDMMYYYY class formats the display of a DateField using DD/MM/YYYY format.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.DateFormatMMDDYYYY",
  "description": "The DateFormatMMDDYYYY class formats the display of a DateField using MM/DD/YYYY format.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.DateFormatYYYYMMDD",
  "description": "The DateFormatYYYYMMDD class formats the display of a DateField using YYYY-MM-DD format.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.NumberFormatter",
  "description": "The NumberFormatter class formats a value in separated groups. The formatter listens to a property on a model and when the property changes, formats it and dispatches a formatChanged event.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.NumericOnlyTextInputBead",
  "description": "The NumericOnlyTextInputBead class is a specialty bead that can be used with any TextInput control. The bead prevents non-numeric entry into the text input area.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.PasswordInputBead",
  "description": "The PasswordInput class is a specialty bead that can be used with any TextInput control. The bead secures the text input area by masking the input as it is typed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.PasswordInputRemovableBead",
  "description": "The PasswordInput class is a specialty bead that can be used with any TextInput control. The bead secures the text input area by masking the input as it is typed. PasswordInputRemovableBead adds the ability to remove the functionality at runtime.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.RestrictTextInputBead",
  "description": "The RestrictTextInputBead class is a specialty bead that can be used with any TextInput control. The bead prevents certain characters from being entered into the text input area.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.SimpleDateFormatter",
  "description": "The DateFormatter class formats the display of a DateField using a dateFormat.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "royaleignoreimport",
       "values": ["org.apache.royale.core.IStrandWithModel", "org.apache.royale.core.IStrandWithModel"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.StringDateFormatter",
  "description": "Formats a date from a string Because of the compleixities of date formatting, this formatter does not differentiate between single digit formats and double digit formats for days and months."},
{ "name": "org.apache.royale.html.accessories.TextPromptBead",
  "description": "The TextPromptBead class is a specialty bead that can be used with any TextInput control. The bead places a string into the input field when there is no value associated with the text property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.ToolTipBead",
  "description": "The ToolTipBead class is a specialty bead that can be used with any control. The bead floats a string over a control if the user hovers over the control with a mouse.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.accessories.ToolTipRemovalWhenItemRemoved",
  "description": "The ToolTipRemovalWhenItemRemoved class can be used in lists that have item tenderers that have tooltips.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.AbsolutePositioningViewBeadBase",
  "description": "Use AbsolutePositioningViewBeadBase as the base class for custom control view beads. This class sets the strand's position style to &quot;relative&quot; (HTML platform) if it is not already set to either &quot;absolute&quot; or &quot;relative&quot;. Then use this class's setAbsolutePosition(child, x, y) function to place children. The function not only set's the child's left and top styles (HTML platform), it also sets the child's position to &quot;absolute&quot; (HTML platform).  On the Flash platform, this class will only set the child's x and y properties without any other side effects.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.AccessibilityAltBead",
  "description": "The AccessibilityAltBead class is a bead that can be used with any Image control. The bead places add an alt text attribute on a image.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.AccordionCollapseBead",
  "description": ""},
{ "name": "org.apache.royale.html.beads.AccordionItemRendererView",
  "description": "This class creates and manages the contents of an AccordionItemRenderer",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.AccordionView",
  "description": "The AccordionView sets up the components for the Accordion component.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.AlertMeasurementBead",
  "description": "The AlertMeasureBead class provides boundary measurements for an org.apache.royale.html.Alert component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.AlertView",
  "description": "The AlertView class creates the visual elements of the org.apache.royale.html.Alert component. The job of the view bead is to put together the parts of the Alert, such as the title bar, message, and various buttons, within the space of the Alert component strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.AlternatingBackgroundColorSelectableItemRendererBead",
  "description": "The AdvancedDataGridListData class defines the data type of the <code>listData</code> property implemented by drop-in item renderers or drop-in item editors for the AdvancedDataGrid control. All drop-in item renderers and drop-in item editors must implement the IDropInListItemRenderer interface, which defines the <code>listData</code> property.  <p>While the properties of this class are writable, you should consider them to be read only. They are initialized by the AdvancedDataGrid class, and read by an item renderer or item editor. Changing these values can lead to unexpected results.</p>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid", "mx.controls.listClasses.IDropInListItemRenderer", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ApplicationParametersBead",
  "description": "The ApplicationParametersBead is used to get URL parameter values specified when loading an application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.2", "Royale 0.9.2"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ApplicationParametersCaseInsensitiveBead",
  "description": "The ApplicationParametersCaseInsensitiveBead is used to get URL parameter values specified when loading an application. It's different than the ApplicationParametersBead in that URL parameter keys are case insensitive.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.2", "Royale 0.9.2"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.BackgroundImageBead",
  "description": "The BackgroundImageBead is used to render an image as the background to any component that supports it, such as Container.  Note that this bead is for ActionScript only since CSS/HTML allows this just by specifying a background image in the style selector. To use this bead, place a ClassReference to it",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "media",
       "values": ["-royale-swf { } group in the CSS declarations.", "-royale-swf { } group in the CSS declarations."]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.BinaryImageLoader",
  "description": "The ImageView class creates the visual elements of the org.apache.royale.html.Image component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ButtonBarReorderBead",
  "description": "The ButtonBarReorderBead bead can be added to a ButtonBar to re-order the buttons using drag-and-drop. This bead will add additional beads as necessary.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropTargetBead.", "org.apache.royale.html.beads.SingleSelectionDropTargetBead."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ButtonBarView",
  "description": "The ButtonBarView class creates the visual elements of the org.apache.royale.html.ButtonBar component. A ButtonBar is a type of List and ButtonBarView extends the ListView bead, adding a border.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CSSButtonView",
  "description": "The CSSButtonView class is the default view for the org.apache.royale.html.Button class. It allows the look of the button to be expressed in CSS via the background-image style.  This view does not display text.  Use CSSTextButtonView and TextButton instead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CSSImageAndTextButtonView",
  "description": "The CSSTextButtonView class is the default view for the org.apache.royale.html.TextButton class. It allows the look of the button to be expressed in CSS via the background-image style and displays a text label.  This view does not support right-to-left text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CSSTextToggleButtonView",
  "description": "The CSSTextToggleButtonView class is the default view for the org.apache.royale.html.TextToggleButton class. It allows the look of the button to be expressed in CSS via the background-image style and displays a text label.  This view does not support right-to-left text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CascadingMenuFactory",
  "description": "This bead class generates instances of the CascadingMenu for use with MenuBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CenterElement",
  "description": "The CenterElement bead breaks the normal layout flow and forces a particlular element to stay centered.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CheckBoxView",
  "description": "The CheckBoxView class is the default view for the org.apache.royale.html.CheckBox class. It displays a simple checkbox with an 'x' if checked, and a label on the right.  There are no styles or properties to configure the look of the 'x' or the position of the label relative to the checkbox as there are no equivalents in the standard HTML checkbox.  A more complex CheckBox could implement more view configuration.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CloseButtonView",
  "description": "The CloseButtonView class is the view for the down arrow button in a ScrollBar and other controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CollectionChangeUpdateForArrayListData",
  "description": "Handles the update of an itemRenderer in a List component once the corresponding datum has been updated from the IDataProviderModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CollectionSelectedItemByField",
  "description": "The CollectionSelectedItemByField class is a specialty bead that can be used with any control with ISelectionModel. This bead allows to select an item by field",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ColorPickerView",
  "description": "The ColorPickerView class creates the visual elements of the org.apache.royale.html.ColorPicker component. The job of the view bead is to put together the parts of the ComboBox such as the color container and org.apache.royale.html.Button to trigger the pop-up.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ColorPickerWithEmptyView",
  "description": "The ColorPickerWithEmptyView overrides ColorPickerView methods to visibly indicate that a selection is empty",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ColorSpectrumView",
  "description": "The ColorSpectrumView class is the view for the org.apache.royale.html.ColorSpectrum",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ComboBoxView",
  "description": "The ComboBoxView class creates the visual elements of the org.apache.royale.html.ComboBox component. The job of the view bead is to put together the parts of the ComboBox such as the TextInput control and org.apache.royale.html.Button to trigger the pop-up.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ContainerView",
  "description": "This class creates and manages the contents of a Container. On the ActionScript side, a Container has a contentView into which the offical children can be placed. When adding an element that implements IChrome, that element is not placed into the contentView, but is made a child of the Container directly.  Containers also have a layout associated with them which controls the size and placement of the elements in the contentView. When a Container does not have an explicit size (including a percent size), the content dictates the size of the Container.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ControlBarMeasurementBead",
  "description": "The ControlBarMeasurementBead class measures the size of a org.apache.royale.html.ControlBar component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.CrossBrowserFireListenerOverrideBead",
  "description": "Overrides default HTMLElementWrapper implementation to make sure events are converted on all browsers including IE.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.92", "Royale 0.92"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataContainerView",
  "description": "The DataContainerView provides the visual elements for the DataContainer.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataFieldProviderBead",
  "description": "The DataFieldProviderBead class is a model that holds dataField used mostly in item renderers for retrieve some value from dataProvider items.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridButtonBarViewForMovableColumns",
  "description": ""},
{ "name": "org.apache.royale.html.beads.DataGridColumnChangePropagator",
  "description": "The DataGridColumnChangePropagator picks up the dataProviderChanged event and lets the data grid columns know about it.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridColumnForceChangePropagator",
  "description": "The DataGridColumnForceChangePropagator picks up the dataProviderChanged event and lets the data grid columns know about it, whether or not the data provider object was changed.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridColumnReorderView",
  "description": "The DataGridColumnReorderView bead extends DataGridView and lists for changes to the model that is used to produce the column header. When this model changes, this view bead also changes the sub-components to match.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridColumnView",
  "description": "The DataGridColumnView class extends org.apache.royale.html.beads.ListView and provides properties to the org.apache.royale.html.List that makes a column in the org.apache.royale.html.DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridDragDropBead",
  "description": "The DataGridDragDropBead bead should be added to the DataGrid when drag and drop operations are required. Rather than using the drag and drop beads individually, this bead will add them as needed and monitor events to insure the drag and drop operations are handled property for the DataGrid.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridDrawingLayerBead",
  "description": "DataGridDrawingLayerBead places a graphic space into the DataGrid that is positioned above the Container used to hold the columns. This graphic space can be used to insert visualizations into the DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridLinesBead",
  "description": "The DataGridLinesBead is an add on bead for the DataGrid. This bead adds horizontal and vertical grid lines to a DataGrid. The size and color of the lines is specified by the stroke property (defaults to a thin dark line).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridListArea",
  "description": ""},
{ "name": "org.apache.royale.html.beads.DataGridPercentageView",
  "description": "The DataGridPercentageView class is the visual bead for the org.apache.royale.html.DataGrid. This class constructs the items that make the DataGrid: Lists for each column and a org.apache.royale.html.ButtonBar for the column headers. This class interprets the columnWidth value of each column to be a percentage rather than a pixel value.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridView",
  "description": "The DataGridView class is the visual bead for the org.apache.royale.html.DataGrid. This class constructs the items that make the DataGrid: Lists for each column and a org.apache.royale.html.ButtonBar for the column headers.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataGridWithDrawingLayerLayout",
  "description": "DataGridWithDrawingLayerLayout is a class that extends VerticalFlexLayout and positions the drawing layer created by a DataGridDrawingLayerBead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataItemRendererFactoryBase",
  "description": "The DataItemRendererFactoryBase class is a base class for IDataProviderItemRendererMapper implementations.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataItemRendererFactoryForArrayData",
  "description": "The DataItemRendererFactoryForArrayData class reads an array of data and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataItemRendererFactoryForArrayList",
  "description": "The DataItemRendererFactoryForArrayList class uses an ArrayList and creates an item renderer for every item in the collection.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView",
  "description": "This class creates itemRenderer instances from the data contained within an ICollectionView"},
{ "name": "org.apache.royale.html.beads.DataItemRendererFactoryForColumnData",
  "description": "The DataItemRendererFactoryForColumnData class implents the org.apache.royale.core.IDataProviderItemRendererMapper interface and creates the itemRenderers for each cell in the org.apache.royale.html.DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataItemRendererFactoryForHierarchicalData",
  "description": "The DataItemRendererFactoryForHierarchicalData class reads a HierarchicalData object and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataProviderChangeNotifier",
  "description": "The DataProviderChangeNotifier notifies listeners when a selection model's ArrayList dataProvider has changed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataProviderCollectionChangeNotifier",
  "description": "The DataProviderCollectionChangeNotifier notifies listeners when a selection model's ArrayList dataProvider disptached collectionChanged event.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DataProviderItemsChangeNotifier",
  "description": "The DataProviderItemsChangeNotifier notifies listeners when to selection model's ArrayList dataProvider item has been added, removed or updated.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DateChooserView",
  "description": "The DateChooserView class is a view bead for the DateChooser. This class creates the elements for the DateChooser: the buttons to move between months, the labels for the days of the week, and the buttons for each day of the month.",
"tags": [
{  "tagName": "viewbead",
       "values": ["", ""]}  ]},
{ "name": "org.apache.royale.html.beads.DateFieldView",
  "description": "The DateFieldView class is a bead for DateField that creates the input and button controls. This class also handles the pop-up mechanics.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DecrementButtonView",
  "description": ""},
{ "name": "org.apache.royale.html.beads.DisableBead",
  "description": "The DisableBead class is a specialty bead that can be used with any UIBase. When disabled is true, the bead prevents interaction with the component. The appearance of the component when disabled is controlled by a separate bead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DisableChildrenBead",
  "description": "The DisableChildrenBead class is a specialty bead that can be used with any UIBase. When disabled is true, the bead prevents interaction with the component and its children. The appearance of the component when disabled is controlled by a separate bead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DisableLoaderBead",
  "description": "The DisableLoaderBead class is a specialty bead that can be used with any UIBase control which has a DisableBead attached.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DisabledAlphaBead",
  "description": "The DisabledAlphaBead class is a specialty bead that can be used with any UIBase control which has a DisableBead attached. The bead takes properties for enabledAplha and disabledAlpha.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DispatchInputFinishedBead",
  "description": "The DispatchInputFinishedBead class dispatched INPUT_FINISHED on strand when enter is pressed, or when foucus is out.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DispatchKeyboardEventBead",
  "description": "The DispatchKeyboardEventBead class dispatches a KeyboardEvent from a text input.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DividedContainerView",
  "description": "The DividedContainerView class is responsible for generating the DividedContainerSeparators between the children and placing them in the z-order between the children.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DownArrowButtonView",
  "description": "The DownArrowButtonView class is the view for the down arrow button in a ScrollBar and other controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DragDropListItemRendererInitializer",
  "description": "The DragDropListItemRendererInitializer class initializes item renderers with a reference to the owning List.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DragDropListView",
  "description": ""},
{ "name": "org.apache.royale.html.beads.DropDownListView",
  "description": "The DropDownListView class is the default view for the org.apache.royale.html.DropDownList class. It displays a simple text label with what appears to be a down arrow button on the right, but really, the entire view is the button that will display or dismiss the dropdown.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DynamicAddItemRendererForArrayListData",
  "description": "Handles the adding of an itemRenderer once the corresponding datum has been added from the IDataProviderModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DynamicItemsRendererFactoryForArrayListData",
  "description": "The DynamicItemsRendererFactoryForArrayListData class reads an array of data and creates an item renderer for every IIndexedItemRenderer in the array.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DynamicRemoveAllByNullItemRendererForArrayListData",
  "description": "Handles the removal of all itemRenderers once data source is being set to null.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DynamicRemoveAllItemRendererForArrayListData",
  "description": "Handles the removal of all itemRenderers once the all items has been removed from the IDataProviderModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DynamicRemoveItemRendererForArrayListData",
  "description": "Handles the removal of an itemRenderer once the corresponding datum has been removed from the IDataProviderModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.DynamicUpdateItemRendererForArrayListData",
  "description": "Handles the update of an itemRenderer once the corresponding datum has been updated from the IDataProviderModel.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.EasyDataProviderChangeNotifier",
  "description": "The EasyDataProviderChangeNotifier is similar to DataProviderChangeNotifier but allows the user to populate the data provider after it's been added. Also, no attributes are required. Just add <EasyDataProviderChangeNotifier/>. The dataProvider is assumed to be an ArrayList.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.EllipsisOverflow",
  "description": "The EllipsisOverflow class is a bead that can be used to stop the text from overflowing and display an ellipsis.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ErrorImage",
  "description": "The ErrorImage class is a bead that can be used to display an alternate image, in the event that the specified image cannot be loaded.  It will be supported by controls that load the ImageModel bead and implement the IImage interface",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.FormatableLabelView",
  "description": "The FormatableLabelView class is a View bead that is capable of working with a format bead to display a formatted value. When the format bead has created a formatted string, it dispatches a formatChanged event that the FormatableLabelView class intercepts and displays in the label.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.FormatableTextInputView",
  "description": "The FormatableTextInputView class is a View bead that extends TextInputWithBorderView and is capable of working with a format bead. When a format bead dispatches a formatChanged event, the FormatableTextInputView bead copies the formatted string to to the text field.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.GetScrollbarWidth",
  "description": "The GetScrollbarWidth class detects the browser's default scrollbar width. This can be useful when changing the viewport width to avoid it being obstructed by the scrollbar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.GroupView",
  "description": "The GroupView is a bead that manages the layout bead (if any) attached to a Group. This class also provides support for background and border styles for a Group on the SWF platform.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.HRuleView",
  "description": "The ImageView class creates the visual elements of the org.apache.royale.html.Image component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.HScrollBarThumbView",
  "description": "The HScrollBarThumbView class is the view for the thumb button in a Horizontal ScrollBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.HScrollBarTrackView",
  "description": "The HScrollBarTrackView class is the view for the track in a Horizontal ScrollBar.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.HScrollBarView",
  "description": "The HScrollBarView class is the default view for the org.apache.royale.html.supportClasses.HScrollBar class. It implements the classic desktop-like HScrollBar. A different view would implement more modern scrollbars that hide themselves until hovered over with the mouse.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.HideColorSpectrumThumbWhenEmpty",
  "description": "The HideColorSpectrumThumbWhenEmpty bead can modifiy a color spectrum view to hide the thumb when it's empty",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.HideComboPopupOnMouseDownBead",
  "description": "The HideComboPopupOnMouseDownBead can be used with ComboBox to make sure mouse down events close an open popup. For this bead to work the application needs to be sized to the window size. See org.apache.royale.core.BrowserResizeListener or BrowserResizeApplicationListener for a way to achieve this.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.3", "Royale 9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.HorizontalListItemRendererInitializer",
  "description": "The ListItemRendererInitializer class initializes item renderers in list classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IAccordionCollapseBead",
  "description": ""},
{ "name": "org.apache.royale.html.beads.IBackgroundBead",
  "description": "The IBackgroundBead interface is a marker interface for beads that draw backgrounds.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IBorderBead",
  "description": "The IBorderBead interface is a marker interface for beads that draw borders.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IComboBoxView",
  "description": "The IComboBoxView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.html.ComboBox control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IDataGridView",
  "description": "The IDataGridView interface marks as a component as being the bead that can create the visual pieces for a org.apache.royale.html.DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IDrawingLayerBead",
  "description": "The IDrawingLayerBead interface is implemented by beads that providing a a drawing surface within a component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IDropDownListView",
  "description": "The IDropDownListView interface is the interface for views for the org.apache.royale.html.DropDownList.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IEEventAdapterBead",
  "description": "The IEEventAdapterBead is used to enable correct handling of MouseEvents and KeyboardEvents in IE. This is needed because IE does not support the <code>name</code> property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.2", "Royale 0.9.2"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IGraphicsDrawing",
  "description": "The IGraphicsDrawing interface is a marker interface for beads that draw into the graphics layer.  This helps a bead determine if it is the first of many graphics drawing beads so it can know whether or not to clear the graphics layer before drawing.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IListView",
  "description": "The IListView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.html.List control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IScrollBarView",
  "description": "The IScrollBarView interface is the interface for views for the org.apache.royale.html.supportClasses.ScrollBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ISliderView",
  "description": "The ISliderView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.html.Slider control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ISpinnerView",
  "description": "The ISpinnerView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.html.Spinner control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ITableView",
  "description": "The ITableView interface provides the protocol for any bead that creates the visual parts for a Table control lie Jewel Table",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ITextFieldView",
  "description": "The ITextFieldView interface is the interface for views for the use a CSSTextField to display text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ITextItemRenderer",
  "description": "The ITextItemRenderer interface is the interface for for org.apache.royale.core.IItemRenderer that display text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IViewWithPopUp",
  "description": "The IViewWithPopUp interface provides the protocol for any bead that creates visual parts that includes a popup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ImageAndTextButtonView",
  "description": "The ImageButtonView class provides an image-only view for the standard Button. Unlike the CSSButtonView, this class does not support background and border; only images for the up, over, and active states.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ImageButtonView",
  "description": "The ImageButtonView class provides an image-only view for the standard Button. Unlike the CSSButtonView, this class does not support background and border; only images for the up, over, and active states.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ImageView",
  "description": "The ImageView class creates the visual elements of the org.apache.royale.html.Image component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.IncrementButtonView",
  "description": ""},
{ "name": "org.apache.royale.html.beads.IndexedItemRendererInitializer",
  "description": "The IndexedItemRendererInitializer class initializes item renderers in list classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.InfiniteVScroller",
  "description": "InfiniteVScroller dispatches an event when the component scrolls to the bottom to allow loading more content dynamically.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.InnerHTML",
  "description": "The InnerText bead class adds innetHTML text to a html tag.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ItemRendererFactoryBase",
  "description": "The DataItemRendererFactoryBase class is a base class for IDataProviderItemRendererMapper implementations.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.KeepComboPopupWithinParentBounds",
  "description": "The KeepComboPopupWithinParentBounds can be used with ComboBox to make sure its popup does not overflow its parent bounds.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.6", "Royale 9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.LabelFunction",
  "description": "The LabelFunction bead is a specialty bead that can be used with item renderer based components and gives label function capability to them  The renderer needs to have support for labelFunction in order to work properly",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.LeftArrowButtonView",
  "description": "The LeftArrowButtonView class is the view for the left arrow button in a ScrollBar and other controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ListDrawingLayerBead",
  "description": "ListDrawingLayerBead places a graphic space into the List that is positioned the item renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ListItemRendererInitializer",
  "description": "The ListItemRendererInitializer class initializes item renderers in list classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ListOwnerViewItemRendererInitializer",
  "description": "The ListItemRendererInitializer class initializes item renderers in list classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ListView",
  "description": ""},
{ "name": "org.apache.royale.html.beads.MenuFactory",
  "description": "This bead class generates instances of the Menu class for use with MenuBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.MenuView",
  "description": "Supplies the view for a menu.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.MultiSelectionDragImageBead",
  "description": "The MultiSelectionDragImageBead produces a UIBase component that represents the item being dragged. It does this by creating lookalikes to all selected items and adding them to a container.  The createDragImage() function can be overridden and a different component returned.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDragSourceBead.", "org.apache.royale.html.beads.SingleSelectionDragSourceBead."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.MultiSelectionDragSourceBead",
  "description": "The MultiSelectionDragSourceBead brings drag capability to single-selection List components. By adding this bead, a user can drag a row of the List to a new location within the list. This bead should be used in conjunction with SingleSelectionDropTargetBead.  This bead adds a new event to the strand, &quot;dragImageNeeded&quot;, which is dispatched on the strand just prior to the dragImage's appearance. An event listener can create its own dragImage if the default, taken from the data item, is not suitable.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropTargetBead.", "org.apache.royale.html.beads.SingleSelectionDropTargetBead."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.MultiSelectionItemRendererClassFactory",
  "description": "The MultiSelectionItemRendererClassFactory class extends ItemRendererClassFactory to add a multiselection controller to item renderers",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.MultiSelectionListView",
  "description": ""},
{ "name": "org.apache.royale.html.beads.MultiSelectionTreeDragSourceBead",
  "description": "The MultiSelectionTreeDragSourceBead brings drag capability to single-selection List components. By adding this bead, a user can drag a row of the List to a new location within the list. This bead should be used in conjunction with SingleSelectionDropTargetBead.  This bead adds a new event to the strand, &quot;dragImageNeeded&quot;, which is dispatched on the strand just prior to the dragImage's appearance. An event listener can create its own dragImage if the default, taken from the data item, is not suitable.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropTargetBead.", "org.apache.royale.html.beads.SingleSelectionDropTargetBead."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.MultilineTextFieldView",
  "description": "The TextFieldView class is the default view for the org.apache.royale.html.Label class. It displays text using a TextField, so there is no right-to-left text support in this view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.NumericStepperView",
  "description": "The NumericStepperView class creates the visual elements of the org.apache.royale.html.NumericStepper component. A NumberStepper consists of a org.apache.royale.html.TextInput component to display the value and a org.apache.royale.html.Spinner to change the value.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.OutOfApplicationDropTargetBead",
  "description": "The OutOfApplicationDropTargetBead enables items to be dropped outside of the application",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.PanelView",
  "description": "The Panel class creates the visual elements of the org.apache.royale.html.Panel component. A Panel has a org.apache.royale.html.TitleBar, and content.  A different View, PanelWithControlBarView, can display a ControlBar.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.PanelWithControlBarView",
  "description": "The Panel class creates the visual elements of the org.apache.royale.html.Panel component. A Panel has a org.apache.royale.html.TitleBar, content, and an optional org.apache.royale.html.ControlBar.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.RadioButtonView",
  "description": "The RadioButtonView class creates the visual elements of the org.apache.royale.html.RadioButton component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.RangeStepperView",
  "description": "The RangeStepperView bead creates the visual elements of the RangeStepper. This includes an increment button, a decrement button, and label to display the value.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.RightArrowButtonView",
  "description": "The RightArrowButtonView class is the view for the right arrow button in a ScrollBar and other controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ScrollBarView",
  "description": "The ScrollBarView class is the default view for the org.apache.royale.html.supportClasses.ScrollBar class. It implements the classic desktop-like ScrollBar. A different view would implement more modern scrollbars that hide themselves until hovered over with the mouse.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SelectableItemRendererBeadBase",
  "description": "SelectableItemRenderer bead handles selection and hover states for item renderers",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SelectionDataItemRendererFactoryForCollectionView",
  "description": "This class is an extension of DataItemRendererFactoryForCollectionView for components using ISelectionModel that will need special handling of selected index for items added, removed or updated at runtime from the dataprovider."},
{ "name": "org.apache.royale.html.beads.SensitiveMultiSelectionDropTargetBead",
  "description": "The SensitiveMultiSelectionDropTargetBead enables items to be dropped onto multi-selection List components. When the pointing device is in the first half of an item renderer it assumes the item is to be dropped on that item renderer. If it is on the second half it assumes the drop target is the next item renderer.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropTargetBead", "org.apache.royale.html.beads.SingleSelectionDropTargetBead"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SensitiveSingleSelectionDropTargetBead",
  "description": "The SensitiveSingleSelectionDropTargetBead enables items to be dropped onto single-selection List components. When the pointing device is in the first half of an item renderer it assumes the item is to be dropped on that item renderer. If it is on the second half it assumes the drop target is the next item renderer.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropIndicatorBead", "org.apache.royale.html.beads.SingleSelectionDropIndicatorBead"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ShrinkableDisableLoaderBead",
  "description": "The ShrinkableDisableLoaderBead extends DisableLoaderBead to allow shrinking of the load indicator.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SimpleAlertView",
  "description": "The SimpleAlertView class creates the visual elements of the org.apache.royale.html.SimpleAlert component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SingleLineBorderBead",
  "description": "The SingleLineBorderBead class draws a single line solid border. The color and thickness can be specified in CSS.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SingleLineBorderWithChangeListenerBead",
  "description": "The SingleLineBorderWithChangeListenerBead adds the ability to react to changes in border style at runtime.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SingleSelectionContainerBead",
  "description": "Use SingleSelectionContainerBead is a bead which manages selection state of a component which contains a group of ISelectables. One such example would be a toggle button bar.  Only one of the elements can be selected at any one time.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SingleSelectionDragImageBead",
  "description": "The SingleSelectionDragImageBead produces a UIBase component that represents the item being dragged. It does this by taking the data associcated with the index of the item selected and running the toString() function on it, placing it inside of a Label that is inside of Group (which is given the className of &quot;DragImage&quot;).  The createDragImage() function can be overridden and a different component returned.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDragSourceBead.", "org.apache.royale.html.beads.SingleSelectionDragSourceBead."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SingleSelectionDragSourceBead",
  "description": "The SingleSelectionDragSourceBead brings drag capability to single-selection List components. By adding this bead, a user can drag a row of the List to a new location within the list. This bead should be used in conjunction with SingleSelectionDropTargetBead.  This bead adds a new event to the strand, &quot;dragImageNeeded&quot;, which is dispatched on the strand just prior to the dragImage's appearance. An event listener can create its own dragImage if the default, taken from the data item, is not suitable.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropTargetBead.", "org.apache.royale.html.beads.SingleSelectionDropTargetBead."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SingleSelectionDropIndicatorBead",
  "description": "The SingleSelectionDropIndicatorBead provides a graphic used to help the user place the item being dropped.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropTargetBead.", "org.apache.royale.html.beads.SingleSelectionDropTargetBead."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SingleSelectionDropTargetBead",
  "description": "The SingleSelectionDropTargetBead enables items to be dropped onto single-selection List components. This bead can be used with SingleSelectionDragSourceBead to enable the re-arrangement of rows within the same list.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.html.beads.SingleSelectionDropIndicatorBead", "org.apache.royale.html.beads.SingleSelectionDropIndicatorBead"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SliderThumbView",
  "description": "The SliderThumbView class creates the draggable input element for the org.apache.royale.html.Slider component.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SliderTrackView",
  "description": "The SliderTrackView class creates the track area for the org.apache.royale.html.Slider component.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SliderView",
  "description": "The SliderView class creates the visual elements of the org.apache.royale.html.Slider component. The Slider has a track and a thumb control which are also created with view beads.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SolidBackgroundBead",
  "description": "The SolidBackgroundBead class draws a solid filled background. The color and opacity can be specified in CSS.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SolidBackgroundRuntimeSelectableItemRendererBead",
  "description": "UnselectableElement bead prevents from text selection of html element",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SolidBackgroundSelectableItemRendererBead",
  "description": "UnselectableElement bead prevents from text selection of html element",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SolidBackgroundWithChangeListenerBead",
  "description": "Same as SolidBackgroundBead except it listens for StyleChangeEvent events and reacts by refreshing the background of its strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.SpinnerView",
  "description": "The SpinnerView class creates the visual elements of the org.apache.royale.html.Spinner component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.StyleInheritanceBead",
  "description": "The StyleInheritanceBead class forces descendadants of an IStylableObject to inherit a style",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.3", "Royale 9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.StyleInheritanceWithObserverBead",
  "description": "The StyleInheritanceWithObserverBead extends StyleInheritace and makes sure that new descendants inherit as well.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.3", "Royale 9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TableCellView",
  "description": "The TableCellView class is the view bead for TableCell. It has no function on the JS platform, but with SWF, it prevents the cell from shrinking to fit its content.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextAreaView",
  "description": "The TextAreaView class is the default view for the org.apache.royale.html.TextArea class. It implements the classic desktop-like TextArea with a border and scrollbars.  It does not support right-to-left text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextButtonMeasurementBead",
  "description": "The TextButtonMeasurementBead class helps measure a org.apache.royale.html.TextButton.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextButtonView",
  "description": "The TextButtonView class is the default view for the org.apache.royale.html.TextButton class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextFieldLabelMeasurementBead",
  "description": "The TextFieldLabelMeasurementBead class helps to measure org.apache.royale.html.Label components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextFieldView",
  "description": "The TextFieldView class is the default view for the org.apache.royale.html.Label class. It displays text using a TextField, so there is no right-to-left text support in this view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextFieldViewBase",
  "description": "The TextFieldViewBase class is the base class for the components that display text. It displays text using a TextField, so there is no right-to-left text support in this view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextInputView",
  "description": "The TextInputView class is the view for the org.apache.royale.html.TextInput in a ComboBox and other controls because it does not display a border. It displays text using a TextField, so there is no right-to-left text support in this view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextInputWithBorderView",
  "description": "The TextInputWithBorderView class is the default view for the org.apache.royale.html.TextInput. It displays text using a TextField, so there is no right-to-left text support in this view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextItemRendererFactoryForArrayData",
  "description": "The TextItemRendererFactoryForArrayData class is the IDataProviderItemRendererMapper for creating ITextItemRenderers and assigning them data from an array. Other IDataProviderItemRendererMapper implementations assign specific array or vector types to item renderers expecting those types.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TextItemRendererFactoryForStringVectorData",
  "description": "The TextItemRendererFactoryForStringVectorData class is the IDataProviderItemRendererMapper for creating ITextItemRenderers and assigning them data from an vector of Strings.  Other IDataProviderItemRendererMapper implementations assign specific array or vector types to item renderers expecting those types.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.ThrottleBead",
  "description": "The ThrottleBead class allows you to listen to an event only after a timeout has been reached. This can be useful in situations where events are thrown repeatedly but the application is only interested in the last dispatching.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TitleBarMeasurementBead",
  "description": "The TitleBarMeasurementBead class measures the overall size of a org.apache.royale.html.TitleBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TitleBarTitle",
  "description": "A specially styled Label used in TitleBar"},
{ "name": "org.apache.royale.html.beads.TreeGridListArea",
  "description": ""},
{ "name": "org.apache.royale.html.beads.TreeGridView",
  "description": "The TreeGridView class is responsible for creating the sub-components of the TreeGrid: the ButtonBar header, the Tree (first column), and Lists (rest of the columns), as well as the container that holds the columns. This bead will also add in a TreeGridLayout if one has not already been created or specified in CSS.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.TreeItemRendererInitializer",
  "description": "The TreeItemRendererInitializer class initializes item renderers in tree classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.UnselectableElementBead",
  "description": "UnselectableElement bead prevents from text selection of html element",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.UpArrowButtonView",
  "description": "The UpArrowButtonView class is the view for the up arrow button in a ScrollBar and other controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VRuleView",
  "description": "The ImageView class creates the visual elements of the org.apache.royale.html.Image component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VScrollBarThumbView",
  "description": "The VScrollBarThumbView class is the view for the thumb button in a Vertical ScrollBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VScrollBarTrackView",
  "description": "The VScrollBarTrackView class is the view for the track in a Vertical ScrollBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VScrollBarView",
  "description": "The ScrollBarView class is the default view for the org.apache.royale.html.supportClasses.VScrollBar class. It implements the classic desktop-like VScrollBar. A different view would implement more modern scrollbars that hide themselves until hovered over with the mouse.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VerticalAlignChildren",
  "description": "VerticalAlignChildren is a bead for groups and containers which specifiy the alignment property of the children. Alignment can be any of the valid css properties for vertical-align see https://developer.mozilla.org/en-US/docs/Web/CSS/vertical-align",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VirtualDataContainerView",
  "description": "The DataContainerView provides the visual elements for the DataContainer.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VirtualDataItemRendererFactoryBase",
  "description": "The DataItemRendererFactoryForArrayData class reads an array of data and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VirtualDataItemRendererFactoryForArrayData",
  "description": "The DataItemRendererFactoryForArrayData class reads an array of data and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.VirtualListView",
  "description": "The List class creates the visual elements of the org.apache.royale.html.List component. A List consists of the area to display the data (in the dataGroup), any scrollbars, and so forth.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.WebBrowserView",
  "description": "The WebBrowserView creates an instance of HTMLLoader to load web pages into AIR application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.AccordionItemRendererMouseController",
  "description": ""},
{ "name": "org.apache.royale.html.beads.controllers.AlertController",
  "description": "The AlertControler class bead handles the close event on the org.apache.royale.html.Alert by removing the org.apache.royale.html.Alert from the display.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.ButtonAutoRepeatController",
  "description": "The ButtonAutoRepeatController class adds autorepeat functionality to a button.  This version is simply waits a specified amount of time (default is 250ms), then repeats the button event at a specified interval, which defaults to 125 milliseconds.  Alternate implementations could have non-linear repeat timing, look for keyboard modifiers to choose different rates, etc.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.CascadingMenuSelectionMouseController",
  "description": "The CascadingMenuSelectionMouseController does the same job as the MenuSelectionMouseController except if the item in the menu that has been selected has children, in which case a new CascadingMenu is presented.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.ColorSpectrumMouseController",
  "description": "The ColorSpectrumMouseController class is a controller for the ColorSpecrum control. It's job is to detect the location where a user has clicked and change the model's selected color value accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.ComboBoxController",
  "description": ""},
{ "name": "org.apache.royale.html.beads.controllers.DateChooserMouseController",
  "description": "The DateChooserMouseController class is responsible for listening to mouse event related to the DateChooser. Events such as selecting a date or changing the calendar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.DateFieldMouseController",
  "description": "The DateFieldMouseController class is responsible for monitoring the mouse events on the elements of the DateField. A click on the DateField's menu button triggers the pop-up, for example.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.DragMouseController",
  "description": "The DragMouseController bead handles mouse events on the a component, looking for activity that constitutes the start of a drag drop operation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "royaleignoreimport",
       "values": ["org.apache.royale.core.IDragInitiator", "org.apache.royale.core.IDragInitiator"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.DropDownListController",
  "description": "The DropDownListController class is the controller for org.apache.royale.html.DropDownList.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for the click event and displays the dropdown/popup, and watches the dropdown/popup for change events and updates the selection model accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.DropMouseController",
  "description": "The DropMouseController bead handles mouse events on the a component, looking for events from a drag/drop operation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "royaleignoreimport",
       "values": ["org.apache.royale.core.IDragInitiator", "org.apache.royale.core.IDragInitiator"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.EditableTextKeyboardController",
  "description": "The EditableTextKeyboardController class bead intercepts keyboard events on the component's text field and emits change events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.HDividedContainerMouseController",
  "description": "This is the mouse controller for the HDividedContainer. This bead class tracks the mouse over a HDividedContainerDivider (its strand) causing the columns on either side of the divider to grow and shrink."},
{ "name": "org.apache.royale.html.beads.controllers.HScrollBarMouseController",
  "description": "The HScrollBarMouseController class is the controller for org.apache.royale.html.supportClasses.HScrollBar that acts as the Horizontal ScrollBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.HSliderMouseController",
  "description": "The HSliderMouseController class bead handles mouse events on the org.apache.royale.html.Slider's component parts (thumb and track) and dispatches change events on behalf of the Slider (as well as co-ordinating visual changes (such as moving the thumb when the track has been tapped or clicked). Use this controller for horizontally oriented Sliders.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.ItemRendererMouseController",
  "description": "The ItemRendererMouseController class can mouse events in itemRenderers. This includes roll-overs, mouse down, and mouse up. These platform-specific events are then re-dispatched as Royale events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "royaleignoreimport",
       "values": ["goog.events.Event", "goog.events.Event"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.ListMultiSelectionMouseController",
  "description": "The ListMultiSelectionMouseController class is a controller for org.apache.royale.html.List.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for events from the item renderers and updates an IMultiSelectionModel (which supports multi selection).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController",
  "description": "The ListSingleSelectionMouseController class is a controller for org.apache.royale.html.List.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for events from the item renderers and updates an ISelectionModel (which only supports single selection).  Other controller/model pairs would support various kinds of multiple selection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.MenuBarMouseController",
  "description": "The MenuBarMouseController handles mouse events for the MenuBar. While the menu bar is a list, selecting an item causes a Menu (or one of its subclasses) to appear.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.MenuSelectionMouseController",
  "description": "Listens for item selections on the component and translates them to external events. Also listens for events on the background and uses them to dismiss the menu.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.MultiSelectionItemRendererMouseController",
  "description": "The MultiSelectionItemRendererMouseController class can mouse events in itemRenderers. This includes roll-overs, mouse down, and mouse up. These platform-specific events are then re-dispatched as Royale events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "royaleignoreimport",
       "values": ["goog.events.Event", "goog.events.Event"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.OutOfApplicationDropMouseController",
  "description": "The OutOfApplicationDropMouseController bead handles mouse events outside of the application looking for events from a drag/drop operation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "royaleignoreimport",
       "values": ["org.apache.royale.core.IDragInitiator", "org.apache.royale.core.IDragInitiator"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.RangeStepperMouseController",
  "description": "The RangeStepperMouseController bead feeds mouse events to the RangeStepper and its components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.ScrollBarMouseControllerBase",
  "description": "The ScrollBarMouseControllerBase class is the base class for ScrollBarMouseControllers such as VScrollBarMouseController.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.SpinnerMouseController",
  "description": "The SpinnerMouseController class bead handles mouse events on the org.apache.royale.html.Spinner's component buttons, changing the value of the Spinner.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.TreeMultiSelectionMouseController",
  "description": "The TreeMultiSelectionMouseController class is a controller for org.apache.royale.html.Tree. This controller watches for selection events on the tree item renderers and uses those events to open or close nodes of the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.TreeSingleSelectionMouseController",
  "description": "The TreeSingleSelectionMouseController class is a controller for org.apache.royale.html.Tree. This controller watches for selection events on the tree item renderers and uses those events to open or close nodes of the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.VDividedContainerMouseController",
  "description": "This is the mouse controller for the VDividedContainer. This bead class tracks the mouse over a VDividedContainerDivider (its strand) causing the rows above and below it to grow and shrink.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.VScrollBarMouseController",
  "description": "The VScrollBarMouseController class is the controller for org.apache.royale.html.supportClasses.ScrollBar that acts as the Vertical ScrollBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.controllers.VSliderMouseController",
  "description": "The VSliderMouseController class bead handles mouse events on the org.apache.royale.html.Slider's component parts (thumb and track) and dispatches change events on behalf of the Slider (as well as co-ordinating visual changes (such as moving the thumb when the track has been tapped or clicked). Use this controller for vertically oriented Sliders.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.BasicLayout",
  "description": "The BasicLayout class is a simple layout bead.  It takes the set of children and lays them out as specified by CSS properties like left, right, top and bottom.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.ButtonBarLayout",
  "description": "The ButtonBarLayout class bead sizes and positions the button elements that make up a org.apache.royale.html.ButtonBar. This bead arranges the Buttons horizontally and makes them all the same width unless the buttonWidths property has been set in which case the values stored in that array are used.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.DataGridLayout",
  "description": "DataGridLayout is a class that handles the size and positioning of the elements of a DataGrid. This includes the ButtonBar used for the column headers and the Lists that are the columns.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.DataGridPercentageLayout",
  "description": "DataGridPercentageLayout is a class that handles the size and positioning of the elements of a DataGrid. This includes the ButtonBar used for the column headers and the Lists that are the columns. The columns are sized on their percentage of the width of the DataGrid space.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.FlexibleFirstChildHorizontalLayout",
  "description": "The FlexibleFirstChildHorizontalLayout class is a simple layout bead.  It takes the set of children and lays them out horizontally in one row, separating them according to CSS layout rules for margin and padding styles. But it will size the first child to take up as much or little room as possible.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.HDividedContainerLayout",
  "description": "This sub-class of DividedContainerLayout class is responsible for sizing and positioning the children of the DividedContainer into columns with separators between them.  In order to correctly size and place the children, the DividedContainerLayout relies on additional information contained in the DividedContainerModel. These adjustments (which default to zero) can be changed by interacting with the DividedContainerSeparators and their mouse controllers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.HScrollBarLayout",
  "description": "The HScrollBarLayout class is a layout bead that displays lays out the pieces of a horizontal ScrollBar like the thumb, track and arrow buttons.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.HorizontalFlexLayout",
  "description": ""},
{ "name": "org.apache.royale.html.beads.layouts.HorizontalFlowLayout",
  "description": "The HorizontalFlowLayout class bead sizes and positions the elements it manages into rows and columns. It does this by seeing how many elements will fit horizontally and then flow the remainder onto the next lines. If an element does not already have an explicit or percentage size, a size is chosen for it based on the defaultColumnCount property which divides the layout space into equal number of cells as a default measurement.  The height of each row is determined by the tallest element in the row. The next row flows below that.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.HorizontalLayout",
  "description": "The HorizontalLayout class is a simple layout bead.  It takes the set of children and lays them out horizontally in one row, separating them according to CSS layout rules for margin and vertical-align styles.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.HorizontalLayoutWithPaddingAndGap",
  "description": "The HorizontalLayoutWithPaddingAndGap class is a simple layout bead similar to HorizontalLayout, but it adds support for padding and gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.HorizontalSliderLayout",
  "description": "Use the HorizontalSliderLayout with a Slider to orient the Slider horizontally.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.IDataGridLayout",
  "description": "DataGridLayout is a class that handles the size and positioning of the elements of a DataGrid. This includes the ButtonBar used for the column headers and the Lists that are the columns.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.IOneFlexibleChildLayout",
  "description": "IOneFlexibleChildLayout will flex one of the children to take up the space remaining in a container after the rest of the elements have been laid out according to CSS layout rules.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.ITileLayout",
  "description": "ITileLayout creates a tile layout. You can define the dimensions of each cell.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.6", "Royale 9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.LayoutChangeNotifier",
  "description": "The LayoutChangeNotifier notifies layouts when a property it is watching changes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.LayoutOnShow",
  "description": "This bead ensures that IUIBase objects that are displayed are also laid out. Basic components can do without this behavior if it is known that the layout does not change.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.NoLayout",
  "description": "The NoLayout class allows specifying no layout to components which normally have a Layout bead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.OneFlexibleChildHorizontalLayout",
  "description": "The OneFlexibleChildHorizontalLayout class is a simple layout bead.  It takes the set of children and lays them out horizontally in one row, separating them according to CSS layout rules for margin and padding styles. But it will size the one child to take up as much or little room as possible.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.OneFlexibleChildHorizontalLayoutForOverflow",
  "description": "The OneFlexibleChildHorizontalLayoutForOverflowis intended for building apps that clip and/or scroll the overflow, especially in a 3-pane view like the ASDoc examples.  It does not use FlexBox because FlexBox wants to grow to the size of the content without specifying width/height on the flexible child.  But then the children in the flexible child cannot use % sizing. This layout presumes the parent is a known size.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.OneFlexibleChildVerticalLayout",
  "description": "The OneFlexibleChildVerticalLayout class is a simple layout bead.  It takes the set of children and lays them out vertically in one column, separating them according to CSS layout rules for margin and padding styles. But it will size the one child to take up as much or little room as possible.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.OneFlexibleChildVerticalLayoutForOverflow",
  "description": "The OneFlexibleChildVerticalLayoutForOverflow is intended for building apps that clip and/or scroll the overflow, especially in a 3-pane view like the ASDoc examples.  It does not use FlexBox because FlexBox wants to grow to the size of the content without specifying width/height on the flexible child.  But then the children in the flexible child cannot use % sizing. This layout presumes the parent is a known size.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.RemovableBasicLayout",
  "description": "The RemovableBasicLayout class is a simple layout bead.  It takes the set of children and lays them out as specified by CSS properties like left, right, top and bottom. It correctly handles removal and replacement between different strands, and null strand assignment",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.ScrollingFlexibleChild",
  "description": "The ScrollingFlexibleChild class allows flexible children to be scrollable.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.4", "Royale 9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.SimpleTableLayout",
  "description": "The SimpleTableLayout is the layout for the Table component. On the SWF platform it mimics the HTML <table> element and makes sure all the columns and rows are even. It does not support column or row spanning.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.TableCellLayout",
  "description": "The TableCellLayout is the default layout for TableCell items. It places the cell's contents vertically centered within the cell.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.TableHeaderLayout",
  "description": "The TableHeaderLayout is the default layout for TableHeader items. It places the cell's contents vertically and horizontally centered within the cell.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.TileLayout",
  "description": "The TileLayout class bead sizes and positions the elements it manages into rows and columns. The size of each element is determined either by setting TileLayout's columnWidth and rowHeight properties, or having the tile size determined by factoring the numColumns into the area assigned for the layout.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.TreeGridLayout",
  "description": "The TreeGridLayout class provides the sizing and positioning for the sub-components that make up the TreeGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.UseMaxChildForTileCellDimensions",
  "description": "The UseMaxChildForTileCellDimensions class bead finds the biggest item renderer in a tiled list and sets the tile dimensions accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.VDividedContainerLayout",
  "description": "This sub-class of DividedContainerLayout class is responsible for sizing and positioning the children of the DividedContainer into rows with separators between them.  In order to correctly size and place the children, the DividedContainerLayout relies on additional information contained in the DividedContainerModel. These adjustments (which default to zero) can be changed by interacting with the DividedContainerSeparators and their mouse controllers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.VScrollBarLayout",
  "description": "The VScrollBarLayout class is a layout bead that displays lays out the pieces of a vertical ScrollBar like the thumb, track and arrow buttons.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.VerticalColumnLayout",
  "description": "ColumnLayout is a class that organizes the positioning of children of a container into a set of columns where each column's width is set to the maximum size of all of the children in that column.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.VerticalFlexLayout",
  "description": ""},
{ "name": "org.apache.royale.html.beads.layouts.VerticalLayout",
  "description": "The VerticalLayout class is a simple layout bead.  It takes the set of children and lays them out vertically in one column, separating them according to CSS layout rules for margin and horizontal-align styles.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.VerticalLayoutWithPaddingAndGap",
  "description": "The VerticalLayoutWithPaddingAndGap class is a simple layout bead similar to VerticalLayout, but it adds support for padding and gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.VerticalSliderLayout",
  "description": "Use the VerticalSliderLayout with a Slider to orient the slider vertically.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.layouts.VirtualListVerticalLayout",
  "description": "The VerticalLayout class is a simple layout bead.  It takes the set of children and lays them out vertically in one column, separating them according to CSS layout rules for margin and horizontal-align styles.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.AlertModel",
  "description": "The AlertModel class bead implements the org.apache.royale.core.IAlertModel and holds the properties for an org.apache.royale.html.Alert such the buttons to use and message to display.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ArrayColorSelectionModel",
  "description": "The ArrayColorSelectionModel class is a color selection model for a dataProvider that is an array.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ArrayListSelectionModel",
  "description": "The ArrayListSelectionModel class is a selection model for a dataProvider that is an ArrayList. It assumes that items can be fetched from the dataProvider using dataProvider.getItemAt(index).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ArrayMultiSelectionModel",
  "description": "The ArrayMultiSelectionModel class is a selection model for a dataProvider that is an array. It assumes that items can be fetched from the dataProvider dataProvider[index].  Other selection models would support other kinds of data providers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["0.9.7", "0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ArraySelectionModel",
  "description": "The ArraySelectionModel class is a selection model for a dataProvider that is an array. It assumes that items can be fetched from the dataProvider dataProvider[index].  Other selection models would support other kinds of data providers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.BinaryImageModel",
  "description": "The ImageModel class bead defines the data associated with an org.apache.royale.html.Image component, namely the source of the image.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ButtonBarModel",
  "description": "The ArraySelectionModel class is a selection model for a dataProvider that is an array. It assumes that items can be fetched from the dataProvider dataProvider[index].  Other selection models would support other kinds of data providers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.CascadingMenuModel",
  "description": ""},
{ "name": "org.apache.royale.html.beads.models.ColorModel",
  "description": "The ColorModel class is the most basic data model for a component that displays or edits a color.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ColorSpectrumModel",
  "description": "The ColorSpectrumModel class is the most basic data model for a component that displays or edits a color spectrum.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ComboBoxModel",
  "description": "The ComboBoxModel class bead extends org.apache.royale.html.beads.models.ArraySelectionModel and adds the text being displayed by the org.apache.royale.html.ComboBox's input field.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.DataGridCollectionViewModel",
  "description": "The DataGridCollectiomModel class bead extends org.apache.royale.html.beads.models.SingleSelectionCollectionViewModel to facilitate using an ICollectionView as the dataProvider for the DataGrid. Use this with org.apache.royale.html.beads.DataItemRenderFactoryForCollectionView for each DataGridColumn.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.DataGridModel",
  "description": "The DataGridModel class bead extends org.apache.royale.html.beads.models.ArraySelectionModel to facilitate using an Array as the dataProvider for the DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.DataGridPresentationModel",
  "description": "The DataGridPresentationModel class contains the data to label the columns of the org.apache.royale.html.DataGrid along with the height of the rows.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.DataProviderModel",
  "description": "The DataProviderModel class is a model for a dataProvider and an optional labelField.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.DateChooserModel",
  "description": "The DateChooserModel is a bead class that manages the data for a DataChooser. This includes arrays of names for the months and days of the week as well the currently selected date.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.DividedContainerModel",
  "description": "The DividedContainerModel holds the information necessary for the DividedContainer to size and layout its children as well as to respond to changes in those sizes made by the DividedContainerDividers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ImageAndTextModel",
  "description": "The ImageAndTextModel class is associates and image with some text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ImageModel",
  "description": "The ImageModel class bead defines the data associated with an org.apache.royale.html.Image component, namely the source of the image.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ListPresentationModel",
  "description": "The ListPresentationModel holds values used by list controls for presenting their user interfaces.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.MenuBarModel",
  "description": "The model used by the MenuBar."},
{ "name": "org.apache.royale.html.beads.models.MenuModel",
  "description": "The model used to support menus.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.MultiSelectionCollectionViewModel",
  "description": "The MultiSelectionCollectionViewModel class is a selection model for a dataProvider that is an ICollectionView. It assumes that items can be fetched from the dataProvider using dataProvider.getItemAt(index).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.MultiSelectionTreeModel",
  "description": "The MultiSelectionTreeModel is used by Tree"},
{ "name": "org.apache.royale.html.beads.models.NonNullTextModel",
  "description": "The TextModel class is most basic data model for a component that displays text.  All Royale components that display text should also support HTML, although the Flash Player implementations may only support a subset of HTML.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.PanelModel",
  "description": "The PanelModel bead class holds the values for a org.apache.royale.html.Panel, such as its title.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.RangeModel",
  "description": "The RangeModel class bead defines a set of for a numeric range of values which includes a minimum, maximum, and current value.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.RangeModelExtended",
  "description": "The RangeModelExtended bead expands on the RangeModel and adds a function to display a value from the model.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ScrollBarModel",
  "description": "The ScrollBarModel class bead extends the org.apache.royale.html.beads.models.RangeModel and adds page size and page step sizes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.SingleLineBorderModel",
  "description": "The SingleLineBorderModel class is a data model for a single line border. This model is very simple, it only stores the offsets from the edges of the component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.SingleSelectionCollectionViewModel",
  "description": "The SingleSelectionCollectionViewModel class is a selection model for a dataProvider that is an ICollectionView. It assumes that items can be fetched from the dataProvider using dataProvider.getItemAt(index).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.StringSelectionModel",
  "description": "The StringSelectionModel class is a selection model for selecting a single string from a vector of strings.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.TextModel",
  "description": "The TextModel class is most basic data model for a component that displays text.  All Royale components that display text should also support HTML, although the Flash Player implementations may only support a subset of HTML.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.TitleBarModel",
  "description": "The TitleBarModel class bead holds the values for the org.apache.royale.html.TitleBar's properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ToggleButtonModel",
  "description": "The ToggleButtonModel class bead holds values for org.apache.royale.html.Buttons that have a state.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.TreeGridModel",
  "description": "The data model for the TreeGrid. This contains the list of TreeGridColumn definitions.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.TreeModel",
  "description": "The TreeModel is used by Tree"},
{ "name": "org.apache.royale.html.beads.models.ValueToggleButtonModel",
  "description": "The ValueToggleButtonModel class bead extends the org.apache.royale.html.beads.models.ToggleButtonModel and adds value intended to represent a collection of similar org.apache.royale.html.Buttons such as org.apache.royale.html.RadioButtons.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.models.ViewportModel",
  "description": "",
"tags": [
{  "tagName": "copy",
       "values": ["org.apache.royale.core.IViewportModel", "org.apache.royale.core.IViewportModel"]}  ]},
{ "name": "org.apache.royale.html.beads.models.WebBrowserModel",
  "description": "The WebBrowserModel class bead defines the data associated with an org.apache.royale.html.WebBrowser component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.beads.plugin.IModalDisplay",
  "description": ""},
{ "name": "org.apache.royale.html.beads.plugin.ModalDisplay",
  "description": ""},
{ "name": "org.apache.royale.html.beads.plugin.ModalOverlay",
  "description": ""},
{ "name": "org.apache.royale.html.elements.A",
  "description": "The A(Anchor) class represents an HTML <a> anchor element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.B",
  "description": "The B(Bold) class represents an HTML <b> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Br",
  "description": ""},
{ "name": "org.apache.royale.html.elements.Button",
  "description": "The Button class represents an HTML <button> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Caption",
  "description": "The Caption class represents an HTML <caption> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Code",
  "description": "The Code class represents an HTML <code> element",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Col",
  "description": "The Col class represents an HTML <col> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Colgroup",
  "description": "The Colgroup class represents an HTML <colgroup> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Div",
  "description": "The Div class represents an HTML <div> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Em",
  "description": "The Em(Emphasis) class represents an HTML <em> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Footer",
  "description": "The Footer class represents an HTML <footer> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Form",
  "description": "The Form class represents an HTML <form> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.H1",
  "description": "The H1 class represents an HTML <h1> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.H2",
  "description": "The H2 class represents an HTML <h2> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.H3",
  "description": "The H3 class represents an HTML <h3> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.H4",
  "description": "The H4 class represents an HTML <h4> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.H5",
  "description": "The H5 class represents an HTML <h5> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.H6",
  "description": "The H6 class represents an HTML <h6> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Header",
  "description": "The Header class represents an HTML <header> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Hr",
  "description": "The Hr class represents an HTML <hr> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.I",
  "description": "The I(Italic) class represents an HTML <i> anchor element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Iframe",
  "description": "The Iframe class represents an HTML <iframe> element https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Img",
  "description": "The Img class represents an HTML <img> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Input",
  "description": "The Input class represents an HTML <input> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Label",
  "description": "The Label class represents an HTML <label> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Li",
  "description": "The Li class represents an HTML <li> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Ol",
  "description": "The Ol class represents an HTML <ol> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Option",
  "description": "The Option class represents an HTML <option> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.P",
  "description": "The P class represents an HTML <p> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Pre",
  "description": "The PRE class represents an HTML <pre> element\\n \\n \\n",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Progress",
  "description": "The Progress class represents an HTML <progress> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.5", "Royale 0.9.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.S",
  "description": "The S class represents an HTML <s> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Section",
  "description": "The Section class represents an HTML <section> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Select",
  "description": "The Select class represents an HTML <select> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Small",
  "description": "The Small class represents an HTML <small> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Span",
  "description": "The Span class represents an HTML <span> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Strong",
  "description": "The Strong class represents an HTML <strong> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Table",
  "description": "The Table class represents an HTML <table> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Tbody",
  "description": "The Tbody class represents an HTML <tbody> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Td",
  "description": "The Td class represents an HTML <td> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Textarea",
  "description": "The Textarea class represents an HTML <textarea> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Tfoot",
  "description": "The Tfoot class represents an HTML <tfoot> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Th",
  "description": "The Th class represents an HTML <th> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Thead",
  "description": "The Thead class represents an HTML <thead> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Tr",
  "description": "The Tr class represents an HTML <tr> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.U",
  "description": "The U class represents an HTML <u> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.elements.Ul",
  "description": "The Ul class represents an HTML <ul> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.AccordionItemRenderer",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.AlternatingBackgroundColorStringItemRenderer",
  "description": "The AlternatingBackgroundColorStringItemRenderer class displays data in string form using the data's toString() function and alternates between two background colors.  This is the most simple implementation for immutable lists and will not handle adding/removing renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.Border",
  "description": "The Border class is a class used internally by many controls to draw a border.  The border actually drawn is dictated by the IBeadView in the CSS.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ButtonBarButtonItemRenderer",
  "description": "The ButtonBarButtonItemRenderer class handles the display of each item for the org.apache.royale.html.ButtonBar component. This class uses a org.apache.royale.html.Button to represent the data.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.CascadingMenuItemRenderer",
  "description": "The CascadingMenuItemRenderer is the itemRenderer class for the elements of a CascadingMenu. Each item can either be a label or a separator (indicated by type:&quot;separator&quot; in the data for the item). If there is a sub-menu (indicated by menu:[array of items] in the data for the item), a sub-menu indicator is displayed next to the label.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.CheckBoxIcon",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.ClippingViewport",
  "description": "The ClippingViewport extends the Viewport class and makes sure that items extending outside the Container are hidden.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ColorItemRenderer",
  "description": "The ColorItemRenderer class displays a color as part of a color palette",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ColorPalette",
  "description": "The ColorPalette class is used in a ColorPicker. It contains a list of predefined colors.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ColorPickerPopUp",
  "description": "The ColorPickerPopUp class is used in ColorPicker. It contains a set of controls for picking a color.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ColorPickerPopUpWithPalette",
  "description": "The ColorPickerPopUpWithPalette class is used in ColorPicker. It contains a set of controls for picking a color, incluse a color palette.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ColorSpectrum",
  "description": "The ColorSpectrum class is use in a ColorPicker. It defines a base color and the spectrum of colors around it, ranging from black to transparent, and from that base color to white.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ComboBoxList",
  "description": "The ComboBoxList class is the List class used internally by ComboBox as the dropdown/popup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ContainerContentArea",
  "description": "The ContainerContentArea class implements the contentView for a Container on the SWF platform.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DataGridButtonBarButtonItemRenderer",
  "description": "The ButtonBarButtonItemRenderer class handles the display of each item for the org.apache.royale.html.ButtonBar component. This class uses a org.apache.royale.html.Button to represent the data.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DataGridColumn",
  "description": "The DataGridColumn class is the collection of properties that describe a column of the org.apache.royale.html.DataGrid: which renderer to use for each cell in the column, the width of the column, the label for the column, and the name of the field in the data containing the value to display in the column.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DataGridColumnList",
  "description": "The DataGridColumnList class is the List class used internally by DataGrid for each column.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DataGroup",
  "description": "The DataGroup class is the IItemRendererOwnerView used internally by org.apache.royale.html.List class.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DataItemRenderer",
  "description": "The DataItemRenderer class is the base class for most itemRenderers. This class extends org.apache.royale.html.supportClasses.UIItemRendererBase and includes row and column index values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DataProviderNotifierBase",
  "description": "Base class for all data provider notifiers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DateChooserButton",
  "description": "The DateChooserButton class is used for each button in the DateChooser. The button holds the day of the month the button is representing.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DateChooserHeader",
  "description": "The DateChooserHeader is the container for the days of the week labels in the DateChooser.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DateChooserList",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.DateFieldDateChooser",
  "description": "The DateFieldDateChooser class is the DateChooser class used internally by DateField as the dropdown/popup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DateHeaderButton",
  "description": "The DateHeaderButton class is used for the buttons in the DateChooser's heading areas.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DateItemRenderer",
  "description": "The DateItemRenderer class renders date values for the DateChooser.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DayNameItemRenderer",
  "description": "The DayNameItemRenderer class renders the names of days of the week for the DateChooser.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DividedContainerDivider",
  "description": "The DividedContainerSeparator is a control that lays between the children of a DividedContainer. This is the base class for the HDividedContainerDivider and VDividedContainerDivider.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DropDownListList",
  "description": "The DropDownListList class is the List class used internally by DropDownList as the dropdown/popup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.DynamicDataGridColumnList",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.GraphicsItemRenderer",
  "description": "The GraphicsItemRenderer provides a base class for itemRenderers that use graphics rather than components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.HDividedContainerDivider",
  "description": "This sub-class of DividerBoxDivider sets up a vertical divider between the columns of an HDividedContainer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.HDividedContainerGripper",
  "description": "The HDividedContainerGripper is a bead added to the HDividedContainerDivider to provide a visual cue that the divider can be grabbed and moved.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.HScrollBar",
  "description": "The ScrollBar class represents either a vertical or horizontal control that allows the user to quickly scan through a component that does not wholly fit within its container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.HScrollViewport",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.ICollapsible",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.IColorPickerPopUp",
  "description": "All color picker pop-ups must implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.IDataGridColumn",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.IDataGridColumnList",
  "description": "The IDataGridColumnList interface is a marker interface for DataGrid Column Lists",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.IDateChooser",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.IDividedContainerDivider",
  "description": "All DividerBoxDividers must implement this interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.IDividedContainerGripper",
  "description": "This interface defines a gripper bead control for a DividedContainer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.MXMLItemRenderer",
  "description": "The MXMLItemRenderer class is the base class for itemRenderers that are MXML-based and provides support for a layout and a data object.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.MXMLStatesItemRenderer",
  "description": "The MXMLStatesItemRenderer class gives view states support for MXML-based item renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.MenuBarItemRenderer",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.MenuItemRenderer",
  "description": "The MenuItemRenderer class is the default itemRenderer for Menus.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.NestedStringItemRenderer",
  "description": "The NestedStringItemRenderer can be used with lists or DataGridColumns for items that are not at the top level of the data. For example, if the data is an Object having: {title: &quot;Something&quot;, address:{street: &quot;Main&quot;, zip: &quot;02118&quot;}} using NestedStringItemRenderer for the address field can extract any of its consitutents: labelField=&quot;address.zip&quot;.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.OverflowViewport",
  "description": "A OverflowViewport is the area of a Container set aside for displaying content. If the content exceeds the visible area of the viewport it will show.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.PanelContent",
  "description": "A Container specialized for the content area of a Panel. Needed for its type name"},
{ "name": "org.apache.royale.html.supportClasses.PanelLayoutProxy",
  "description": "The PanelLayoutProxy class is used by Panel in order for layouts to operate on the Panel itself. If Panel were being used, its numElements, getElementAt, etc. functions would actually redirect to its Container content. In order for a layout to work on the Panel directly (its TitleBar, Container, and ControlBar children), this proxy is used which will invoke the Panel's $numElements, $getElementAt, etc functions.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.RadioButtonIcon",
  "description": "The RadioButton class is a component that displays a selectable Button. RadioButtons are typically used in groups, identified by the groupName property. RadioButton use the following beads:  org.apache.royale.core.IBeadModel: the data model, which includes the groupName. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the RadioButton..",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ScrollBar",
  "description": "The ScrollBar class represents either a vertical or horizontal control that allows the user to quickly scan through a component that does not wholly fit within its container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.ScrollingViewport",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.SpinnerButton",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.StringItemRenderer",
  "description": "The StringItemRenderer class displays data in string form using the data's toString() function.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.StyledBaseMXMLItemRenderer",
  "description": "The MXMLItemRenderer class is the base class for itemRenderers that are MXML-based and provides support for a layout and a data object.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.StyledDataItemRenderer",
  "description": "The DataItemRenderer class is the base class for most itemRenderers. This class extends org.apache.royale.html.supportClasses.UIItemRendererBase and includes row and column index values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.StyledMXMLStatesItemRenderer",
  "description": "The StyledMXMLStatesItemRenderer class gives view states support for MXML-based item renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.StyledUIItemRendererBase",
  "description": "The StyledUIItemRendererBase is an UIItemRendererBase that support the StyledUIBase base class",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.TextButtonItemRenderer",
  "description": "The TextButtonItemRenderer class extends TextButton and turns it into an itemRenderer suitable for use in most DataContainer/List/DataGrid applications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.TextFieldItemRenderer",
  "description": "The TextFieldItemRenderer class provides a org.apache.royale.html.TextField as an itemRenderer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.TreeGridColumn",
  "description": "A TreeGridColumn defines the property of a specific column in the TreeGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.TreeGridControlItemRenderer",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.TreeItemRenderer",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.TreeListData",
  "description": "The TreeListData class contains information that Tree item renderers may find useful when displaying the data for a node in the tree.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignoreimport",
       "values": ["goog.events.Event", "goog.events.Event"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.html.supportClasses.TreeXMLItemRenderer",
  "description": "JS needs special handling for XML.  It can't do [] lookups.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.UIItemRendererBase",
  "description": "The UIItemRendererBase class is the base class for all itemRenderers. An itemRenderer is used to display a single datum within a collection of data. Components such as a List use itemRenderers to show their dataProviders.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.VDividedContainerDivider",
  "description": "This sub-class of DividedContainerDivider sets up a horizontal divider between the rows of a VDividedContainer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.VDividedContainerGripper",
  "description": "The VDividedContainerGripper bead adds a visual cue to the VDividedContainerDivider to indicate where to start dragging to change the size of the elements.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.VScrollBar",
  "description": "The ScrollBar class represents either a vertical or horizontal control that allows the user to quickly scan through a component that does not wholly fit within its container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html.supportClasses.VScrollViewport",
  "description": ""},
{ "name": "org.apache.royale.html.supportClasses.Viewport",
  "description": "A Viewport is the area of a Container set aside for displaying content. If the content exceeds the visible area of the viewport it will be clipped or hidden.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.html5.Button",
  "description": ""},
{ "name": "org.apache.royale.html5.CheckBox",
  "description": ""},
{ "name": "org.apache.royale.html5.ComboBox",
  "description": ""},
{ "name": "org.apache.royale.html5.DateField",
  "description": ""},
{ "name": "org.apache.royale.html5.DropDownList",
  "description": ""},
{ "name": "org.apache.royale.html5.Label",
  "description": "Label probably should extend TextField directly, but the player's APIs for TextLine do not allow direct instantiation, and we might want to allow Labels to be declared and have their actual view be swapped out."},
{ "name": "org.apache.royale.html5.List",
  "description": "Label probably should extend TextField directly, but the player's APIs for TextLine do not allow direct instantiation, and we might want to allow Labels to be declared and have their actual view be swapped out."},
{ "name": "org.apache.royale.html5.RadioButton",
  "description": ""},
{ "name": "org.apache.royale.html5.TextArea",
  "description": ""},
{ "name": "org.apache.royale.html5.TextButton",
  "description": ""},
{ "name": "org.apache.royale.html5.TextInput",
  "description": ""},
{ "name": "org.apache.royale.html5.TransformBead",
  "description": ""},
{ "name": "org.apache.royale.icons.FontAwesomeIcon",
  "description": "Icons can be used alone or in buttons and other controls  This class could be used with any icon family out there and with its text property",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.icons.FontAwesomeToggleIcon",
  "description": "A FontAwesome based toggle icon can be used alone or in buttons and other controls. This icons has two states, selected and unselected showing different icons in each one.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.icons.FontIconBase",
  "description": "FontIconBase is the base class to provide most common features for all kinds of text based icons",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.icons.MaterialIcon",
  "description": "A Material based icon can be used alone or in buttons and other controls",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.icons.MaterialToggleIcon",
  "description": "A Material based toggle icon can be used alone or in buttons and other controls. This icons has two states, selected and unselected showing different icons in each one.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Alert",
  "description": "The Alert class is a component that displays a message and one or more buttons in a view that pops up over all other controls and views. The Alert component uses the AlertView bead to display a modal dialog with a title and a variety of buttons configured through the flag property of its show() static function. The Alert component uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Alert. org.apache.royale.core.IBeadView: the bead used to create the parts of the Alert. org.apache.royale.core.IBeadController: the bead used to handle input events. org.apache.royale.core.IBorderBead: if present, draws a border around the Alert. org.apache.royale.core.IBackgroundBead: if present, places a solid color background below the Alert.  Note: Alert use the HTML <dialog> element, which currently has very limited cross-browser support. To ensure support across all modern browsers, we use use dialogPolyfill extern or creating your own. The required Dialog Polyfill lines are injected in the constructor",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Application",
  "description": "The Application class is the main class and entry point for a Royale application and does not contain user interface elements. Those UI elements go in the view (Jewel ViewBase).  This Application class expects there to be a main model, a controller, and an initial view.  Jewel Application holds specific Jewel needs in a Royale Application. This class extends the standard ApplicationBase and sets up the AllCSSValuesImpl implementation for convenience.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.supportClasses.view.ViewBase", "org.apache.royale.core.ApplicationBase", "org.apache.royale.core.AllCSSValuesImpl", "org.apache.royale.jewel.supportClasses.view.ViewBase", "org.apache.royale.core.ApplicationBase", "org.apache.royale.core.AllCSSValuesImpl"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ApplicationMainContent",
  "description": "The ApplicationMainContent class is a Container component capable of parenting the other organized content that implements ISelectableContent interface (i.e, a SectionContent)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Bar",
  "description": "The Bar class is a container component for different items like a title, navigation icon, and/or icon buttons. Normaly is located at the top or bottom of a container and use to fill all horizontal availale space. It's responsive as screen size changes",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.BinaryImage",
  "description": "The Image class is a component that displays a bitmap. The Image uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Image, including the url/binary property. org.apache.royale.core.IBeadView: constructs the visual elements of the component.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Button",
  "description": "The Jewel Button class adds text capabilities to Jewel SimpleButton.  Button is a commonly used rectangular button with text inside. It looks like it can be pressed and allow users to take actions, and make choices, with a single click or tap. It typically use event listeners to perform an action when the user interact with the control. When a user clicks the mouse or tap with the finger this control it dispatches a click event.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ButtonBar",
  "description": "The Jewel ButtonBar class is a component that displays a set of Buttons. The ButtonBar is actually a List with a default horizontal layout and an itemRenderer that produces Jewel Buttons.  By default buttons are equally sized, by setting `widthType` to NaN.  The ButtonBar uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the ButtonBar, including the dataProvider. org.apache.royale.core.IBeadView: constructs the parts of the component. org.apache.royale.core.IBeadController: handles input events. org.apache.royale.core.IBeadLayout: sizes and positions the component parts. org.apache.royale.core.IDataProviderItemRendererMapper: produces itemRenderers. org.apache.royale.core.IItemRenderer: the class or class factory to use.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Card",
  "description": "The Card class is a container for content like text or images that support optional parts like title and actions (usually buttons).  Card has a default &quot;panel&quot; style and can compose other containers like CardHeader, CardPrimaryContent, CardExpandedContent and CardActions",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.CheckBox",
  "description": "The Jewel CheckBox consists of a box, that can contain a check mark or not, and an optional label.  When a user clicks or touches this control or its associated text, the CheckBox changes its state from checked to unchecked or from unchecked to checked, communicating clearly a binary condition.  Checkboxes can appear in groups (but not necesarily), and can be selected and deselected individually.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ComboBox",
  "description": "The ComboBox class is a component that displays an input field and pop-up List with selections. Selecting an item from the pop-up List places that item into the input field of the ComboBox. The ComboBox uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItem, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the component. org.apache.royale.core.IBeadController: the bead that handles input and output.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Container",
  "description": "The Jewel Container class is a container that adds up to the features already provided by Jewel Group.  The position and size of the children are determined by BasicLayout while the size of a Container can either be determined by its children or by specifying an exact size in pixels or as a percentage of the parent element. You can swap the layout for any other one available making children arrange in different ways (i.e: horizontal, vertical,...)  Container clip content by default thanks to its Viewport bead. This bead can also manage clipping trough `clipContent` property. To add scrolling functionality Viewport bead can be changed by ScrollingViewport.  Other Group feature are &quot;View States&quot; to provide state management to show diferent parts to the user.  Finally Container can add elements directly to the strand (throught `strandChildren` property) instead to its view content unlike the `addElement()` APIs which place children into the contentView.  While the container is relatively lightweight, it should generally not be used as the base class for other controls, even if those controls are composed of children.  That's because the fundamental API of Container is to support an arbitrary set of children, and most controls only support a specific set of children.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.beads.layout", "org.apache.royale.jewel.supportClasses.Viewport", "org.apache.royale.jewel.beads.layout", "org.apache.royale.jewel.supportClasses.Viewport"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.DataContainer",
  "description": "The Jewel DataContainer class is a component that displays multiple data items.  This component gets the data through its `dataProvider` property that receives an `ArrayList` of data objects. To represent each item the component use an [ItemRenderer](/features/item-renderers) class that can be configured and customized.  The component generate dynamically as many instances of ItemRenderer as items in the data provider array and fill each instance with the appropiate data. By default it uses `StringItemRenderer` as the item renderer.  By default items are layout vertically using Jewel `VerticalLayout`. This component has a `Viewport` that clip generated items.  The DataContainer uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the list. org.apache.royale.core.IBeadLayout: the bead responsible for the size and position of the itemRenderers. org.apache.royale.core.IDataProviderItemRendererMapper: the bead responsible for creating the itemRenders. org.apache.royale.core.IItemRendererClassFactory: the factory for the itemrenders. org.apache.royale.core.IItemRenderer: the class that describes the each piece of data. org.apache.royale.core.IItemRendererInitializer: the class that initialize the renderer and provide additional configuration. org.apache.royale.core.IViewport: the class that defines the area that display content",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.DataGrid",
  "description": "The DataGrid class displays a collection of data using columns and rows. Each column represents a specific field in the data set; each row represents a specific datum. The DataGrid is a composite component built with a org.apache.royale.jewel.ButtonBar for the column headers and a org.apache.royale.jewel.List for each column. The DataGrid's view bead (usually org.apache.royale.jewel.beads.views.DataGridView) constructs these parts while itemRenderer factories contruct the elements to display the data in each cell.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.DateChooser",
  "description": "The DateChooser class is a component that displays a calendar.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.DateField",
  "description": "The DateField class provides an input field where a date can be entered and a pop-up calendar control for picking a date as an alternative to the text field.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Divider",
  "description": "The Divider class is a component that shows a clear separation between two zones",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Drawer",
  "description": "The Drawer class is a container component used for navigation that can be opened with the menu icon, or be always visible. It use to be positioned at the left (or right) side of the application screen.  It can be used in float or fixed modes.  float make the drawer appear over the screen without make any other application elements change size. Clicking outside the drawer will hide it. Usually clicking in some navigation option will hide it as well.  fixed will need some place and make the other application content shrink. Clicking on any navigation option in the drawer usually doesn't hide it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.DropDownList",
  "description": "The DropDownList class implements the basic equivalent of the <code>&lt;select&gt;</code> tag in HTML. The default implementation only lets the user see and choose from an array of strings.  More complex controls would display icons as well as strings, or colors instead of strings or just about anything.  The default behavior only lets the user choose one and only one item.  More complex controls would allow mutiple selection by not dismissing the dropdown as soon as a selection is made.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.FooterBar",
  "description": "The FooterBar class is a container component for different items like navigation icons and/or buttons. Normaly is located at the bottom of an application and use to fill all horizontal availale space. It's responsive as screen size changes",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Form",
  "description": "The Form class works with all validators, which implements IPopUpHost can host error tips. strand with FormValidator to dispatch invalid/valid event.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.FormHeading",
  "description": "FormHeading is a label, and option required indicator (no validation is implied) and a content with one or more controls"},
{ "name": "org.apache.royale.jewel.FormItem",
  "description": "FormItem is a label, and option required indicator (no validation is implied) and a content with one or more controls"},
{ "name": "org.apache.royale.jewel.Grid",
  "description": "The Grid class is a container that uses Grid Layout. Grid Layout need other immediate children to work as cells to host cell content.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.GridCell",
  "description": "The GridCell class is the inmediate container in a Grid Layout to host grid cell content.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Group",
  "description": "The Jewel Group class provides a light-weight container for visual elements.  By default Group have a Basiclayout, allowing its children to be positioned using absolute values (Notice Basic version doesn't provide any layout at all). You can swap the layout for any other one available making children arrange in different ways (i.e: horizontal, vertical,...)  Group doesn't clip content so elements inside the group aren't hidden far beyond group boundaries. Also, no scrolling support is built in Group. Group doesn't have any chrome or visuals just position inner childs.  Other Group feature are &quot;View States&quot; to provide state management to show diferent parts to the user  For scrolling and clipping you can use Jewel Container",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.beads.layout", "org.apache.royale.jewel.supportClasses.Viewport", "org.apache.royale.jewel.beads.layout", "org.apache.royale.jewel.supportClasses.Viewport"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.HContainer",
  "description": "This Container subclass uses HorizontalLayout as its default layout.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.beads.layouts", "org.apache.royale.jewel.beads.layouts"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.HGroup",
  "description": "This Group subclass uses HorizontalLayout as its default layout.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.beads.layouts", "org.apache.royale.jewel.beads.layouts"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.HSlider",
  "description": "The Slider class is a component that displays a range of values using a track and a thumb control. The Slider uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, typically an IRangeModel, that holds the Slider values. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the Slider. org.apache.royale.core.IBeadController: the bead that handles input. org.apache.royale.core.IThumbValue: the bead responsible for the display of the thumb control. org.apache.royale.core.ITrackView: the bead responsible for the display of the track.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.IconButton",
  "description": "The IconButton class is a Button that supports icons.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.IconButtonBar",
  "description": "The Jewel IconButtonBar class is a component that displays a set of IconButtons. The IconButtonBar is actually a ButtonBar with an itemRenderer that produces Jewel IconButtons.  By default buttons are equally sized, by setting `widthType` to NaN.  The IconButtonBar uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the ButtonBar, including the dataProvider. org.apache.royale.core.IBeadView: constructs the parts of the component. org.apache.royale.core.IBeadController: handles input events. org.apache.royale.core.IBeadLayout: sizes and positions the component parts. org.apache.royale.core.IDataProviderItemRendererMapper: produces itemRenderers. org.apache.royale.core.IItemRenderer: the class or class factory to use.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.IconTextInput",
  "description": "The IconTextInput class implements is a TextInput that supports an icon that can be positionend to the left or to the right of text content",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Image",
  "description": "The Jewel Image is a simple component that loads an Image. For button images use ImageButton",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ImageButton",
  "description": "The ImageButton class presents an image as a button. In html is an input type=&quot;image&quot;, this shows the hand pointer cursor",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Label",
  "description": "The Label class implements the basic control for labeling other controls.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.List",
  "description": "The List class is a component that displays multiple data items. The List uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItem, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the list. org.apache.royale.core.IBeadController: the bead that handles input and output. org.apache.royale.core.IBeadLayout: the bead responsible for the size and position of the itemRenderers. org.apache.royale.core.IDataProviderItemRendererMapper: the bead responsible for creating the itemRenders. org.apache.royale.core.IItemRenderer: the class or factory used to display an item in the list. org.apache.royale.core.IItemRendererClassFactory: the factory for the itemrenders. org.apache.royale.core.ISelectableItemRenderer: handles selection and hover states for item renderers. org.apache.royale.core.IItemRendererInitializer: the class that initialize the renderer and provide additional configuration. org.apache.royale.core.IViewport: the class that defines the area that display content org.apache.royale.core.IBeadKeyController: add keyboard support to the list.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Module",
  "description": "The UIModule class is the base class for modules of user interface controls in Royale.  It is usable as the root tag of MXML documents and UI controls and containers are added to it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ModuleLoader",
  "description": "The Jewel ModuleLoader class can load a Jewel Module.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Navigation",
  "description": "The Navigation class is a List used for navigate other organized content in a Royale Application. In HTML is represented by a <nav> tag in HTML and It parents a list of links. By default it uses NavigationLinkItemRenderer class to define each item.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.NumericStepper",
  "description": "The NumericStepper class is a component that displays a numeric value and up/down controls (using a org.apache.royale.jewel.Spinner) to increase and decrease the value by specific amounts. The NumericStepper uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the component of type org.apache.royale.core.IRangeModel. org.apache.royale.core.IBeadView: constructs the parts of the component. org.apache.royale.core.IBeadController: handles the input events.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.PopUp",
  "description": "The PopUp class is a component that can popup another component declared as IPopUp",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.RadioButton",
  "description": "The Jewel RadioButton control lets the user make a single choice within a set of mutually exclusive choices.  A RadioButton consists of a circle and, typically, text that clearly communicates a condition that will be set when the user clicks or touches it. Radio buttons always appear in groups of two or more with the same <code>groupName</code> propert. While they can be individually selected, can only be deselected by selecting a different RadioButton in the same group (which deselects the rest of RadioButton).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ResponsiveView",
  "description": "The ResponsiveView class is the main Container component capable of parenting other components in a responsive Jewel Application.  ResponsiveView doesn't need to specify `width` and `height` since are sized 100% in both directions by default. In this way we can use the width of the application container to apply responsive rules on any part of the application.  It normaly can host a TopAppBar, a Drawer and a Container with other organized content for navigation",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ScrollableGrid",
  "description": "The ScrollableGrid class is a Grid with scroll capabilities",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ScrollableSectionContent",
  "description": "The ScrollableSectionContent class is a scrollable container component capable of parenting other components. This class is used along with Tabs to separate content and present and organize data for the user.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.SectionContent",
  "description": "The Jewel SectionContent class is a Container component capable of parenting other components. This class is used along with Tabs to separate content, present and organize data for the user.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.SimpleLoader",
  "description": "The SimpleLoader class is widget used to show some progressing. It could be while loading dome data, or waiting for interface to complete some task.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.SimpleTable",
  "description": "The SimpleTable class represents a simple HTML <table> element. This component is designed to be declarative in MXML (or AS3), Check Table component for a Table that uses itemRenderers, columns and a data provider.  This component uses the following jewel classes to generate the Table structure:  - Header: j:THead j:TableRow j:TableHeaderCell  - Body j:TBody j:TableRow j:TableCell  - Footer j:TFoot j:TableRow j:TableCell   As well, DataGrid is a more complex component",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Snackbar",
  "description": "The Snackbar class is a component that provide brief messages about app processes at the bottom that pops up over all other controls. The Snackbar component uses the SnackbarView bead to display messages and can contain a single action which configured through the action property. Because Snackbar disappear automatically, the action shouldn’t be “Dismiss” or “Cancel.” The Snackbar component uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Snackbar. org.apache.royale.core.IBeadView: the bead used to create the parts of the Snackbar. org.apache.royale.core.IBeadController: the bead used to handle disappear automatically.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Spacer",
  "description": "The Spacer class takes up space in the UI layout. Setting width and/or height",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Spinner",
  "description": "The Spinner class is a component that displays a control for incrementing a value and a control for decrementing a value. The org.apache.royale.jewel.NumericStepper uses a Spinner as part of the component. Spinner uses the following beads:  org.apache.royale.core.IBeadModel: an IRangeModel to hold the properties. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the Spinner. org.apache.royale.core.IBeadController: a bead that handles the input events.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.TabBar",
  "description": "The TabBar class is a List used for navigate other organized content in a Royale Application. In HTML is represented by a <nav> tag in HTML and It parents a list of links. By default it uses TabBarButtonItemRenderer class to define each item.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.TabBarContent",
  "description": "The TabBarContent class is a Container component capable of parenting the other organized content that implements ISelectableContent interface (i.e, a SectionContent)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Table",
  "description": "The Table class represents an HTML <table> element.  This Table component uses a data mapper and item renderers to generate a Table from a data source, in opposite to SimpleTable component that is a declarative mxml.  As well, DataGrid is a more complex component",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.TextArea",
  "description": "The TextArea implements the jewel control for multiline text field. It dispatches a change event when the user input text.  User can define number of rows and the max number of rows.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.TextInput",
  "description": "The TextInput implements the jewel control for single-line text field. It dispatches a change event when the user input text.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.TitleBar",
  "description": "The TitleBar class is a Container component that displays a title and an optional close button. The TitleBar uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the title and showCloseButton values. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the component. org.apache.royale.core.IBeadLayout: the bead that handles size and position of the component parts (org.apache.royale.html.Label and org.apache.royale.html.Button). org.apache.royale.core.IMeasurementBead: a bead that helps determine the size of the org.apache.royale.html.TitleBar for layout.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ToggleButton",
  "description": "The ToggleButton class is a Button that supports a selected property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.ToggleButtonBar",
  "description": "The Jewel ToggleButtonBar class is a component that displays a set of ToggleButtons. The ToggleButtonBar is actually an IconButtonBar with an itemRenderer that produces Jewel ToggleButtons.  By default buttons are equally sized, by setting `widthType` to NaN.  The ToggleButtonBar uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the ButtonBar, including the dataProvider. org.apache.royale.core.IBeadView: constructs the parts of the component. org.apache.royale.core.IBeadController: handles input events. org.apache.royale.core.IBeadLayout: sizes and positions the component parts. org.apache.royale.core.IDataProviderItemRendererMapper: produces itemRenderers. org.apache.royale.core.IItemRenderer: the class or class factory to use.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.TopAppBar",
  "description": "The TopAppBar class is a container component for different items like application title, navigation icon, and/or icon buttons. Normaly is located at the top of an application and use to fill all horizontal availale space. It's responsive as screen size changes",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.VContainer",
  "description": "This Container subclass uses VerticalLayout as its default layout.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.beads.layouts", "org.apache.royale.jewel.beads.layouts"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.VGroup",
  "description": "This Group subclass uses VerticalLayout as its default layout.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.beads.layouts", "org.apache.royale.jewel.beads.layouts"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.VSlider",
  "description": "The VSlider class is a component that displays a range of values using a track and a thumb control vertically. The VSlider uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, typically an IRangeModel, that holds the VSlider values. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the VSlider. org.apache.royale.core.IBeadController: the bead that handles input. org.apache.royale.core.IThumbValue: the bead responsible for the display of the thumb control. org.apache.royale.core.ITrackView: the bead responsible for the display of the track.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.View",
  "description": "The View class is the class used as the initialView in a Royale Jewel Application.  It is generally used as the root tag of MXML documents and UI controls and containers are added to it.  For responsive applications you can use ResponsiveView instead.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.ResponsiveView", "org.apache.royale.jewel.ResponsiveView"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.VirtualComboBox",
  "description": "The VirtualComboBox class is a component that displays an input field and pop-up VirtualList with selections. Selecting an item from the pop-up List places that item into the input field of the ComboBox.  This component should be used when data provider has several items for performance improvements  The ComboBox uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItem, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the component. org.apache.royale.core.IBeadController: the bead that handles input and output.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.VirtualList",
  "description": "The VirtualList class is a List component used for large data providers that need to create and recicle just the visible list renderers. The List uses the following bead types:  org.apache.royale.core.IBeadModel: the data model, which includes the dataProvider, selectedItem, and so forth. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the list. org.apache.royale.core.IBeadController: the bead that handles input and output. org.apache.royale.core.IBeadLayout: the bead responsible for the size and position of the itemRenderers. org.apache.royale.core.IDataProviderItemRendererMapper: the bead responsible for creating the itemRenders. org.apache.royale.core.IItemRenderer: the class or factory used to display an item in the list.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.Wizard",
  "description": "Wizard is a container that navigates from one content to the next. The content is organized in wizard pages It can provide previous and next navigation buttons",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.WizardPage", "org.apache.royale.jewel.WizardPage"]}  ]},
{ "name": "org.apache.royale.jewel.WizardContent",
  "description": "The WizardContent class is a Container component capable of parenting the other organized content that implements ISelectableContent interface (i.e, a SectionContent)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.WizardPage",
  "description": "WizardPage is the main class for a page inside the WizardContent"},
{ "name": "org.apache.royale.jewel.beads.controllers.AlertController",
  "description": "The AlertControler class bead handles the close event on the org.apache.royale.jewwl.Alert by removing the org.apache.royale.jewel.Alert from the display.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.ComboBoxController",
  "description": "The ComboBoxController class is responsible for listening to mouse event related to ComboBox. Events such as selecting a item or changing the sectedItem.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.DateChooserMouseController",
  "description": "The DateChooserMouseController class is responsible for listening to mouse event related to the DateChooser. Events such as selecting a date or changing the calendar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.DateFieldMouseController",
  "description": "The DateFieldMouseController class is responsible for monitoring the mouse events on the elements of the DateField. A click on the DateField's menu button triggers the pop-up, for example.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.DropDownListController",
  "description": "The DropDownListController class is the controller for org.apache.royale.html.DropDownList.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for the click event and displays the dropdown/popup, and watches the dropdown/popup for change events and updates the selection model accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.ListKeyDownController",
  "description": "The Jewel ListSingleSelectionMouseController class is a controller for org.apache.royale.jewel.List.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for events from the item renderers and updates an ISelectionModel (which only supports single selection).  Other controller/model pairs would support various kinds of multiple selection.  Jewel controller takes into account if the component",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.ListSingleSelectionMouseController",
  "description": "The Jewel ListSingleSelectionMouseController class is a controller for org.apache.royale.jewel.List.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for events from the item renderers and updates an ISelectionModel (which only supports single selection).  Other controller/model pairs would support various kinds of multiple selection.  Jewel controller takes into account if the component",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.NumericStepperController",
  "description": "The NumericStepperController class is responsible for listening to mouse event related to NumericStepper.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.PopUpMouseController",
  "description": "The PopUpMouseController class is responsible for monitoring the mouse events on the elements of the DateField. A click on the DateField's menu button triggers the pop-up, for example.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.SliderMouseController",
  "description": "The SliderMouseController class bead handles mouse events on the org.apache.royale.jewel.HSlider's component parts (thumb and track) and dispatches change events on behalf of the HSlider (as well as co-ordinating visual changes (such as moving the thumb when the track has been tapped or clicked). Use this controller for horizontally oriented Sliders.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.SnackbarController",
  "description": "The SnackbarController class bead handles duration of the Snackbar How long to show the Snackbar for.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.SpinnerMouseController",
  "description": "The SpinnerMouseController class bead handles mouse events on the org.apache.royale.jewel.Spinner's component buttons, changing the value of the Spinner.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.TableCellSelectionMouseController",
  "description": "The TableCellSelectionMouseController class is a controller for org.apache.royale.jewel.Table.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for events from the item renderers and updates an ITableModel (which only supports single selection).  Other controller/model pairs would support various kinds of multiple selection.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.TableKeyDownController",
  "description": "The Jewel TableKeyDownController class is a key controller for org.apache.royale.jewel.Table.  This is just a dummy implementation for now, will be fully implemented soon",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.VirtualListKeyDownController",
  "description": "The Jewel ListSingleSelectionMouseController class is a controller for org.apache.royale.jewel.List.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event. This controller watches for events from the item renderers and updates an ISelectionModel (which only supports single selection).  Other controller/model pairs would support various kinds of multiple selection.  Jewel controller takes into account if the component",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controllers.WizardController",
  "description": "The WizardController class is the controller for org.apache.royale.jewel.Wizard.  Controllers watch for events from the interactive portions of a View and update the data model or dispatch a semantic event.  This controller watches for the click event in previous/next buttons and makes the wizard navigate to the corresponding view updates the selection model accordingly.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.Badge",
  "description": "The Badge class provides a small status descriptors for UI elements.  A Badge is an onscreen notification element consists of a small circle, typically containing a number or other characters, that appears in proximity to another object",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.Disabled",
  "description": "The Disabled bead class is a specialty bead that can be used to disable a Jewel control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.DispatchChangeOnStartup",
  "description": "The DispatchChangeOnStartup bead class is a specialty bead that can be used with components that implements ISelectionModel and uses dataProvider to dispatch a CHANGE event when the component is initialized",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.MultiLine",
  "description": "The MultiLine bead is a specialty bead that can be used with any IClassSelectorListSupport control to allow more than one line i.e: Button, DropDownList, ... Note that Label has multiline property baked since is very used on that component",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.NavigationActionNotifier",
  "description": "The NavigationActionNotifier notifies when a control's &quot;change&quot; or &quot;click&quot; event is thrown Other application parts can listen for &quot;navigationAction&quot; event to respond accordingly.  This bead should be used with Navigation, TabBar or a Button (that could be located in TobAppBar) or any other navigation component that triggers some navigation action  An example of use case is to use with CleanValidationErrors bead",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.ResponsiveSize",
  "description": "The ResponsiveSize bead class is a specialty bead that can be used to change the size of a Jewel control depending on responsiveness.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.SizeControl",
  "description": "The SizeControl bead class is a specialty bead that can be used to size a Jewel control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.TextAlign",
  "description": "The TextAlign bead class is a specialty bead that make text align left, right or center.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.ToolTip",
  "description": "The ToolTip class is a specialty bead that can be used with any control. The bead floats a string over a control if the user hovers over the control with a mouse.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.application.CleanValidationErrors",
  "description": "The CleanValidationErrors listen for &quot;navigationAction&quot; event signaling some navigation was performed and we want to clean all validation errors in that could be left in the previous content",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.button.InputButtonSize",
  "description": "The InputButtonSize class implements input button size for controls like CheckBox or RadioButton that need to size the selectable button part.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.button.ResponsiveLabelVisibility",
  "description": "The ResponsiveLabelVisibility bead class is a specialty bead that can be used to show or hide the label text of a Button depending on responsive rules.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.combobox.ComboBoxDisabled",
  "description": "The ComboBoxDisabled bead class is a specialty bead that can be used to disable a Jewel ComboBox.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.combobox.ComboBoxTextPrompt",
  "description": "The ComboBoxTextPrompt class is a specialty bead that can be used with any ComboBox control. The bead places a string into the sub TextInput component when there is no value associated with the text property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.combobox.ComboBoxTruncateText",
  "description": "The ComboBoxTruncateText class is a specialty bead that can be used with a Jewel ComboBox control. The bead truncate the text when no space is available using &quot;...&quot;",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.combobox.ComboLowerCase",
  "description": "The ComboLowerCase class is a specialty bead that can be used with a Jewel ComboBox control. The bead makes all text change to lower case Note: if you only need text to look lower case but wants the text remain unchanged you can use CSS text-transform: lowercase",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.combobox.ComboUpperCase",
  "description": "The ComboUpperCase class is a specialty bead that can be used with a Jewel ComboBox control. The bead makes all text change to upper case Note: if you only need text to look upper case but wants the text remain unchanged you can use CSS text-transform: uppercase",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.combobox.IComboBoxView",
  "description": "The IComboBoxView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.jewel.ComboBox control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.combobox.SearchFilter",
  "description": "The SearchFilter bead class is a specialty bead that can be used with a Jewel ComboBox to filter options as we type",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.5", "Royale 0.9.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.datagrid.DataGridColumnLabelsChange",
  "description": "The DataGridColumnLabelsChange bead class is a specialty bead that can be use with a Jewel DataGrid control when need to change column labels at runtime.  Users can change labels throught datagrid presentation model &quot;columnLabels&quot; Array",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.datefield.DateFieldDisabled",
  "description": "The DateFieldDisabled bead class is a specialty bead that can be used to disable a Jewel DateField control. This disables all the internal native controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.datefield.DateFieldMaskedTextInput",
  "description": "The DateFieldMaskedTextInput class is a specialty bead that is used by DateField control. The bead mask the input of the user to conform to numbers and slashes in the following pattern: 'NN/NN/NNNN'",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.datefield.DateFieldTextPrompt",
  "description": "The DateFieldTextPrompt class is a specialty bead that can be used with any DateField control. The bead places a string into the sub TextInput component when there is no value associated with the text property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.datefield.SpanishDateComponentConfig",
  "description": "The SpanishDateFieldConfig class is a specialty bead that is used by DateField or DateChooser control to configure to Spanish. You can use in combination with DateFormatDDMMYYYY Formatter",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.drawer.HideDrawerOnMouseDown",
  "description": "The HideDrawerOnMouseDown can be used with a Drawer to make sure mouse down events close an open drawer. For this bead to work the application needs to be sized to the window size. See org.apache.royale.core.BrowserResizeListener or BrowserResizeApplicationListener for a way to achieve this.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.drawer.ResponsiveDrawer",
  "description": "The ResponsiveDrawer class is a bead to use with Jewel Drawer to make it fixed or float depending on the screen size.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.dropdownlist.DropDownListTextPrompt",
  "description": "The DropDownListTextPrompt class is a specialty bead that can be used with any DropDownList control. It fills the prompt property in the DropDownListView",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.dropdownlist.RequireSelection",
  "description": "The RequireSelection bead is a specialty bead that can be used with any DropDownList control to force a data item always be selected in the control",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.image.ClipImage",
  "description": "The HorizontalListScroll bead is a specialty bead that can be used with Jewel List control and gives horizontal scroll to the list  examples of use:  CIRCLE_SHAPE <j:ClipImage shape=&quot;{ClipImage.CIRCLE_SHAPE}&quot; radius=&quot;46&quot; x=&quot;50&quot; y=&quot;50&quot; units=&quot;%&quot;/>  - using a border: <j:ClipImage shape=&quot;{ClipImage.CIRCLE_SHAPE}&quot; radius=&quot;46&quot; x=&quot;50&quot; y=&quot;50&quot; units=&quot;%&quot; border=&quot;1&quot; borderColor=&quot;#666666&quot;/>  POLYGON_SHAPE <j:ClipImage shape=&quot;{ClipImage.POLYGON_SHAPE}&quot; units=&quot;%&quot; points=&quot;[50,0,0,100,100,100]&quot;/> <j:ClipImage shape=&quot;{ClipImage.POLYGON_SHAPE}&quot; units=&quot;%&quot; points=&quot;[20, 0, 0, 20, 30, 50, 0, 80, 20, 100, 50, 70, 80, 100, 100, 80, 70, 50, 100, 20, 80, 0, 50, 30]&quot;/>  ELLIPSE_SHAPE <j:ClipImage shape=&quot;{ClipImage.ELLIPSE_SHAPE}&quot; radius=&quot;46&quot; bradius=&quot;20&quot; x=&quot;50&quot; y=&quot;50&quot; units=&quot;%&quot;/>  INSET_SHAPE <j:ClipImage shape=&quot;{ClipImage.INSET_SHAPE}&quot; inset=&quot;[5, 20, 15, 10]&quot; rounds=&quot;[5, 20, 0, 10]&quot;  units=&quot;%&quot;/>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.list.HorizontalListScroll",
  "description": "The HorizontalListScroll bead is a specialty bead that can be used with Jewel List control and gives horizontal scroll to the list",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.list.ListAlternateRowColor",
  "description": "The ListAlternateRowColor bead is a specialty bead that can be used with Jewel List control to alternate the background color of every row with two colors  Note: This bead is temporal due to a bug in the css compiler that prevent add 'nth-child' rules",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.slider.ISliderView",
  "description": "The ISliderView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.jewel.HSlider control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.spinner.ISpinnerView",
  "description": "The ISpinnerView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.jewel.Spinner control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.tabbar.AssignTabContent",
  "description": "The AssignTabContent bead class is a specialty bead that can be used with a TabBar control to assign a TabBarContent to the &quot;content&quot; property and bind both components to work together.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.table.TableAlternateRowColor",
  "description": "The TableAlternateRowColor bead is a specialty bead that can be used with Jewel Table control to alternate the background color of every row with two colors  Note: This bead is temporal due to a bug in the css compiler that prevent add 'nth-child' rules",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.LowerCase",
  "description": "The LowerCase class is a specialty bead that can be used with any Jewel TextInputBase control. The bead makes all text change to lower case Note: if you only need text to look lower case but wants the text remain unchanged you can use CSS text-transform: lowercase",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.MaxNumberCharacters",
  "description": "The MaxNumberCharacters class is a specialty bead that can be used with any TextInput control. The bead set the maximun number of characters the text input can hold.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.PasswordInput",
  "description": "The PasswordInput class is a specialty bead that can be used with any TextInput control. The bead secures the text input area by masking the input as it is typed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.Restrict",
  "description": "The Restrict bead class is a specialty bead that can be used with any Jewel TextInputBase control. The bead uses a reg exp pattern to validate input from user. A text property allows to configure error text.  pattern examples: Numeric ony pattern = [^0-9] Letters only pattern = [^a-zA-Z] Numeric and letters only pattern = [^0-9a-zA-Z]",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.SearchFilterForList",
  "description": "The SearchFilterForList bead class is a specialty bead that can be used with a Jewel TextInput to filter options in other List component  Notice that the filtering is only visual, and the underlaying dataProvider is not filtered itself. To get a filtered view of the dataProvider you should use ArrayListView API.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.TextPrompt",
  "description": "The TextPrompt class is a specialty bead that can be used with any TextInput control. The bead places a string into the input field when there is no value associated with the text property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.TruncateText",
  "description": "The TruncateText class is a specialty bead that can be used with a Jewel TextInputBase or Label control. The bead truncate the text when no space is available using &quot;...&quot;",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.controls.textinput.UpperCase",
  "description": "The UpperCase class is a specialty bead that can be used with any Jewel TextInputBase control. The bead makes all text change to upper case Note: if you only need text to look upper case but wants the text remain unchanged you can use CSS text-transform: uppercase",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.ButtonBarItemRendererInitializer",
  "description": "The ButtonBarItemRendererInitializer class initializes item renderers in ButtonBar component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.CRUDTableItemRendererFactoryForCollectionView",
  "description": "This class creates itemRenderer instances from the data contained within an ICollectionView and generates the appropiate table structure with thead, tbody and table rows and cells to hold the columns and data in cells."},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListHoverOnlySelectableItemRendererBead",
  "description": "UnselectableElement bead prevents selection but can be hovered",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.ClassSelectorListSelectableItemRendererBead",
  "description": "UnselectableElement bead prevents from text selection of html element",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.DataContainerItemRendererInitializer",
  "description": "The DataContainerItemRendererInitializer class initializes item renderers in DataContainer classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.DataGridColumnListItemRendererInitializer",
  "description": "The DataGridColumnListItemRendererInitializer class initializes item renderers in list classes and use the base class of many other initializers based on lists",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.DropDownListItemRendererFactoryForCollectionView",
  "description": "This class creates itemRenderer instances from the data contained within an ICollectionView"},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.DropDownListItemRendererInitializer",
  "description": "The DropDownListItemRendererInitializer class initializes item renderers in DropDownList classes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.IAlignItemRenderer",
  "description": "The IAlignItemRenderer interface is the interface for for org.apache.royale.core.IItemRenderer that display text aligned.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.ITextItemRenderer",
  "description": "The ITextItemRenderer interface is the interface for for org.apache.royale.core.IItemRenderer that display text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.IndexedItemRendererInitializer",
  "description": "The IndexedItemRendererInitializer class initializes jewel item renderers adding paddings and other needs.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.ListItemRendererInitializer",
  "description": "The ListItemRendererInitializer class initializes item renderers in list classes and use the base class of many other initializers based on lists",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.NavigationItemRendererInitializer",
  "description": "The NavigationItemRendererInitializer class initializes item renderers in Navigation component.  By Default this works the same as ListItemRendererInitializer, but create a placeholder for it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.NoClassSelectorListSelectableItemRendererBead",
  "description": "NoClassSelectorListRuntimeSelectableItemRendererBead bead disables selection visuals",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.NoHoverClassSelectorListSelectableItemRendererBead",
  "description": "NoHoverClassSelectorListSelectableItemRendererBead bead disables hover visuals",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.RemoveAllDataGridItemRendererForArrayListData",
  "description": "Handles the removal of all itemRenderer in a DataGrid component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.RemoveAllItemRendererForArrayListData",
  "description": "Handles the removal of all itemRenderers. This works the same for List and Table components",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.TabBarItemRendererInitializer",
  "description": "The TabBarItemRendererInitializer class initializes item renderers in TabBar component.  By Default this works the same as ListItemRendererInitializer, but create a placeholder for it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.TableItemRendererFactoryForCollectionView",
  "description": "This class creates itemRenderer instances from the data contained within an ICollectionView and generates the appropiate table structure with thead, tbody and table rows and cells to hold the columns and data in cells."},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.TableItemRendererInitializer",
  "description": "The TableItemRendererInitializer class initializes item renderers in Table component.  By Default this works the same as ListItemRendererInitializer, but create a placeholder for it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.itemRenderers.VirtualDataItemRendererFactoryForCollectionView",
  "description": "The VirtualDataItemRendererFactoryForCollectionView class reads an array of data and creates an item renderer for every item in the array.  Other implementations of IDataProviderItemRendererMapper map different data structures or manage a virtual set of renderers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.BasicLayout",
  "description": "The BasicLayout class is a simple layout bead.  It takes the set of children and lays them out as specified by CSS properties like left, right, top and bottom.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.ButtonBarLayout",
  "description": "The Jewel ButtonBarLayout class bead sizes and positions the button elements that make up a org.apache.royale.jewel.ButtonBar.  This bead arranges the Buttons horizontally and makes them all the same width (widthType = NaN) unless the buttonWidths property has been set in which case the values stored in that array are used.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.DataGridColumnLayout",
  "description": "The Jewel ButtonBarLayout class bead sizes and positions the button elements that make up a org.apache.royale.jewel.ButtonBar.  This bead arranges the Buttons horizontally and makes them all the same width (widthType = NaN) unless the buttonWidths property has been set in which case the values stored in that array are used.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.DataGridLayout",
  "description": "DataGridLayout is a class that handles the size and positioning of the elements of a DataGrid. This includes the ButtonBar used for the column headers and the Lists that are the columns.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.FormItemLayout",
  "description": "The BasicLayout class is a simple layout bead.  It takes the set of children and lays them out as specified by CSS properties like left, right, top and bottom.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.FormLayout",
  "description": "The BasicLayout class is a simple layout bead.  It takes the set of children and lays them out as specified by CSS properties like left, right, top and bottom.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.GapConstants",
  "description": "Jewel GapConstants must to be synced with _layout.sass values"},
{ "name": "org.apache.royale.jewel.beads.layouts.GridCellLayout",
  "description": "The GridCellLayout class is the layout used for childrens in a Grid",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.GridLayout",
  "description": "The GridLayout class sets its childrens in a grid with cells filling all the available space. The cells can be separated by gap.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.HorizontalCenteredLayout",
  "description": "The HorizontalCenteredLayout class is a simple layout bead similar to HorizontalLayout, but it adds support for padding and gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.HorizontalFlowLayout",
  "description": "The HorizontalFlowLayout class is a simple layout bead similar to HorizontalLayout, but it adds support for padding and gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.HorizontalLayout",
  "description": "The HorizontalLayout class is a horizontal layout bead similar to SimpleHorizontalLayout, but add support for gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.IGap",
  "description": "Jewel IGap is the interface used by Jewel Layouts that implement gaps."},
{ "name": "org.apache.royale.jewel.beads.layouts.IVariableRowHeight",
  "description": "Jewel IVariableRowHeight is the interface used by Jewel Layouts that implement gaps."},
{ "name": "org.apache.royale.jewel.beads.layouts.LayoutChildren",
  "description": "The LayoutChildren class is an ILayoutChildren implememntation that indicates layout classes like StyledLayoutBase to layout childrens",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.NullLayout",
  "description": "The NullLayout class is a layout class used to override other layout classes This class should be temporal and make Royale be able to pass ClassReference (null) in CSS to not use the layout defined in parent class",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.Paddings",
  "description": "The Paddings class is a bead that adds padding to its host",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.ResponsiveResizeListener",
  "description": "The ResponsiveResizeListener class listens for browser resizing and send events when browser cross a responsive breakpoint",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.ResponsiveVisibility",
  "description": "The ResponsiveVisibility bead class is a specialty bead that can be used to show or hide a Jewel component depending on responsive rules.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.SimpleHorizontalLayout",
  "description": "The SimpleHorizontalLayout class is a simple layout bead that takes the set of children and lays them out horizontally in one row. In JS we make use of the CSS flex layout rules.  Note:SWF comes from basic layouts and are not tested",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.SimpleVerticalLayout",
  "description": "The SimpleVerticalLayout class is a simple layout bead that takes the set of children and lays them out horizontally in one row. In JS we make use of the CSS flex layout rules.  Note:SWF comes from basic layouts and are not tested",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.StyledLayoutBase",
  "description": "The StyledLayoutBase class is an extension of LayoutBase to define various common layout features for the rest of child classes",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.TableLayout",
  "description": "The TableLayout class is a simple layout bead.  It takes the set of children and lays them out as a Table.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.TileHorizontalLayout",
  "description": "The TileHorizontalLayout class bead sizes and positions the elements it manages into rows and columns. The size of each element is determined either by setting TileHorizontalLayout's columnWidth and rowHeight properties, or having the tile size determined by factoring the columnCount into the area assigned for the layout.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.TileVerticalLayout",
  "description": "The TileVerticalLayout class bead sizes and positions the elements it manages into rows and columns. The size of each element is determined either by setting TileVerticalLayout's columnWidth and rowHeight properties, or having the tile size determined by factoring the columnCount into the area assigned for the layout.  Notice that Vertical layout based on Flexbox has the following problems (take from : https://stackoverflow.com/questions/34480760/is-it-possible-for-flex-items-to-align-tightly-to-the-items-above-them) - It expands the container horizontally, not vertically (like the Pinterest layout). - It requires the container to have a fixed height, so the items know where to wrap. - As of this writing, it has a deficiency in all major browsers where the container doesn't expand to accommodate additional columns.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.VerticalCenteredLayout",
  "description": "The VerticalCenteredLayout class is a simple layout bead similar to HorizontalLayout, but it adds support for padding and gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.VerticalFlowLayout",
  "description": "The VerticalFlowLayout class is a simple layout bead similar to HorizontalLayout, but it adds support for padding and gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.VerticalLayout",
  "description": "The VerticalLayout class is a vertical layout bead similar to SimpleVerticalLayout, but add support for gap values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.ViewLayout",
  "description": "The ViewLayout class is a layout class used in Jewel View class",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.layouts.VirtualListVerticalLayout",
  "description": "The VirtualListVerticalLayout class is used for Jewel List that wants to use VirtualListView and Virtual ItemRenders.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.AlertModel",
  "description": "The AlertModel class bead implements the org.apache.royale.core.IAlertModel and holds the properties for an org.apache.royale.html.Alert such the buttons to use and message to display.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.ArrayListSelectionModel",
  "description": "The ArrayListSelectionModel class is a selection model for a dataProvider that is an ArrayList. It assumes that items can be fetched from the dataProvider using dataProvider.getItemAt(index).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.ComboBoxModel",
  "description": "The ComboBoxModel class bead extends org.apache.royale.jewel.beads.models.ArrayListSelectionModel and adds the text being displayed by the org.apache.royale.jewel.ComboBox's input field.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.ComboBoxPresentationModel",
  "description": "The ComboBoxPresentationModel class contains the data to present the popup list of the org.apache.royale.jewel.ComboBox along with the rowCount, the height of the rows or the align of column labels.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.DataGridPresentationModel",
  "description": "The DataGridPresentationModel class contains the data to label the columns of the org.apache.royale.jewel.DataGrid along with the height of the rows or the align of column labels.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.DataProviderModel",
  "description": "The DataProviderModel class is a model for a dataProvider and an optional labelField.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.DateChooserModel",
  "description": "The DateChooserModel is a bead class that manages the data for a DataChooser. This includes arrays of names for the months and days of the week as well the currently selected date.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.DropDownListModel",
  "description": "The DropDownListModel class defines the data associated with an org.apache.royale.jewel.DropDownListModel component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.FormItemModel",
  "description": "The FormItemModel bead class holds the values for a org.apache.royale.jewel.FormItem",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.IDropDownListModel",
  "description": "The IDropDownListModel interface is a marker interface",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.IJewelSelectionModel",
  "description": "The IJewelSelectionModel interface is a simple extension to core ISelectionModel",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.ImageModel",
  "description": "The ImageModel class bead defines the data associated with an org.apache.royale.jewel.Image component, namely the source of the image.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.ListPresentationModel",
  "description": "The ListPresentationModel holds values used by list controls for presenting their user interfaces.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.PopUpModel",
  "description": "The PopUpModel class bead defines the data associated with an org.apache.royale.jewel.PopUp component. This includes the duration - how long to show the view for.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.RangeModel",
  "description": "The RangeModel class bead defines a set of for a numeric range of values which includes a minimum, maximum, and current value.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.ScrollBarModel",
  "description": "The ScrollBarModel class bead extends the org.apache.royale.html.beads.models.RangeModel and adds page size and page step sizes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.SliderRangeModel",
  "description": "The SliderRangeModel class bead defines a set of for a numeric range of values which includes a minimum, maximum, and current value.  It do not calculate any values for slider - just holds it.",
"tags": [
{  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.SnackbarModel",
  "description": "The SnackbarModel class bead defines the data associated with an org.apache.royale.jewel.Snackbar component. This includes a message, the action and duration - how long to show the view for.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.TableArrayListSelectionModel",
  "description": "The ArrayListSelectionModel class is a selection model for a dataProvider that is an ArrayList. It assumes that items can be fetched from the dataProvider using dataProvider.getItemAt(index).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.TableModel",
  "description": ""},
{ "name": "org.apache.royale.jewel.beads.models.TextModel",
  "description": "The TextModel class is most basic data model for a component that displays text.  All Royale components that display text should also support HTML, although the Flash Player implementations may only support a subset of HTML.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.TitleBarModel",
  "description": "The TitleBarModel class bead holds the values for the org.apache.royale.html.TitleBar's properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.WizardModel",
  "description": "The WizardModel bead class holds the values for a org.apache.royale.jewel.Wizard",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.models.WizardStep",
  "description": "The WizardModel bead class holds the values for a org.apache.royale.html.Panel, such as its title.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.CheckBoxValidator",
  "description": "The CheckBoxValidator class is a specialty bead that can be used with Group control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.CreditCardValidator",
  "description": ""},
{ "name": "org.apache.royale.jewel.beads.validators.DateValidator",
  "description": "The DateValidator class is a specialty bead that can be used with Group control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.EmailValidator",
  "description": "The EmailValidator class is a specialty bead that can be used with TextInput control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.FormValidator",
  "description": "The FormValidator class is a specialty bead that can be used with form control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.RadioButtonValidator",
  "description": "The RadioButtonValidator class is a specialty bead that can be used with Group control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.SelectedItemNullValidator",
  "description": "The SelectedItemNullValidator class is a specialty bead that can be used with Group control to validate if a component (normaly list based) has a selectedItem with null value",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.StringValidator",
  "description": "The StringValidator class is a specialty bead that can be used with TextInput control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.validators.Validator",
  "description": "The Validator class is the base class for all validators. This class implements the ability for create/destroy error tips, user should set custom validateFunction or use sub class for validation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.AlertView",
  "description": "The AlertView class creates the visual elements of the org.apache.royale.jewel.Alert component. The job of the view bead is to put together the parts of the Alert, such as the title bar, message, and various buttons, within the space of the Alert component strand.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.ButtonBarView",
  "description": "The ButtonBarView class creates the visual elements of the org.apache.royale.jewel.ButtonBar component. A ButtonBar is a type of List and ButtonBarView extends the ListView bead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.ButtonView",
  "description": "The ButtonView class is the default view for the org.apache.royale.jewel.Button class. It allows the look of the button to be expressed in CSS via the background-image style and displays a text label.  This view does not support right-to-left text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.CheckBoxView",
  "description": "The CheckBoxView class is the default view for SWF platform in the org.apache.royale.jewel.CheckBox class. It displays a simple checkbox with an 'x' if checked, and a label on the right.  There are no styles or properties to configure the look of the 'x' or the position of the label relative to the checkbox as there are no equivalents in the standard HTML checkbox.  A more complex CheckBox could implement more view configuration.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.ComboBoxPopUpView",
  "description": "The ComboBoxPopUpView class is a view bead for the ComboBoxPopUp.  This class creates a list that will be pop up when the combo box needs to show the associated list",
"tags": [
{  "tagName": "viewbead",
       "values": ["", ""]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.ComboBoxView",
  "description": "The ComboBoxView class creates the visual elements of the org.apache.royale.jewel.ComboBox component. The job of the view bead is to put together the parts of the ComboBox such as the TextInput control and org.apache.royale.jewel.Button to trigger the pop-up.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.DataGridView",
  "description": "The DataGridView class is the visual bead for the org.apache.royale.jewel.DataGrid. This class constructs the items that make the DataGrid: Lists for each column and a org.apache.royale.jewel.ButtonBar for the column headers.  Columns without specific columnWidths gets 1/n of the maximun space available where n is the number of columns.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.DateChooserView",
  "description": "The DateChooserView class is a view bead for the DateChooser.  This class creates the elements for the DateChooser: the buttons to move between months, the labels for the days of the week, and the buttons for each day of the month.",
"tags": [
{  "tagName": "viewbead",
       "values": ["", ""]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.DateFieldView",
  "description": "The DateFieldView class is a bead for DateField that creates the input and button controls. This class also handles the pop-up mechanics.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.DropDownListView",
  "description": "The DropDownListView class creates the visual elements of the org.apache.royale.jewel.DropDownList component. The job of the view bead is to put together the parts of the DropDownList such as the Select",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.FormHeadingView",
  "description": "The FormHeadingView class creates the visual elements of the org.apache.royale.jewel.FormHeading component. A FormHeading has two org.apache.royale.jewel.Labels.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.FormItemView",
  "description": "The FormItemView class creates the visual elements of the org.apache.royale.jewel.FormItem component. A FormItem has two org.apache.royale.jewel.Label (one for text and other to show requeriment), and content.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.IScrollToIndexView",
  "description": "The IListView interface provides the protocol for any bead that creates the visual parts for a org.apache.royale.jewel.List control.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.ImageView",
  "description": "The ImageView class creates the visual elements of the org.apache.royale.jewel.Image component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.ListView",
  "description": "",
"tags": [
{  "tagName": "param",
       "values": ["index", "index"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.NumericStepperView",
  "description": "The NumericStepperView class creates the visual elements of the org.apache.royale.jewel.NumericStepper component. A NumberStepper consists of a org.apache.royale.jewel.TextInput component to display the value and a org.apache.royale.jewel.Spinner to change the value.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.PopUpView",
  "description": "The PopUpView class is a bead for PopUp that creates the dialog that holds the real component. This class also handles the pop-up mechanics.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.RadioButtonView",
  "description": "The RadioButtonView class creates the visual elements of the org.apache.royale.jewel.RadioButton for the SWF platform component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.SliderThumbView",
  "description": "The SliderThumbView class creates the draggable input element for the org.apache.royale.jewel.HSlider component for the SWF platform.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.SliderTrackView",
  "description": "The SliderTrackView class creates the track area for the org.apache.royale.jewel.HSlider component for the SWF platform.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.SliderView",
  "description": "The SliderView class creates the visual elements of the org.apache.royale.jewel.HSlider component. The HSlider has a track and a thumb control which are also created with view beads.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.SnackbarView",
  "description": "The SnackbarView class creates the visual elements of the org.apache.royale.jewel.Snackbar component. The job of the view bead is to put together the parts of the Snackbar such as the message text and action clicked dispatches action event on behalf of the Snackbar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.SpinnerView",
  "description": "The SpinnerView class creates the visual elements of the org.apache.royale.jewel.Spinner component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.TabBarView",
  "description": "The TabBarView class creates the visual elements of the org.apache.royale.jewel.TabBar component.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.TableView",
  "description": "The TableView class creates the visual elements of the org.apache.royale.jewel.Table component.  It creates a TBody, and defines THead and TFoot optional parts to be created by a mapper",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.TextFieldView",
  "description": "The TextFieldView class is the default view for the org.apache.royale.jewel.Label class in the SWF platform. It displays text using a TextInput, so there is no right-to-left text support in this view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.VirtualComboBoxPopUpView",
  "description": "The VirtualComboBoxPopUpView class is a view bead for the VirtualComboBoxPopUp.  This class creates a VirtualList that will be pop up when the combo box needs to show the associated list",
"tags": [
{  "tagName": "viewbead",
       "values": ["", ""]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.VirtualListView",
  "description": "The VirtualListView class creates the visual elements of the org.apache.royale.jewel.List component in a way that can be recicled to reuse as the user scrolls the list getting performance improvements when dataproviders with lots of items are passed to the component. In This way Royale just create a few item renderers visible for the user, instead of one renderer for each item in the data provider.  A List consists of the area to display the data (in the dataGroup), any scrollbars, and so forth.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.beads.views.WizardView",
  "description": "The Wizard class creates the visual elements of the org.apache.royale.jewel.Wizard component. A Wizard has two org.apache.royale.jewel.Button, and content. The buttons navigate pages to previous or next.",
"tags": [
{  "tagName": "viewbead",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.debugger.ResponsiveSizeMonitor",
  "description": "The ResponsiveDrawer class is a bead to use with Jewel Drawer to make it fixed or float depending on the screen size.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.events.WizardEvent",
  "description": "Programmatic (not user/UI) based wizard navigation events."},
{ "name": "org.apache.royale.jewel.itemRenderers.AlternateRowColorTableItemRendererInitializer",
  "description": "Note: This is just an experiment. Better use TableAlternateRowColor  The TableItemRendererInitializer class initializes item renderers in Table component.  By Default this works the same as ListItemRendererInitializer, but create a placeholder for it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.10.0", "Royale 0.10.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.ButtonBarItemRenderer",
  "description": "The ButtonBarItemRenderer class extends Button and turns it into an itemRenderer suitable for use in most DataContainer/List/DataGrid applications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.CollapsibleNavigationSectionRenderer",
  "description": "The NavigationLinkItemRenderer defines the basic Item Renderer for a Jewel Navigation List Component. It handles Objects with &quot;label&quot; and &quot;href&quot; data. Extend this (you can do it in MXML) to support more data like for example: icon data.  Note: This render creates a sub list, so we add in this class a concrete layout (VerticalLayout). So don't try to change layout (adding via CSS, mxml beads, etc...). For layout the renderer parts, use a container (i.e: HGroup, VGroup,...)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.DataGridItemRenderer",
  "description": "The DataGridItemRenderer defines the basic Item Renderer for a Jewel DataGrid Component. For now is just a ListItemRenderer that populates some values from Jewel DataGridColumn.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.DatagridHeaderRenderer",
  "description": "The DatagridHeaderRenderer class extends ButtonBarItemRenderer and turns it into an itemRenderer suitable for use in most DataContainer/List/DataGrid applications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.DateItemRenderer",
  "description": "The DateItemRenderer class renders date values for the DateChooser.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.DropDownListItemRenderer",
  "description": "The DropDownListItemRenderer class creates a DropDownList menu item",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.IconButtonBarItemRenderer",
  "description": "The IconButtonBarItemRenderer class extends IconButton and turns it into an itemRenderer suitable for use in most DataContainer/List/DataGrid applications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.ListItemRenderer",
  "description": "The ListItemRenderer defines the basic Item Renderer for a Jewel List Component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.NavigationLinkItemRenderer",
  "description": "The NavigationLinkItemRenderer defines the basic Item Renderer for a Jewel Navigation List Component. It handles Objects with &quot;label&quot; and &quot;href&quot; data. Extend this (you can do it in MXML) to support more data like for example: icon data.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.StringItemRenderer",
  "description": "The StringItemRenderer class displays data in string form using the data's toString() function.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.TabBarButtonInidicatorRestrictedToContentItemRenderer",
  "description": "The TabBarButtonInidicatorRestrictedToContentItemRenderer is a TabBarButtonItemRenderer that restrict indicator to content",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.TabBarButtonItemRenderer",
  "description": "The TabBarButtonItemRenderer defines the basic Item Renderer for a Jewel TabBar List Component. It handles Objects with &quot;label&quot; and &quot;href&quot; data. Extend this (you can do it in MXML) to support more data like for example: icon data.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.TableItemRenderer",
  "description": "The TableItemRenderer class displays data in string form using the data's toString() function.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.itemRenderers.ToggleButtonBarItemRenderer",
  "description": "The ButtonBarItemRenderer class extends Button and turns it into an itemRenderer suitable for use in most DataContainer/List/DataGrid applications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.IInputButton",
  "description": "IInputButton is the interface that implements controls like CheckBox and RadioButton that owns a button input part",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.INavigationRenderer",
  "description": "INavigationRenderer is the interface that all item renderers used with Navigation List component must implement. Jewel supports a basic implementation with NavigationLinkItemRenderer",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.jewel.itemRenderers.NavigationLinkItemRenderer", "org.apache.royale.jewel.itemRenderers.NavigationLinkItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.ISelectableContent",
  "description": "ISelectableContent is the interface a container implements to mark as the current selected content",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.NoViewport",
  "description": "NoViewport is set when we need to avoid default Viewport in Container",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.ResponsiveSizes",
  "description": "The ResponsiveSizes declares consants that are related to SASS variables created to provide media queries for different screen sizes  by default:  // DEVICE DIMENSIONS $phone: 0px $tablet: 768px $desktop: 992px $widescreen: 1200px",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.Viewport",
  "description": "A Viewport is the area of a Container set aside for displaying content. If the content exceeds the visible area of the viewport it will be clipped or hidden.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.bar.BarRow",
  "description": "The BarRow class is a container to organize content in a row. Is used with Bar, TopAppBar or CardHeader and CardActions. It represent a row. More than one row can be suported.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.bar.BarSection",
  "description": "The BarSection class is a container component for items in an Bar or TopAppBar row.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.bar.BarTitle",
  "description": "The BarTitle class is the title to use with a Bar or TopAppBar. The later use to be the application title",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.button.SelectableButtonBase",
  "description": "The SelectableButtonBase is a support class (not for direct use) and implements the ISelectable interface to be override in subclasses. Jewel CheckBox and RadioButtons are direct extensions of this class.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.button.SimpleButton",
  "description": "The Jewel SimpleButton class is a simple button.  Use Jewel Button for buttons that should show text.  SimpleButton is a commonly used rectangular button. It looks like it can be pressed and allow users to take actions, and make choices, with a single click or tap. It typically use event listeners to perform an action when the user interact with the control. When a user clicks the mouse or tap with the finger this control it dispatches a click event.  This is the lightest weight button used for non-text buttons like the arrow buttons in a Scrollbar or NumericStepper.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.card.CardActions",
  "description": "The CardActions class is a footer for Cards where actions (i.e: buttons, icons) use to be located.  Actions are placed horizontally by default, and can be separated using BarSection for left, middle and right sections.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.card.CardExpandedContent",
  "description": "The CardExpandedContent class is a container that expand inner content removing paddings. This could be convinient for content that needs to avoid gaps with the surronding container.  For example a Jewel TabBar or Navigation that needs to fill all the available space.  Content are placed vertically by default.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.card.CardHeader",
  "description": "The CardHeader class is a header used in Jewel Card component where title, icons or actions (i.e: buttons, icons) can be located.  Actions are placed horizontally by default, and can be separated using BarSection for left, middle and right sections.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.card.CardPrimaryContent",
  "description": "The CardPrimaryContent class is a the main content container for Cards. Adding this container means we want a more complex card structure.  Content are placed vertically by default.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.card.CardTitle",
  "description": "The CardTitle class is a header title for Cards that can be used inside CardHeader or direclty inside Card.  It adds some styling to labels used as titles for Cards.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.checkbox.CheckBoxIcon",
  "description": ""},
{ "name": "org.apache.royale.jewel.supportClasses.combobox.ComboBoxPopUp",
  "description": "The ComboBoxPopUp class is the popup that holds the List used internally by ComboBox as the dropdown/popup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.combobox.IComboBoxPresentationModel",
  "description": "The Jewel IComboBoxPresentationModel interface holds key values for the display a Jewel ComboBox.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.combobox.VirtualComboBoxPopUp",
  "description": "The VirtualComboBoxPopUp class is the popup that holds the VirtualList used internally by VirtualComboBox as the dropdown/popup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.container.AlignmentItemsContainer",
  "description": "The Jewel AlignmentItemsGroup class is the base class for groups that unlike normal Jewel Group class that positions elements in a the canvas wants to follow a concret layout algorithm like Horizontal or Vertical layouts. that can make its items to distribute in different ways normally HGroup and VGroup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.container.AlignmentItemsContainerWithGap",
  "description": "The Jewel AlignmentItemsGroup class is the base class for groups that unlike normal Jewel Group class that positions elements in a the canvas wants to follow a concret layout algorithm like Horizontal or Vertical layouts. that can make its items to distribute in different ways normally HGroup and VGroup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.container.ContainerBase",
  "description": "The ContainerBase class is the base class for most containers in Royale.  It is usable as the root tag of MXML documents and UI controls and containers are added to it.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.container.DataContainerBase",
  "description": "The DataContainerBase class is the base class for components that that have generated content, like lists.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.container.StyledContainerContentArea",
  "description": "The ContainerContentArea class implements the contentView for a Container on the SWF platform.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.DataGridButtonBar",
  "description": "The DataGridButtonBar class extends ButtonBar and provides a class for styling the header region of the DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.DataGridColumn",
  "description": "The DataGridColumn class is the collection of properties that describe a column of the org.apache.royale.jewel.DataGrid: which renderer to use for each cell in the column, the width of the column, the label for the column, and the name of the field in the data containing the value to display in the column.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.DataGridColumnList",
  "description": "The DataGridColumnList class is the List class used internally by DataGrid for each column.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.DataGridColumnWidth",
  "description": "internal use only",
"tags": [
{  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.DataGridListArea",
  "description": ""},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.DataGridWidthDenominator",
  "description": "internal use only",
"tags": [
{  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.IDataGridColumn",
  "description": "Jewel IDataGridColumn is the interface used by Jewel DataGridColumn in the Jewel DataGrid.  Define which renderer to use for each cell in the column, and other optional data like the width, the label (used in header), and the name of the field in the data containing the value to display in the column (for the simplest ItemRenderer)."},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.IDataGridColumnList",
  "description": "The Jewel IDataGridColumnList interface is a marker interface for Jewel DataGrid Column Lists",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datagrid.IDataGridPresentationModel",
  "description": "The Jewel IDataGridPresentationModel interface holds key values for the display a Jewel DataGrid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.datechooser.DateChooserTable",
  "description": ""},
{ "name": "org.apache.royale.jewel.supportClasses.drawer.DrawerBase",
  "description": "The DrawerBase class is the base class for a container component used for navigation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.drawer.DrawerContent",
  "description": "The DrawerContent class is a container component used in a Drawer to hold content like navigation, icons, or text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.drawer.DrawerFooter",
  "description": "The DrawerFooter class is a BarRow component to use as the last content in a Drawer.  The styling of this component is similar to the FooterBar.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.drawer.DrawerHeader",
  "description": "The DrawerHeader class is a container component to hold drawer header content, like a title or an image icon logo",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.dropdownlist.DropDownListList",
  "description": "The DropDownListList class is the List class used internally by DropDownList as the dropdown/popup.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.formitem.FormItemLayoutProxy",
  "description": "The FormItemLayoutProxy class is used by Wizard in order for layouts to operate on the Wizard itself. If Wizard were being used, its numElements, getElementAt, etc. functions would actually redirect to its Container content. In order for a layout to work on the Wizard directly (its PreviousButton, NextButton and Container), this proxy is used which will invoke the Wizard's $numElements, $getElementAt, etc functions.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.group.AlignmentItemsGroup",
  "description": "The Jewel AlignmentItemsGroup class is the base class for groups that distribute items along one of its axis. Used extensions are normally HGroup and VGroup.  Unlike normal Jewel Group class that positions elements in a canvas using x and y this class and its extensions use to follow a concret layout algorithm (like Horizontal or Vertical layouts) and need to distribute its items in different ways.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.group.AlignmentItemsGroupWithGap",
  "description": "The Jewel AlignmentItemsGroupWithGap class is the base class for groups that need to distribute its items in different ways and support gaps.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.group.GroupBase",
  "description": "The Jewel GroupBase class is the base class for most simple containers in Royale. It is usable as the root tag of MXML documents and UI controls and containers are added to it.  Unlike Basic version that inherits from UIBase, this class inherits from StyledUIBase that's the main class for Jewel components and containers",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.list.DataGroup",
  "description": "The DataGroup class is the IItemRendererOwnerView used internally by org.apache.royale.jewel.List class.  Unlike Flex, this component is only used by List in the SWF platform. In JS you should use a Jewel DataContainer",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.list.IListPresentationModel",
  "description": "The Jewel IListPresentationModel interface holds key values for the display of lists.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.popup.PopUpContent",
  "description": "The PopUpContent class is a component",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.radiobutton.RadioButtonIcon",
  "description": "The RadioButton class is a component that displays a selectable Button. RadioButtons are typically used in groups, identified by the groupName property. RadioButton use the following beads:  org.apache.royale.core.IBeadModel: the data model, which includes the groupName. org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the RadioButton..",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.scrollbar.HScrollBar",
  "description": "The ScrollBar class represents either a vertical or horizontal control that allows the user to quickly scan through a component that does not wholly fit within its container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.scrollbar.ScrollBar",
  "description": "The ScrollBar class represents either a vertical or horizontal control that allows the user to quickly scan through a component that does not wholly fit within its container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.scrollbar.ScrollingViewport",
  "description": ""},
{ "name": "org.apache.royale.jewel.supportClasses.scrollbar.VScrollBar",
  "description": "The ScrollBar class represents either a vertical or horizontal control that allows the user to quickly scan through a component that does not wholly fit within its container.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.ITableColumn",
  "description": "Jewel ITableColumn is the interface used by Jewel TableColumn in the Jewel Table.  Define which renderer to use for each cell in the table, and other optional data like the width, the label (used in header), and the name of the field in the data containing the value to display in the column (for the simplest ItemRenderer)."},
{ "name": "org.apache.royale.jewel.supportClasses.table.TBody",
  "description": "The TBody class is a building block of Jewel SimpleTable and Table components, is used in TableView and represents an HTML <tbody> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.TBodyContentArea",
  "description": "The TBodyContentArea class is a building block of Jewel SimpleTable and Table components, is used in TableView and represents an HTML <tbody> element.  The body part in a table use to be the &quot;data&quot; part and can be scrollable for this reason is implemented as a ContainerContentArea and provided via CSS as the IContentView.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.TFoot",
  "description": "The TFoot class is a building block of Jewel SimpleTable and Table components, is used in TableView and represents an HTML <tfoot> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.THead",
  "description": "The THead class is a building block of Jewel SimpleTable and Table components, is used in TableView and represents an HTML <thead> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.TableCell",
  "description": "The TableCell class defines a table data cell in the Table component. This element may have nearly any type of Royale component as children.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.TableColumn",
  "description": "TableColumn define a column for a Jewel Table component with special table properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.TableHeaderCell",
  "description": "The TableHeaderCell class defines a table header cell in the Table component.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.table.TableRow",
  "description": "The TableRow class is a building block of Jewel SimpleTable and Table components, is used in TableView and represents an HTML <tr> element",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.textinput.ITextInput",
  "description": "ITextInput is the interface for all text input jewel classes. It's used mainly in org.apache.royale.jewel.supportClasses.textinput.TextInputBase",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 9.4", "Royale 9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.textinput.TextInputBase",
  "description": "The TextInputBase class is the base class for TextInput and TextArea Jewel controls. Implements text and html properties and change event.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.tooltip.ErrorTipLabel",
  "description": "The ErrorTipLabel class is the control used for ToolTip bead to popup an error text over a control",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "toplevel",
       "values": []},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.tooltip.ToolTipLabel",
  "description": "The ToolTipLabel class is the control used for ToolTip bead to popup a text over a control",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.validators.CreditCardValidatorCardType",
  "description": "The CreditCardValidatorCardType class defines value constants for specifying the type of credit card to validate. These values are used in the <code>CreditCardValidator.cardType</code> property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.view.ViewBase",
  "description": "The Jewel ViewBase class is the base class for most views in a Royale Jewel application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jewel.supportClasses.wizard.WizardLayoutProxy",
  "description": "The WizardLayoutProxy class is used by Wizard in order for layouts to operate on the Wizard itself. If Wizard were being used, its numElements, getElementAt, etc. functions would actually redirect to its Container content. In order for a layout to work on the Wizard directly (its PreviousButton, NextButton and Container), this proxy is used which will invoke the Wizard's $numElements, $getElementAt, etc functions.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.jquery.Application",
  "description": ""},
{ "name": "org.apache.royale.jquery.CheckBox",
  "description": ""},
{ "name": "org.apache.royale.jquery.RadioButton",
  "description": ""},
{ "name": "org.apache.royale.jquery.TextButton",
  "description": ""},
{ "name": "org.apache.royale.jquery.ToggleTextButton",
  "description": "The ToggleButton class is a TextButton that supports a selected property.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.maps.google.GoogleMap",
  "description": "The Map class displays a Google Map centered on lat/lng coordinates. The Map uses the following bead type:  org.apache.royale.maps.beads.MapView: Uses HTMLLoader to display the map.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignoreimport",
       "values": ["goog.bind", "google.maps.event", "goog.bind", "google.maps.event"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.maps.google.beads.GoogleMapView",
  "description": "The AS3 version of GoogleMapView is geared toward its use with HTMLLoader for AIR."},
{ "name": "org.apache.royale.maps.google.models.MapModel",
  "description": "The data model for the Map class, this holds the maps current center location, its current zoom level, the last marker selected, and any search results.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.DatePicker",
  "description": "The DatePicker presents a control for picking a date.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.IViewManager",
  "description": "The IViewManager interface is implemented by classes that manage or control IViews.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.IViewManagerView",
  "description": "The IViewManagerView interface is implemented by any class that can be managed by an IViewManager.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.ManagerBase",
  "description": "The ManagerBase is a base class for mobile display managers such as StackedViewManager and TabbedViewManager. This class encapsulates the features common to all view managers.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.StackedViewManager",
  "description": "The StackedViewManager displays a single View at a time from a collection of Views where views[0] is at the bottom and views[n-1] is at the top and displayed.  The StackedViewManager has an optional navigation bar at the top and an optional tool bar at the bottom. The views are displayed within the StackedViewManager's content area.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.TabbedViewManager",
  "description": "The TabbedViewManager displays a set of views, only one of which is active at a time. The other views are reachable via a set of tab buttons at the bottom of the view manager's space.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.TitleView",
  "description": "The TitleView class represents a view in a mobile app that has a title and is typically used in a ViewManager."},
{ "name": "org.apache.royale.mobile.ToggleSwitch",
  "description": "The ToggleSwitch is a UI control that displays on/off or yes/no states.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.ViewManagerBase",
  "description": "Base class for mobile navigation controls.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.DatePickerView",
  "description": "The DatePickerView bead creates the visual elements of the DatePicker. This is a set of three RangeSteppers (one each for month, day, and year).",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.DeviceSizeBead",
  "description": "The DeviceSizeBead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.MobileWebBrowserView",
  "description": "The MobileWebBrowserView creates an instance of StageWebView to load web pages into a mobile application. This class is available only for AS3 compiled mode. Note that StageWebView is attached directly to the stage and may obscure other components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.StackedViewManagerView",
  "description": "The StackedViewManagerView creates the visual elements of the StackedViewManager. This includes a NavigationBar, ToolBar, and contentArea.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.TabbedViewManagerView",
  "description": "The TabbedViewManagerView constructs the visual elements of the TabbedViewManager. The elements may be a navigation bar, a tab bar, and the contentArea.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.ToggleSwitchView",
  "description": "The ToggleSwitchView creates the element used to display the ToggleSwitch interface.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.TopTabbedViewManagerView",
  "description": "The TopTabbedViewManagerView constructs the visual elements of the TabbedViewManager. It always contains a tab bar and it's located at the top. It may contain a navigation bar at the bottom.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.ViewManagerViewBase",
  "description": "The ViewManagerViewBase creates the visual elements of the StackedViewManager. This includes a NavigationBar, ToolBar, and contentArea.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.beads.controllers.ToggleSwitchMouseController",
  "description": "The ToggleSwitchMouseController bead handles mouse events on the ToggleSwitch, allowing the user to use the mouse to change the state of the ToggleSwitch.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.chrome.NavigationBar",
  "description": "The NavigationBar class is part of the mobile view manager's chrome. When present, it provides a place for content at the top of the view, above the contentArea.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.chrome.TabBar",
  "description": "The TabBar class displays a set of buttons that can be used to switch between navigation panels.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.chrome.ToolBar",
  "description": "The ToolBar class provides a space below the contentArea of a view manager which can be used to house controls for the view.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mobile.models.ViewManagerModel",
  "description": "The ViewManagerModel houses properties and values common to the components which make up view managers. These properties include the title, which view is currently active and selected.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.BinaryUploader",
  "description": "The BinaryUploader class is a class designed to upload binary data over HTTP.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.CompressedRemoteObject",
  "description": "A RemoteObject that performs automatic serialization/deserialization of results.  It deserializes the compressed ByteArray in order to optimize the transfer time. TOOD improve to serialize the sending."},
{ "name": "org.apache.royale.net.HTTPConstants",
  "description": ""},
{ "name": "org.apache.royale.net.HTTPHeader",
  "description": "The data class for HTTP headers in HTTP server communications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.HTTPService",
  "description": "The HTTPService class is a class designed to transfer text over HTTP.  Use BinaryUploader for transferring non-text.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.net.BinaryUploader.", "org.apache.royale.net.BinaryUploader."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.HTTPServiceBase",
  "description": "The data class for HTTP headers in HTTP server communications.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.HTTPUtils",
  "description": ""},
{ "name": "org.apache.royale.net.RemoteObject",
  "description": "This is the RemoteObject that has a similar behaviour that Flex RemoteObject and can be use with BlazeDS, LCDS or CF backends"},
{ "name": "org.apache.royale.net.Responder",
  "description": ""},
{ "name": "org.apache.royale.net.SimpleRemoteObject",
  "description": "This is the most simple implementation os a RemoteObject it can be use with simple backends like AMFPHP. To use with BlazeDS better us RemoteObject since it manages clientId and small messages"},
{ "name": "org.apache.royale.net.URLBinaryLoader",
  "description": "The URLBinaryLoader class is a relatively low-level class designed to get binary data over HTTP the intent is to create similar classes for text and URL vars.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7.0", "Royale 0.7.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.URLBinaryUploader",
  "description": "The URLBinaryUploader class subclasses URLBinaryLoader to offer upload progress events.  This class is only used for JS implementations because Flash upload events need to be handled differently. In Flash, URLLoader does not dispatch upload events. It only dispatches download events. To get upload events in Flash, you need to use File/FileReference.upload() and attach event listeners to that.  Care should be taken when using this class because it attaches a progress listener to the xhr.upload object. Doing so causes browsers to send OPTIONS requests. This will return an unauthorized response from servers not configured to allow CORS OPTIONS requests. See this S.O. post for details. https://stackoverflow.com/a/17057853",
"tags": [
{  "tagName": "see",
       "values": ["URLBinaryLoader", "URLBinaryLoader"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.URLLoader",
  "description": "The URLBinaryLoader class is a relatively low-level class designed to get binary data over HTTP the intent is to create similar classes for text and URL vars. If you need to use Binary requests (including POST), use URLBinaryLoader.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7.0", "Royale 0.7.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.URLLoaderBase",
  "description": "The URLLoader class is a base class for the specific flavors of loaders such as binary, text or variables",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7.0", "Royale 0.7.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.URLRequest",
  "description": "The URLRequest class captures all of the information in a single HTTP request. URLRequest objects are passed to the load() methods of the URLStream, and URLLoader classes, and to other loading operations, to initiate URL downloads.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7.0", "Royale 0.7.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.URLRequestHeader",
  "description": "A URLRequestHeader object represents an HTTP request header.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7.0", "Royale 0.7.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.URLStream",
  "description": "The URLStream class deals with the underlying platform-specifc architecture for HTTP Requests It makes the request and stores the response, dispatching events.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.URLUploadStream",
  "description": "The URLUploadStream extends the URLStream class to support upload progress events.  This class is only used for JS implementations because Flash upload events need to be handled differently. In Flash, URLLoader does not dispatch upload events. It only dispatches download events. To get upload events in Flash, you need to use File/FileReference.upload() and attach event listeners to that.  Care should be taken when using this class because it attaches a progress listener to the xhr.upload object. Doing so causes browsers to send OPTIONS requests. This will return an unauthorized response from servers not configured to allow CORS OPTIONS requests. See this S.O. post for details. https://stackoverflow.com/a/17057853",
"tags": [
{  "tagName": "see",
       "values": ["URLStream", "URLStream"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.0", "Royale 0.9.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.beads.CORSCredentialsBead",
  "description": ""},
{ "name": "org.apache.royale.net.beads.URLLoaderCORSCredentialsBead",
  "description": ""},
{ "name": "org.apache.royale.net.events.FaultEvent",
  "description": "FaultEvents are returned from RPC requests to a remote endpoint when the server responds with a fault.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.events.ResultEvent",
  "description": "ResultEvents are returned from RPC requests to a remote endpoint when the server response is ready.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.remoting.Operation",
  "description": "used by RemoteObject implementation"},
{ "name": "org.apache.royale.net.remoting.SimpleOperation",
  "description": "used by SimpleRemoteObject implementation"},
{ "name": "org.apache.royale.net.remoting.amf.AMFBinaryData",
  "description": "A version of BinaryData specific to AMF.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.amf.AMFNetConnection",
  "description": "Send data via AMF to a server.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.remoting.messages.AbstractMessage",
  "description": "Abstract base class for all messages. Messages have two customizable sections; headers and body. The <code>headers</code> property provides access to specialized meta information for a specific message instance. The <code>headers</code> property is an associative array with the specific header name as the key. <p> The body of a message contains the instance specific data that needs to be delivered and processed by the remote destination. The <code>body</code> is an object and is the payload for a message. </p>  Note: readExternal and writeExternal methods compile but are not tested and maybe not work but is an initial work",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.remoting.messages.AcknowledgeMessage",
  "description": "An AcknowledgeMessage acknowledges the receipt of a message that was sent previously. Every message sent within the messaging system must receive an acknowledgement.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.remoting.messages.AcknowledgeMessageExt",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.ActionMessage",
  "description": "The CommandMessage class provides a mechanism for sending commands to the server infrastructure, such as commands related to publish/subscribe messaging scenarios, ping operations, and cluster operations.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.AsyncMessage",
  "description": "AsyncMessage is the base class for all asynchronous messages. Note: readExternal and writeExternal methods compile but are not tested and maybe not work but is an initial work",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.remoting.messages.AsyncMessageExt",
  "description": "A special serialization wrapper for AsyncMessages. This wrapper is used to enable the externalizable form of an AsyncMessage for serialization. The wrapper must be applied just before the message is serialized as it does not proxy any information to the wrapped message.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.CommandMessage",
  "description": "The CommandMessage class provides a mechanism for sending commands to the server infrastructure, such as commands related to publish/subscribe messaging scenarios, ping operations, and cluster operations.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.CommandMessageExt",
  "description": "A special serialization wrapper for CommandMessage. This wrapper is used to enable the externalizable form of an CommandMessage for serialization. The wrapper must be applied just before the message is serialized as it does not proxy any information to the wrapped message.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.ErrorMessage",
  "description": "ErrorMessages are sometimes returned from RPC requests to a remote endpoint.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.IMessage",
  "description": "This interface defines the contract for message objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.remoting.messages.ISmallMessage",
  "description": "A marker interface that is used to indicate that an IMessage has an alternative smaller form for serialization.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.remoting.messages.MessageBody",
  "description": "The MessageBody for an ActionMessage",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.MessageHeader",
  "description": "The MessageHeader for an ActionMessage",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.RemotingMessage",
  "description": "RemotingMessages are used to send RPC requests to a remote endpoint. These messages use the <code>operation</code> property to specify which method to call on the remote object. The <code>destination</code> property indicates what object/service should be used.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.net.remoting.messages.RoyaleClient",
  "description": "Singleton class that stores the global Id for this instance that is server assigned when the client makes its initial connection to the server.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["BlazeDS 4", "LCDS 3", "BlazeDS 4", "LCDS 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.net.utils.RPCUIDUtil",
  "description": "The RPCUIDUtil class is a copy of UIDUtil without some functions that cause dependency problems when RPC messages are put in a bootstrap loader.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.promises.enums.PromiseState",
  "description": ""},
{ "name": "org.apache.royale.promises.interfaces.IThenable",
  "description": ""},
{ "name": "org.apache.royale.promises.vo.Handler",
  "description": "The Handler class used with Promises.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.AccessorDefinition",
  "description": "The description of a Class or Interface accessor (get and/or set)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.CompilationData",
  "description": "Information about compiletime settings used when compiling the target class or instance",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.DefinitionBase",
  "description": "The base class for all definition types",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.DefinitionWithMetaData",
  "description": "The base class for definition types that can be decorated with metadata in actionscript source code",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.ExtraData",
  "description": "Information about extra reflection definitions not required in SWF",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.FunctionDefinition",
  "description": "The description of a Class or Interface",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.MemberDefinitionBase",
  "description": "The base class for definition types that can be decorated with metadata in actionscript source code",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.MetaDataArgDefinition",
  "description": "The description of a Class or Interface",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.MetaDataDefinition",
  "description": "The description of a MetaData tag attached to a class member or a class",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.MethodDefinition",
  "description": "The description of a method inside a class or interface",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.ParameterDefinition",
  "description": "The description of a Function parameter",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2S", "AIR 2.6", "Flash 10.2S", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.TypeDefinition",
  "description": "The description of a Class or Interface",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.VariableDefinition",
  "description": "The description of a Class or Interface variable",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.beads.ClassAliasBead",
  "description": "The ClassAliasBead class is the registers class aliases for serialization/deserialization. Place this bead in the strand of the Application. The compiler leaves information about class aliases on the Application's info object.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.beads.ExtraReflectionDataBead",
  "description": "The ExtraReflectionDataBead class the registers additional pseudo-types for javascript reflection support These include: Array, Number, String, int, uint, Boolean and all Vector.<> type variants. This bead should be used at the Application level, before any reflection support is needed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.beads.JSONReviver",
  "description": "The JSONReviver creates ActionScript classes when parsing JSON. Use the JSONReviver's parse function instead of calling JSON.parse(). This is a bead you place on the Application's strand, then call it from other code.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 0.0", "Royale 1.0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.beads.ReflectionCacheEnabledBead",
  "description": "An easy way to configure Royale Reflection classes to use caching. This can increase memory use, but will provide faster performance for any application that uses reflection in a central role. This bead should be used at the Application level, before any reflection support is needed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.reflection.utils.MemberTypes",
  "description": "This is purely a convenience class for use of the constants in the utility methods in this package which support bitwise selection of subsets of member types that they return it is: a) not reflectable in javascript output and b) using these constants does not create a dependency on the class itself in javascript output.",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "name": "org.apache.royale.routing.BrowserRouter",
  "description": "BrowserRouter is a bead which automatically handles browsing history. It could be attached to any strand, but typically it would be attached to Application or View Listen to stateChange events to handle changes to browsing history and use setState and renderState for modifying the history. The state of the router can be modified before committing the state changes. The difference between HashRouter and BrowserRouter is that HashRouter uses the location hash which is only the section from &quot;#&quot; and on. BrowserRouter uses path routes which are indistinguishable from normal urls. Both Router implementations can use a hash for scroll positioning beads.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.routing.ComponentRoute",
  "description": "ComponentRoutes are declared in RouteToComponent beads. This maps a base name of a route path to a component class."},
{ "name": "org.apache.royale.routing.EscapedFragmentBead",
  "description": "The EscapedFragmentBead class handles a special URL parameter that Google Search Crawlers use to verify search results.  This technique is deprecated so use of this bead should be obsolete by 2nd quarter 2018.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.routing.HashChangeNotifierBead",
  "description": "The HashChangeNotifierBead class allows you to respond to the hash changing on the url.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.routing.HashChangeNotifierBeadWithTitle",
  "description": "The HashChangeNotifierBead class allows you to respond to the hash changing on the url.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.routing.HashRouter",
  "description": "HashRouter is a bead which automatically handles browsing history. It could be attached to any strand, but typically it would be attached to Application or View Listen to stateChange events to handle changes to browsing history and use setState and renderState for modifying the history. The state of the router can be modified before committing the state changes. The difference between HashRouter and BrowserRouter is that HashRouter uses the location hash which is only the section from &quot;#&quot; and on. BrowserRouter uses path routes which are indistinguishable from normal urls. Both Router implementations can use a hash for scroll positioning beads.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.8", "Royale 0.9.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.routing.IPathRouteBead",
  "description": "Marker interface for a bead which parses the path part of path part of a route"},
{ "name": "org.apache.royale.routing.IRouter",
  "description": ""},
{ "name": "org.apache.royale.routing.LinkInterceptor",
  "description": ""},
{ "name": "org.apache.royale.routing.ParameterRoute",
  "description": "ParameterRoutes are declared in (or added to) RouteToParamter beads. If the key exists in thge parameters, the callback will be called with the value as the argument to the function."},
{ "name": "org.apache.royale.routing.PathRouteBead",
  "description": ""},
{ "name": "org.apache.royale.routing.RouteState",
  "description": ""},
{ "name": "org.apache.royale.routing.RouteTitleLookup",
  "description": ""},
{ "name": "org.apache.royale.routing.RouteToComponent",
  "description": "RouteToComponent is a bead designed for IRouter One or more routes should be assigned to the bead"},
{ "name": "org.apache.royale.routing.RouteToParameters",
  "description": ""},
{ "name": "org.apache.royale.routing.RouteToState",
  "description": ""},
{ "name": "org.apache.royale.routing.Router",
  "description": "Router is deprecated. Please use HashRouter or BrowserRouter instead. Router is a bead which automatically handles browsing history. It could be attached to any strand, but typically it would be attached to Application or View Listen to stateChange events to handle changes to browsing history and use setState and renderState for modifying the history. The state of the router can be modified before committing the state changes.",
"tags": [
{  "tagName": "deprecated",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.routing.SetRouteTitle",
  "description": ""},
{ "name": "org.apache.royale.routing.URLParameterBead",
  "description": "The URLParameterBead class dispatches an event at startup when the URL parameters are ready to be processed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.states.AddItems",
  "description": "The AddItems class is one of the classes in the view states subsystem.  Note that the Royale versions are simply data structures interpreted by a central States implementation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.states.ItemAndDescriptor",
  "description": "A data structure to store an instance and its descriptor array.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.states.SetEventHandler",
  "description": "The SetEventHandler class is one of the classes in the view states subsystem.  Note that the Royale versions are simply data structures interpreted by a central States implementation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.states.SetProperty",
  "description": "The SetProperty class is one of the classes in the view states subsystem.  Note that the Royale versions are simply data structures interpreted by a central States implementation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.states.State",
  "description": "The State class is one of the classes in the view states subsystem.  It is used to declare a view state in an MXML document.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.states.Transition",
  "description": "The Transition class holds information describing what to do when changing from one state to another.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.AMFStorage",
  "description": ""},
{ "name": "org.apache.royale.storage.IPermanentStorage",
  "description": "The IPermanentStorage interface provides the template for creating an interface to a device's native file system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.IWebStorage",
  "description": "The IWebStorage interface provides a template for classes to use that wish to allow storage of small amounts of data into a web browser or perhaps on a mobile device.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.LocalStorage",
  "description": "The LocalStorage class allows apps to store small amounts of data locally, in the browser's permitted storage area. This data will persist between browser invocations. The data is stored in key=value pairs.  This class uses the ValuesManager to determine a storage provider - an implementation class the actually does the storing and retrieving. To change the provider implementation, set a ClassReference for the LocalStorage CSS style. The default is the org.apache.royale.storage.providers.LocalStorageProvider class.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.storage.IWebStorage", "org.apache.royale.storage.provides.LocalStorageProvider", "org.apache.royale.storage.IWebStorage", "org.apache.royale.storage.provides.LocalStorageProvider"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.PermanentStorage",
  "description": "The PermanentStorage class provides the interface to the native file system. This classes uses the Royale ValuesManager to provide the actual implementation using the iStorage style.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.events.FileErrorEvent",
  "description": "The FileErrorEvent class is used to signal varies errors that may occur while handling a permanent file.  ERROR    - A genric error occurred reading or opening the file.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.storage.events.FileEvent",
  "description": "The FileEvent class is used to signal varies events in the life and use of permanent files.  READY    - The file has been created or opened successfully. READ     - Some (or all) of the data has been read. WRITE    - Some (or all) of the data has been written. COMPLETE - The read or write process has finished and the file is closed. ERROR    - An error occurred reading or opening the file.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.storage.file.DataInputStream",
  "description": "Instances of the DataInputStream by the storage provider are created when a file is opened for input streaming. That is, its contents are read in chunks. Events are dispatched when a chunk has been read, if there is an error, and when the file has been read completely.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.file.DataOutputStream",
  "description": "Instances of the DataOutput stream are created by the storage provider when a file is opened for output streaming. Events are dispatches as the file is opened, written to, and finally closed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.file.IDataInput",
  "description": "The File class provides access to a specific file on the device."},
{ "name": "org.apache.royale.storage.file.IDataOutput",
  "description": "The File class provides access to a specific file on the device."},
{ "name": "org.apache.royale.storage.file.IDataStream",
  "description": "The File class provides access to a specific file on the device."},
{ "name": "org.apache.royale.storage.file.LocalFile",
  "description": "The File class provides access to a specific file on the device."},
{ "name": "org.apache.royale.storage.providers.AirStorageProvider",
  "description": "The AirStorageProvider class implements the IPermanentStorageProvider interface for saving files to a mobile device using the Adobe(tm) AIR platform.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignorecoercion",
       "values": ["FileEntry", "FileWriter", "window", "Blob", "FileEntry", "FileWriter", "window", "Blob"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.providers.AndroidExternalStorageProvider",
  "description": "The AndroidStorageProvider class implements the IPermanentStorageProvider interface for saving files to a Android external storage.",
"tags": [
{  "tagName": "royalecordovaplugin",
       "values": ["cordova-plugin-file", "cordova-plugin-file"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignorecoercion",
       "values": ["FileEntry", "FileWriter", "window", "Blob", "FileEntry", "FileWriter", "window", "Blob"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.providers.IPermanentStorageProvider",
  "description": "This interface provides the template for creating classes the work with the permanent storages API of the native system.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.providers.LocalStorageProvider",
  "description": "The LocalStorageProvider class allows apps to store small amounts of data locally, in the browser's permitted storage area. This data will persist between browser invocations. The data is stored in key=value pairs and the value must be a string.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignoreimport",
       "values": ["window", "window"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.storage.providers.WebStorageProvider",
  "description": "The WebStorageProvider class implements the IPermanentStorageProvider interface for saving files to a mobile device.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignorecoercion",
       "values": ["FileEntry", "FileWriter", "window", "Blob", "FileEntry", "FileWriter", "window", "Blob"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.AdjustBrightnessFilterElement",
  "description": "The AdjustBrightnessFilterElement adjusts the brightness of the filter",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.5", "Royale 0.9.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.BevelFilter",
  "description": "BevelFilter is a bead that injects a series of beads in the correct order and initialized them.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.5", "Royale 0.9.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.BinaryImage",
  "description": "The Image class is a component that displays a bitmap. The Image uses the following beads:  org.apache.royale.core.IBeadModel: the data model for the Image, including the url/binary property. org.apache.royale.core.IBeadView: constructs the visual elements of the component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.BlendFilterElement",
  "description": "The BlendFilterElement blends several filter elements",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.BlurFilterElement",
  "description": "The BlurFilterElement bead adds a blur to a filtered SVG element",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.Circle",
  "description": ""},
{ "name": "org.apache.royale.svg.ClipBead",
  "description": "The ClipBead bead allows you to clip a graphic Shape using a an arbitrary graphic path. The clipping path is defined in the path property using a PathBuilder object. This Bead will not work on the JS on components which are not implemented using SVG.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.ColorMatrixFilterElement",
  "description": "The ColorMatrixFilterElement bead adds an offset to a filtered SVG element",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.CompositeFilterElement",
  "description": "The CompositeFilterElement takes two objects and applies Porter/Duff operators",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.CompoundGraphic",
  "description": "CompoundGraphic is a surface on which you can draw various graphic elements such as Rect, Circle, Ellipse, Path etc. Use this class if you want to draw multiple graphic shapes on a single container."},
{ "name": "org.apache.royale.svg.DOMWrapper",
  "description": ""},
{ "name": "org.apache.royale.svg.DiffuseLightingFilterElement",
  "description": "The DiffuseLightingFilterElement",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.5", "Royale 0.9.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.DisableClipBead",
  "description": "The DisableClipBead bead allows you to disable a ClipBead.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.DropShadowFilter",
  "description": "DropShadowFilter is a bead that injects a series of beads in the correct order and initialized them.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.Ellipse",
  "description": ""},
{ "name": "org.apache.royale.svg.Filter",
  "description": "The Filter bead allows you to filter an SVG element. Filter elements should be added to the strand to achieve the desired effect.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.FilterElement",
  "description": "FilterElement abstracts some methods and vars for elements that can go in an SVG filter",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.FullAlphaFilterElement",
  "description": "The FullAlphaFilterElement",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.GraphicContainer",
  "description": "The default property uses when additional MXML content appears within an element's definition in an MXML file."},
{ "name": "org.apache.royale.svg.GraphicShape",
  "description": ""},
{ "name": "org.apache.royale.svg.IChainableFilter",
  "description": "The IChainableFilter interface describes a filter that can be a part of a chain of filters",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.Image",
  "description": ""},
{ "name": "org.apache.royale.svg.InvertFilterElement",
  "description": "The InvertFilterElement makes a filter inset",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.LinearGradient",
  "description": ""},
{ "name": "org.apache.royale.svg.MaskBead",
  "description": "The MaskBead transforms an IUIBase element into a mask definition and contains methods to attach an existing element to this mask definition.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.MergeFilterElement",
  "description": "The MergeFilterElement merges several filter elements",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.OffsetFilterElement",
  "description": "The OffsetFilterElement bead adds an filterElement to a filtered SVG element",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.Path",
  "description": ""},
{ "name": "org.apache.royale.svg.Rect",
  "description": ""},
{ "name": "org.apache.royale.svg.RetainColorBevelFilter",
  "description": "RetainColorBevelFilter extends BevelFilter to and darkens it somewhat in an attempt to retain the original colors in its graphic core. This is an exprimental component designed to emulate PhotoShop's behavior.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.5", "Royale 0.9.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.SpreadFilterElement",
  "description": "The SpreadFilterElement adjusts the spread of the filter",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.SuperimposeFilter",
  "description": "SuperimposeFilter composes superimposes several filters one on top of the other.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.Text",
  "description": "Draws a string of characters at a specific location using the fill value of color and alpha.  // TODO (aharui) ignore imports of external linkage interfaces?",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignoreimport",
       "values": ["SVGLocatable", "SVGLocatable"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.TextButton",
  "description": ""},
{ "name": "org.apache.royale.svg.TileFilterElement",
  "description": "The TileFilterElement fills up the filter by repeating the input",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.5", "Royale 0.9.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.TransformBead",
  "description": ""},
{ "name": "org.apache.royale.svg.TransformableCompoundGraphic",
  "description": "TransformableCompoundGraphic adds a <g> element in which drawn elements are nested. This is useful for applying transforms and other low level operations not available on SVG elements.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.beads.ImageView",
  "description": "The ImageView class creates the visual elements of the org.apache.royale.svg.Image component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.svg.elements.AnimateMotion",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.AnimateTransform",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Circle",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.ClipPath",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Defs",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Ellipse",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.G",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Image",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Line",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Marker",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Mask",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Path",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Pattern",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Polygon",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Polyline",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Rect",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Svg",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Switch",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Symbol",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Text",
  "description": ""},
{ "name": "org.apache.royale.svg.elements.Use",
  "description": ""},
{ "name": "org.apache.royale.test.Assert",
  "description": "A set of assertion methods. Messages only displayed when an assert fails."},
{ "name": "org.apache.royale.test.AssertionError",
  "description": "Error class used when assertions fail.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.test.Assert", "org.apache.royale.test.Assert"]}  ]},
{ "name": "org.apache.royale.test.RoyaleUnitCore",
  "description": "Simple entry point for running tests."},
{ "name": "org.apache.royale.test.Runtime",
  "description": ""},
{ "name": "org.apache.royale.test.async.Async",
  "description": "Helper functions for tests marked with <code>[Test(async)]</code> metadata."},
{ "name": "org.apache.royale.test.async.AsyncLocator",
  "description": "Used for tests with <code>[Test(async)]</code> metadata."},
{ "name": "org.apache.royale.test.async.IAsyncHandler",
  "description": "Used for tests with <code>[Test(async)]</code> metadata."},
{ "name": "org.apache.royale.test.listeners.BrowserConsoleListener",
  "description": "Outputs the status of a test run to the debug console."},
{ "name": "org.apache.royale.test.listeners.CIListener",
  "description": "Communicates with a socket server to integrate RoyaleUnit tests with a build system, such as <a href=&quot;https://apache.github.io/royale-docs/testing/royaleunit/run-unit-tests-with-ant&quot;>Apache Ant</a>."},
{ "name": "org.apache.royale.test.listeners.FailureListener",
  "description": "Determine if a test run fails or not."},
{ "name": "org.apache.royale.test.listeners.TraceListener",
  "description": "Outputs the status of a test run to the debug console."},
{ "name": "org.apache.royale.test.runners.ITestRunner",
  "description": "An interface for test runner implementations, such as <code>MetadataRunner</code> and <code>SuiteRunner</code>.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.test.runners.MetadataRunner", "org.apache.royale.test.runners.SuiteRunner", "org.apache.royale.test.runners.MetadataRunner", "org.apache.royale.test.runners.SuiteRunner"]}  ]},
{ "name": "org.apache.royale.test.runners.MetadataRunner",
  "description": "Runs a class containing methods marked with <code>[Test]</code> metadata.  <p>Also supports the following optional metadata:</p>  <ul> <li>Tests with <code>[Ignore]</code> metadata should be ignored (skipped).</li> <li>Methods with <code>[Before]</code> metadata are run before every individual test.</li> <li>Methods with <code>[After]</code> metadata are run after every individual test.</li> <li>Static methods with <code>[BeforeClass]</code> metadata are run one time, before the first test.</li> <li>Static methods with <code>[AfterClass]</code> metadata are run one time, after the final test.</li> </ul>  <p>To test asynchronous functionality, add the <code>async</code> modifier to the <code>[Test]</code> metadata, and use the static methods on the <code>org.apache.royale.test.async.Async</code> class to set up a context for testing asynchronously.</p>  <pre><code>[Test(async)]</code></pre>  <p>By default, asynchronous tests fail if they do not complete within 500 milliseconds. Set the <code>timeout</code> modifier on the <code>[Test]</code> metadata to customize this duration (measured in milliseconds).</p>  <pre><code>[Test(async,timeout=&quot;2000&quot;)]</code></pre>  <p>To require that a specific exception is thrown while a test is running, set the `expected` modifier on the `[Test]` metadata to the name of the exception class.</p>  <pre><code>[Test(expected=&quot;RangeError&quot;)]</code></pre>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.test.async.Async", "org.apache.royale.test.async.Async"]}  ]},
{ "name": "org.apache.royale.test.runners.ParentRunner",
  "description": "Provides a base implementation of a runner with children, and intended to be subclassed, similar to <code>SuiteRunner</code>.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.test.runners.SuiteRunner", "org.apache.royale.test.runners.SuiteRunner"]}  ]},
{ "name": "org.apache.royale.test.runners.SuiteRunner",
  "description": "A runner for test suites.  <p>Test suites should be annotated with <code>[Suite]</code> and <code>[RunWith(&quot;org.apache.royale.test.runners.SuiteRunner&quot;)]</code> metadata. To add test classes to the suite, define a public variable for each class, using the class as the variable type. You may also add other suite classes in the same way.</p>"},
{ "name": "org.apache.royale.test.runners.notification.Failure",
  "description": "The result of a failed test."},
{ "name": "org.apache.royale.test.runners.notification.IAsyncStartupRunListener",
  "description": "A listener that requires extra time to startup."},
{ "name": "org.apache.royale.test.runners.notification.IRunListener",
  "description": "Responds to events that occur during a test run."},
{ "name": "org.apache.royale.test.runners.notification.IRunNotifier",
  "description": "Listens for notifications from an <code>ITestRunner</code>."},
{ "name": "org.apache.royale.test.runners.notification.Result",
  "description": "The result of a test run."},
{ "name": "org.apache.royale.test.runners.notification.RunNotifier",
  "description": "Listens for notifications from an <code>ITestRunner</code>."},
{ "name": "org.apache.royale.text.engine.BreakOpportunity",
  "description": ""},
{ "name": "org.apache.royale.text.engine.CFFHinting",
  "description": ""},
{ "name": "org.apache.royale.text.engine.Constants",
  "description": ""},
{ "name": "org.apache.royale.text.engine.ContentElement",
  "description": ""},
{ "name": "org.apache.royale.text.engine.DigitCase",
  "description": ""},
{ "name": "org.apache.royale.text.engine.DigitWidth",
  "description": ""},
{ "name": "org.apache.royale.text.engine.EastAsianJustifier",
  "description": ""},
{ "name": "org.apache.royale.text.engine.ElementFormat",
  "description": ""},
{ "name": "org.apache.royale.text.engine.FontDescription",
  "description": ""},
{ "name": "org.apache.royale.text.engine.FontLookup",
  "description": ""},
{ "name": "org.apache.royale.text.engine.FontMetrics",
  "description": "The FontMetrics class contains metrics specific to the font. The information contained in this class is all located in the OS/2 font table. It is important to note that there can be two distinct uses for this class. By default IFont has a FontMetrics which contains the raw data which is dependent on unitsPerEm. Clients would usually need a FontMetrics which is calculated based on a specific font size.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.text.engine.FontPosture",
  "description": ""},
{ "name": "org.apache.royale.text.engine.FontWeight",
  "description": ""},
{ "name": "org.apache.royale.text.engine.Fonts",
  "description": ""},
{ "name": "org.apache.royale.text.engine.GlyphMetrics",
  "description": ""},
{ "name": "org.apache.royale.text.engine.GraphicElement",
  "description": ""},
{ "name": "org.apache.royale.text.engine.GroupElement",
  "description": ""},
{ "name": "org.apache.royale.text.engine.IFont",
  "description": "",
"tags": [
{  "tagName": "author",
       "values": ["harbs", "harbs"]}  ]},
{ "name": "org.apache.royale.text.engine.IFontLoader",
  "description": "",
"tags": [
{  "tagName": "author",
       "values": ["harbs", "harbs"]}  ]},
{ "name": "org.apache.royale.text.engine.ITextBlock",
  "description": ""},
{ "name": "org.apache.royale.text.engine.ITextFactory",
  "description": ""},
{ "name": "org.apache.royale.text.engine.ITextLine",
  "description": ""},
{ "name": "org.apache.royale.text.engine.JustificationStyle",
  "description": ""},
{ "name": "org.apache.royale.text.engine.Kerning",
  "description": ""},
{ "name": "org.apache.royale.text.engine.LigatureLevel",
  "description": ""},
{ "name": "org.apache.royale.text.engine.LineJustification",
  "description": ""},
{ "name": "org.apache.royale.text.engine.RenderingMode",
  "description": ""},
{ "name": "org.apache.royale.text.engine.SpaceJustifier",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TabAlignment",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TabStop",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextBaseline",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextElement",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextEngine",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextJustifier",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextLineCreationResult",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextLineMirrorRegion",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextLineValidity",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TextRotation",
  "description": ""},
{ "name": "org.apache.royale.text.engine.TypographicCase",
  "description": ""},
{ "name": "org.apache.royale.text.events.IMEEvent",
  "description": ""},
{ "name": "org.apache.royale.text.events.TextEvent",
  "description": "A TextLayoutEvent instance represents an event, such as the <code>TextLayoutEvent.SCROLL</code> event, that does not require custom properties. <p>A scroll event is represented by a TextLayoutEvent instance with its <code>type</code> property set to <code>TextLayoutEvent.SCROLL</code>. A class specifically for scroll events is not necessary because there are no custom properties for a scroll event, as there are for the other events that have specific event classes. If a new text layout event is needed, and the event does not require custom properties, the new event will also be represented by a TextLayoutEvent object, but with its <code>type</code> property set to a new static constant. </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TextLayoutEvent_example.as -noswf", "examples/TextLayoutEvent_example.as -noswf"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.text.html.HTMLTextFactory",
  "description": ""},
{ "name": "org.apache.royale.text.html.TextBlock",
  "description": ""},
{ "name": "org.apache.royale.text.html.TextLine",
  "description": ""},
{ "name": "org.apache.royale.text.ime.CompositionAttributeRange",
  "description": "The CompositionAttributeRange class represents a range of composition attributes for use with IME events. For example, when editing text in the IME, the text is divided by the IME into composition ranges. These composition ranges are flagged as selected (i.e. currently being lengthened, shortened, or edited), and/or converted (i.e. they have made one pass through the IME dictionary lookup already).  <p>By convention, the client should adorn these composition ranges with underlining or hiliting according to the flags.</p>  <p>For example:</p> <listing> !converted              = thick gray underline (raw text) !selected &#38;&#38; converted  = thin black underline selected &#38;&#38; converted  = thick black underline </listing>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.1", "AIR 1.5", "Flash 10.1", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.text.ime.IIMEClient",
  "description": "Interface for IME (input method editor) clients.  Components based on the org.apache.royale.text.engine package must implement this interface to support editing text inline using an IME. This interface is not used with TextField objects. TextLayoutFramework (TLF) uses this interface to support inline IME, so clients using TLF do not need to implement this interface. <p>To support inline IME, set the <code>imeClient</code> property of an <code>ImeEvent.IME_START_COMPOSITION</code> event to an object which implements this interface.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.text.ime.CompositionAttributeRange", "org.apache.royale.events.ImeEvent:imeClient", "org.apache.royale.text.ime.CompositionAttributeRange", "org.apache.royale.events.ImeEvent:imeClient"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.1", "AIR 1.5", "Flash 10.1", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.text.ime.IIMESupport",
  "description": "The IIMESupport interface defines the interface for any component that supports IME (input method editor). IME is used for entering characters in Chinese, Japanese, and Korean.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.text.ime.IME", "org.apache.royale.text.ime.IME"]},
    {  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.text.ime.IME",
  "description": ""},
{ "name": "org.apache.royale.text.ime.IMEConversionMode",
  "description": ""},
{ "name": "org.apache.royale.textLayout.TextLayoutVersion",
  "description": "This class controls the backward-compatibility of the framework. With every new release, some aspects of the framework are changed which can affect your application.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.accessibility.TextAccImpl",
  "description": "The TextAccImpl class adds accessibility for text components. This hooks into DisplayObjects when TextFlow.container is set.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.beads.DispatchTLFKeyboardEventBead",
  "description": "The DispatchKeyboardEventBead class dispatched INPUT_FINISHED on strand when enter is pressed, or when foucus is out.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.BaseCompose",
  "description": "Common composer base class"},
{ "name": "org.apache.royale.textLayout.compose.ComposeState",
  "description": "Keeps track of internal state during composition.  This is the simpler version, used when there are no floats, no wraps, no columns.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.compose.FactoryComposer",
  "description": "@private FactoryDisplayComposer - overridable"},
{ "name": "org.apache.royale.textLayout.compose.FloatCompositionData",
  "description": "Contains information about the float that was generated by composition, and is used for composing and updating"},
{ "name": "org.apache.royale.textLayout.compose.FlowComposerBase",
  "description": "The FlowComposerBase class is the base class for Text Layout Framework flow composer classes, which control the composition of text lines in ContainerController objects.  <p>FlowComposerBase is a utility class that implements methods and properties that are common to several types of flow composer. Application code would not typically instantiate or use this class (unless extending it to create a custom flow composer).</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow#flowComposer", "org.apache.royale.textLayout.elements.TextFlow#flowComposer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.FlowDamageType",
  "description": "The FlowDamageType class is an enumeration class that defines types of damage for damage methods and events. When the text content is updated, these changes are reflected in the TextLines after an update. TextLines are marked with a flag that specifies whether or not they are valid, or up to date with all text changes. When the text is first updated, all lines are marked valid or static. After the text has been changed, and before the next update, lines will be marked with a FlowDamageType that specifies what about the line is invalid. Once the update is done, lines will again be marked as valid or static.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.IComposeState",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.IComposer",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.IFactoryComposer",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.IFlowComposer",
  "description": "IFlowComposer defines the interface for managing the layout and display of a text flow.  <p>Text flows displayed with a flow composer implementation can be dynamic and interactive. A flow composer manages one or more display controller. Each controller is associated with a display object container (such as a Sprite) through which the lines created for the text flow are ultimately displayed. The following diagram illustrates the relationship between TextFlow, IFlowComposer, ContainerController, and DisplayObjectContainer objects:</p>  <p><img src=&quot;../../../images/textLayout_singleController.gif&quot; alt=&quot;IFlowComposer&quot;></img></p>  <p>A flow composer calculates which portion of a text flow fits in each container and adds the appropriate text lines to the container's display object. The IFlowComposer interface defines separate methods for layout calculations and for updating the display. IFlowComposer also defines methods for incrementally composing and updating a text flow. These methods can be used to avoid blocking the user interface when updating long text flows.</p>  <p>In addition to managing text composition and display, a flow composer controls which container has focus, manages the display of the selection highlight (which can cross container boundaries), and provides direct access to all the TextLine objects in the flow.</p>  <p>To use an IFlowComposer implementation, assign an instance of that implementation to the <code>flowComposer</code> property of a TextFlow object. Call the <code>updateAllControllers()</code> method to lay out and display the text in the containers attached to the flow composer.</p>  <p><b>Note:</b> For simple, static text flows, you can also use the one of the text line factory classes. These factory classes will typically create lines with less overhead than a flow composer, but do not support editing, dynamic changes, or user interaction.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.container.ContainerController ContainerController", "FlowComposerBase", "StandardFlowComposer", "org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.factory.StringTextLineFactory StringTextLineFactory", "org.apache.royale.textLayout.factory.TextFlowTextLineFactory TextFlowTextLineFactory", "org.apache.royale.textLayout.container.ContainerController ContainerController", "FlowComposerBase", "StandardFlowComposer", "org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.factory.StringTextLineFactory StringTextLineFactory", "org.apache.royale.textLayout.factory.TextFlowTextLineFactory TextFlowTextLineFactory"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.ISWFContext",
  "description": "The ISWFContext interface allows a SWF file to share its context with other SWF files that load it. An application that loads a SWF file of type ISWFContext can call methods in the context of the loaded SWF file. The main usage is for calling the FTE TextLine creation methods.  <p>There are two reasons for an application to use this interface to control TextLine creation: </p> <ul> <li><strong>Reuse an embedded font: </strong> if an application wants to use a font embedded in a loaded SWF file, the application can access the font if a TextLine is created in the context of the loaded SWF file.</li> <li><strong>Reuse existing TextLine instances</strong>: reusing existing TextLine instances can result in faster recompose times. TLF reuses existing TextLine instances internally. TLF reuses a TextLine by calling <code>TextBlock.recreateTextLine()</code> instead of <code>TextBlock.createTextLine()</code> when TLF recognizes that a TextLine is extant.</li> </ul>   <p>Your application may have additional TextLine instances that can be reused. To manually reuse existing TextLine instances:</p> <ol> <li>trap calls to <code>TextBlock.createTextLine()</code>, then</li> <li>call <code>TextBlock.recreateTextLine()</code> with the extant TextLine instance instead of <code>TextBlock.createTextLine()</code>.</li> </ol> <p>Please note, however, that the <code>TextBlock.recreateTextLine()</code> is available only in Flash Player 10.1 and later.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.text.engine.TextBlock#createTextLine()", "org.apache.royale.text.engine.TextBlock#recreateTextLine()", "org.apache.royale.text.engine.TextBlock#createTextLine()", "org.apache.royale.text.engine.TextBlock#recreateTextLine()"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.ISimpleCompose",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.ITextFlowLine",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.ITextFlowTableBlock",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.IVerticalJustificationLine",
  "description": "The IVerticalJustificationLine interface defines the methods and properties required to allow the vertical justification of text lines.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.Parcel",
  "description": "Helper class for implementations of IParcelList",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.compose.ParcelList",
  "description": "@private Used for composing text containers, keeps track of the areas that text in the flow is composed into.  ParcelList will always have one parcel, which corresponds to the container's bounding box."},
{ "name": "org.apache.royale.textLayout.compose.SWFContext",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.SimpleCompose",
  "description": "Keeps track of internal state during composition.  This is the simpler version, used when there are no floats, no wraps, no columns.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.compose.Slug",
  "description": "A Slug is geomtrical line information, generated by a Parcel. It has data required for composition."},
{ "name": "org.apache.royale.textLayout.compose.StandardFlowComposer",
  "description": "The StandardFlowComposer class provides a standard composer and container manager.  <p>Each call to <code>compose()</code> or <code>updateAllControllers()</code> normalizes the text flow as a first step. The normalizing process checks the parts of the TextFlow object that were modified and takes the following steps: <ol> <li> Deletes empty FlowLeafElement and SubParagraphGroupElement objects.</li> <li> Merges sibling spans that have identical attributes.</li> <li> Adds an empty paragraph if a flow is empty.</li> </ol> </p>  <p>To use a StandardFlowComposer, assign it to the <code>flowComposer</code> property of a TextFlow object. Call the <code>updateAllControllers()</code> method to lay out and display the text in the containers attached to the flow composer.</p>  <p><b>Note:</b> For simple, static text flows, you can also use the one of the text line factory classes. These factory classes will typically create lines with less overhead than a flow composer, but do not support editing, dynamic changes, or user interaction.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow#flowComposer", "org.apache.royale.textLayout.elements.TextFlow#flowComposer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.TCMFactoryComposer",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.TextFlowLine",
  "description": "The TextFlowLine class represents a single line of text in a text flow.  <p>Use this class to access information about how a line of text has been composed: its position, height, width, and so on. When the text flow (TextFlow) is modified, the lines immediately before and at the site of the modification are marked as invalid because they need to be recomposed. Lines after the site of the modification might not be damaged immediately, but they might be regenerated once the text is composed. You can access a TextFlowLine that has been damaged, but any values you access reflect the old state of the TextFlow. When the TextFlow is recomposed, it generates new lines and you can get the new line for a given position by calling <code>TextFlow.flowComposer.findLineAtPosition()</code>.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.TextFlowLineLocation",
  "description": "The TextFlowLineLocation class is an enumeration class that defines constants for specifying the location of a line within a paragraph.",
"tags": [
{  "tagName": "see",
       "values": ["ParagraphElement", "TextFlow", "ParagraphElement", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.TextFlowTableBlock",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.TextLineRecycler",
  "description": "The TextLineRecycler class provides support for recycling of TextLines.  Some player versions support a recreateTextLine.  Passing TextLines to the recycler makes them available for reuse.  This improves Player performance.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.compose.VerticalJustifier",
  "description": "@private Adjust line positions according to verticalAlign settings.  Vertical alignment is perpendicular to the linebreak direction."},
{ "name": "org.apache.royale.textLayout.compose.utils.AdornmentUtils",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.utils.ContextUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.utils.FactoryHelper",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.utils.NumberLineUserData",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.utils.NumberlineUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.utils.StandardHelper",
  "description": ""},
{ "name": "org.apache.royale.textLayout.compose.utils.TextLineUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.container.ColumnState",
  "description": "The ColumnState class calculates the sizes and locations of columns using the width of the container and the container attributes. You can create instances of this class independently to calculate column values, or you can get the column values that were used for the text after the container has been composed or updated (redrawn).",
"tags": [
{  "tagName": "see",
       "values": ["ContainerController", "ContainerController"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.container.ContainerController",
  "description": "The ContainerController class defines the relationship between a TextFlow object and a container. A TextFlow may have one or more rectangular areas that can hold text; the text is said to be flowing through the containers. Each container is a Sprite that is the parent DisplayObject for the TextLines. Each container has a ContainerController that manages the container; the controller holds the target width and height for the text area, populates the container with TextLines, and handles scrolling. A controller also has a format associated with it that allows some formatting attributes to be applied to the text in the container. This allows, for instance, a TextFlow to have one container where the text appears in a single column, and a second container in the same TextFlow with two column text. Not all formatting attributes that can be applied to the container will affect the text; only the ones that affect container-level layout. The diagram below illustrates the relationship between the TextFlow, its flowComposer, and the display list.  <p><img src=&quot;../../../images/textLayout_multiController.gif&quot; alt=&quot;IContainerController&quot;></img></p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.compose.IFlowComposer", "org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.text.engine.ITextLine", "org.apache.royale.textLayout.compose.IFlowComposer", "org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.text.engine.ITextLine"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.container.ContainerUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.container.IContainerController",
  "description": ""},
{ "name": "org.apache.royale.textLayout.container.ISandboxSupport",
  "description": "Interface to support TLF content in a sub-application. When an application is loaded in an untrusted context, mouse events that occur outside of the untrusted application's bounds are not delivered. Clients can handle this by implementing ISandboxSupport.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.container.ContainerController", "org.apache.royale.textLayout.container.TextContainerManager", "org.apache.royale.textLayout.edit.SelectionManager", "flash.system.SecurityDomain", "org.apache.royale.textLayout.container.ContainerController", "org.apache.royale.textLayout.container.TextContainerManager", "org.apache.royale.textLayout.edit.SelectionManager", "flash.system.SecurityDomain"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.container.ITextContainerManager",
  "description": ""},
{ "name": "org.apache.royale.textLayout.container.ScrollPolicy",
  "description": "The ScrollPolicy class is an enumeration class that defines values for setting the <code>horizontalScrollPolicy</code> and <code>verticalScrollPolicy</code> properties of the ContainerController class, which defines a text flow container.",
"tags": [
{  "tagName": "see",
       "values": ["ContainerController#horizontalScrollPolicy", "ContainerController#verticalScrollPolicy", "ContainerController#horizontalScrollPolicy", "ContainerController#verticalScrollPolicy"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.container.TMContainerController",
  "description": ""},
{ "name": "org.apache.royale.textLayout.container.TextContainerManager",
  "description": "Manages text in a container. Assumes that it manages all children of the container. Consider using TextContainerManager for better performance in cases where there is a one container per ITextFlow, and the ITextFlow is not the main focus, is static text, or is infrequently selected. Good for text in form fields, for example.",
"tags": [
{  "tagName": "see",
       "values": ["ContainerController", "ContainerController"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.BaseTextLayoutExporter",
  "description": "Base export converter for TextLayout format."},
{ "name": "org.apache.royale.textLayout.conversion.ConversionConstants",
  "description": ""},
{ "name": "org.apache.royale.textLayout.conversion.ConversionType",
  "description": "Values for the format of exported text. The values <code>STRING_TYPE</code> and <code>XML_TYPE</code> can be used for the <code>conversionType</code> parameter for the export() method in the ITextExporter interface and the TextConverter class.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.conversion.ITextExporter#export()", "org.apache.royale.textLayout.conversion.TextConverter#export()", "org.apache.royale.textLayout.conversion.ITextExporter#export()", "org.apache.royale.textLayout.conversion.TextConverter#export()"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.ConverterBase",
  "description": "This is a base class for importers as well as exporters. It implements the error handling plus property getters and setters that generate an error when invoked.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.0", "Flash 10.2", "AIR 2.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.FormatDescriptor",
  "description": "Contains information about a format.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.0", "AIR 2.0", "Flash 10.0", "AIR 2.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.IFormatImporter",
  "description": "Interface for exporting text content from a TextFlow to either a String or XML."},
{ "name": "org.apache.royale.textLayout.conversion.IHTMLImporter",
  "description": "This interface should be implemented by converters that import HTML or HTML-structured data. Clients that have explicitly created an importer using TextConverter.getImporter may control the import process by calling into these methods on the importer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.0", "AIR 2.0", "Flash 10.0", "AIR 2.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.IPlainTextExporter",
  "description": "This interface should be implemented by converters that export plain text. Clients that have explicitly created an exporter using TextConverter.getExporter may control the export process by calling into these methods on the exporter.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.0", "AIR 2.0", "Flash 10.0", "AIR 2.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.ITextExporter",
  "description": "Interface for exporting text content from a TextFlow instance to a given format, which may for example be String or XML format, or a user-defined format. Exporters support the getting and setting of properties to control the export of data. These properties are implemented as public properties, but the direct access of these properties should be avoided, since a user might replace the converter class in the TextConverter registry, causing a downcast to fail.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.ITextImporter",
  "description": "Interface for importing text content into a TextFlow from an external source. The TextConverter class creates importers with no constructor arguments.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.elements.TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.ITextLayoutImporter",
  "description": "This interface should be implemented by converters that import TextLayout structured data. Clients that have explicitly created an importer using TextConverter.getImporter may control the import process by calling into these methods on the importer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.0", "AIR 2.0", "Flash 10.0", "AIR 2.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.ImportExportConfiguration",
  "description": "Configure for import/export of standard components. Configures the import/export package so it can export all the standard FlowElements.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.Configuration", "org.apache.royale.textLayout.elements.Configuration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.PlainTextExporter",
  "description": "Export converter for plain text format. This class provides an alternative to the <code>TextConverter.export()</code> static method for exporting plain text. The PlainTextExporter class's <code>export()</code> method results in the same output string as the <code>TextConverter.export()</code> static method if the two properties of the PlainTextExporter class, the <code>PARAGRAPH_SEPARATOR_PROPERTY</code> and the <code>STRIP_DISCRETIONARY_HYPHENS_PROPERTY</code> properties, contain their default values of <code>&quot;\\n&quot;</code> and <code>true</code>, respectively.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.PlainTextImporter",
  "description": "PlainText import converter. Use this to import simple unformatted Unicode text. Newlines will be converted to paragraphs. Using the PlainTextImporter directly is equivalent to calling TextConverter.importToFlow(TextConverter.PLAIN_TEXT_FORMAT).",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.conversion.TLFormatImporter",
  "description": "",
"tags": [
{  "tagName": "private",
       "values": ["", ""]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.TextConverter",
  "description": "This is the gateway class for handling import and export. It serves as a unified access point to the conversion functionality in the Text Layout Framework. It contains a registry for predefined as well as user defined input and/or output converters, plus a set of conversion methods. <p> The format of the converted data is not predefined; user written converters are free to accept and return any format of their choice. Common formats are strings, XML, and ByteArray instances. Converter authors should document which formats are supported. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.conversion.TextFieldHtmlExporter",
  "description": "Export converter for HTML format.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.conversion.TextFieldHtmlImporter",
  "description": "TextFieldHtmlImporter converts from HTML to TextLayout data structures",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.conversion.TextLayoutImporter",
  "description": "TextLayoutImporter converts from XML to TextLayout data structures and back.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "org.apache.royale.textLayout.conversion.importers.CaseInsensitiveTLFFormatImporter",
  "description": "Specialized to provide case insensitivity (as required by TEXT_FIELD_HTML_FORMAT) Keys need to be lower-cased. Values may or may not based on a flag passed to the constructor."},
{ "name": "org.apache.royale.textLayout.conversion.importers.FontImporter",
  "description": ""},
{ "name": "org.apache.royale.textLayout.conversion.importers.HtmlCustomParaFormatImporter",
  "description": ""},
{ "name": "org.apache.royale.textLayout.conversion.importers.TextFormatImporter",
  "description": ""},
{ "name": "org.apache.royale.textLayout.debug.Debugging",
  "description": "@private"},
{ "name": "org.apache.royale.textLayout.dummy.BitmapData",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.BoundsUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.ColorTransform",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.ContextMenu",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.ContextMenuBuiltInItems",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.ContextMenuClipboardItems",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.IBitmapDrawable",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.Mouse",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.MouseCursor",
  "description": ""},
{ "name": "org.apache.royale.textLayout.dummy.MouseCursorData",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.Clipboard",
  "description": "The Clipboard class is used for Clipboard operations such as copy and paste It wraps the Flash Clipboard class and creates a new one on the Javascript side. To use the Javascript version, it is necessary to assign a static `clipElement` which needs to be a `contenteditable` HTML Element. This is to work around Browser issues related to Copy and Paste."},
{ "name": "org.apache.royale.textLayout.edit.ClipboardFormats",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.EditManager",
  "description": "The EditManager class manages editing changes to a TextFlow.  <p>To enable text flow editing, assign an EditManager object to the <code>interactionManager</code> property of the TextFlow object. The edit manager handles changes to the text (such as insertions, deletions, and format changes). Changes are reversible if the edit manager has an undo manager. The edit manager triggers the recomposition and display of the text flow, as necessary.</p>  <p>The EditManager class supports the following keyboard shortcuts:</p>  <table class=&quot;innertable&quot; width=&quot;100%&quot;> <tr><th>Keys</th><th>Result</th></tr> <tr><td>ctrl-z</td><td>undo</td></tr> <tr><td>ctrl-y</td><td>redo</td></tr> <tr><td>ctrl-backspace</td><td>deletePreviousWord</td></tr> <tr><td>ctrl-delete</td><td>deleteNextWord</td></tr> <tr><td>alt+delete</td><td>deleteNextWord</td></tr> <tr><td>ctrl+alt-delete</td><td>deleteNextWord</td></tr> <tr><td>ctrl-shift-hyphen</td><td>insert discretionary hyphen</td></tr> <tr><td>ctrl+backspace</td><td>deletePreviousWord</td></tr> <tr><td>alt+backspace</td><td>deletePreviousWord</td></tr> <tr><td>ctrl+alt-backspace</td><td>deletePreviousWord</td></tr> <tr><td>INSERT</td><td>toggles overWriteMode</td></tr> <tr><td>backspace</td><td>deletePreviousCharacter</td></tr> <tr><td>ENTER</td><td>if textFlow.configuration.manageEnterKey in a list it creates a new list item, otherwise creates a new paragraph</td></tr> <tr><td>shift-ENTER</td><td>if textFlow.configuration.manageEnterKey creates a new paragraph</td></tr> <tr><td>TAB</td><td>if textFlow.configuration.manageTabKey in a list it creates nested list, otherwise inserts a TAB or overwrites next character with a TAB</td></tr> <tr><td>shift-TAB</td><td>if textFlow.configuration.manageTabKey in the first item of a list it moves the item out of the list (promotes it)</td></tr> </table>  <p><strong>Note:</strong> The following keys do not work on Windows: alt-backspace, alt-delete, ctrl+alt-backspace, and ctrl+alt-delete. These keys do not generate an event for the runtime.</p>   examples/EditManager_example.as -noswf",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow", "flashx.undo.UndoManager", "org.apache.royale.textLayout.elements.TextFlow", "flashx.undo.UndoManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.EditingMode",
  "description": "The EditingMode class defines constants used with EditManager class to represent the read, select, and edit permissions of a document.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.edit.EditManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.ElementMark",
  "description": "@private - Marks an element by its position in the hierarchy."},
{ "name": "org.apache.royale.textLayout.edit.ElementRange",
  "description": "The ElementRange class represents the range of objects selected within a text flow.  <p>The beginning elements (such as <code>firstLeaf</code>) are always less than or equal to the end elements (in this case, <code>lastLeaf</code>) for each pair of values in an element range.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.elements.TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.IEditManager",
  "description": "IEditManager defines the interface for handling edit operations of a text flow.  <p>To enable text flow editing, assign an IEditManager instance to the <code>interactionManager</code> property of the TextFlow object. The edit manager handles changes to the text (such as insertions, deletions, and format changes). Changes are reversible if the edit manager has an undo manager. The edit manager triggers the recomposition and display of the text flow, as necessary.</p>",
"tags": [
{  "tagName": "see",
       "values": ["EditManager", "org.apache.royale.textLayout.elements.TextFlow", "flashx.undo.UndoManager", "EditManager", "org.apache.royale.textLayout.elements.TextFlow", "flashx.undo.UndoManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.IInteractionEventHandler",
  "description": "The IInteractionEventHandler interface defines the event handler functions that are handled by a Text Layout Framework selection or edit manager.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.IMemento",
  "description": "The IMemento interface is returned by ModelEdit for undo of a specific action that represents part of an operation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "prviate",
       "values": []},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.ISelectionManager",
  "description": "The ISelectionManager interface defines the interface for handling text selection.  <p>A SelectionManager keeps track of the selected text range and handles events for a TextFlow.</p>  <p>A selection can be either a point selection or a range selection. A point selection is the insertion point and is indicated visually by drawing a cursor. A range selection includes the text between an anchor point and an active point.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.SelectionManager", "org.apache.royale.textLayout.edit.TextScrap", "org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.edit.SelectionManager", "org.apache.royale.textLayout.edit.TextScrap", "org.apache.royale.textLayout.elements.TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.Mark",
  "description": "@private - not ready for prime time"},
{ "name": "org.apache.royale.textLayout.edit.MementoList",
  "description": "The MementoList class is a meta-memento.  It encapuslates the concept of having a sequence of mementos behave as a memento.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.ModelEdit",
  "description": "The ModelEdit class contains static functions for performing speficic suboperations.  Each suboperation returns a &quot;memento&quot; for undo/redo.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.ParaEdit",
  "description": "Encapsulates all methods necessary for dynamic editing of a text.  The methods are all static member functions of this class.",
"tags": [
{  "tagName": "private",
       "values": ["- because we can't make it tlf_internal. Used by the operations package", "- because we can't make it tlf_internal. Used by the operations package"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.PointFormat",
  "description": "Contains the settings that apply to new text being typed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.SelectionFormat",
  "description": "The SelectionFormat class defines the properties of a selection highlight.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.ISelectionManager", "org.apache.royale.textLayout.edit.SelectionManager", "org.apache.royale.textLayout.edit.ISelectionManager", "org.apache.royale.textLayout.edit.SelectionManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.SelectionFormatState",
  "description": "Values for the selection background state",
"tags": [
{  "tagName": "see",
       "values": ["text.edit.SelectionFormat", "text.edit.SelectionFormat"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.SelectionManager",
  "description": "The SelectionManager class manages text selection in a text flow.  <p>The selection manager keeps track of the selected text range, manages its formatting, and can handle events affecting the selection. To allow a user to make selections in a text flow, assign a SelectionManager object to the <code>interactionManager</code> property of the flow. (To allow editing, assign an instance of the EditManager class, which extends SelectionManager.)</p>  <p>The following table describes how the SelectionManager class handles keyboard shortcuts:</p>  <table class=&quot;innertable&quot; width=&quot;100%&quot;> <thead> <tr><th></th><th></th><th align = &quot;center&quot;>TB,LTR</th><th align = &quot;right&quot;></th><th></th><th align = &quot;center&quot;>TB,RTL</th><th></th><th></th><th align = &quot;center&quot;>TL,LTR</th><th></th><th></th><th align = &quot;center&quot;>RL,RTL</th><th></th></tr> <tr><th></th><th>none</th><th>ctrl</th><th>alt|ctrl+alt</th><th>none</th><th>ctrl</th><th>alt|ctrl+alt</th><th>none</th><th>ctrl</th><th>alt|ctrl+alt</th><th>none</th><th>ctrl</th><th>alt|ctrl+alt</th></tr> </thead> <tr><td>leftarrow</td><td>previousCharacter</td><td>previousWord</td><td>previousWord</td><td>nextCharacter</td><td>nextWord</td><td>nextWord</td><td>nextLine</td><td>endOfDocument</td><td>endOfParagraph</td><td>nextLine</td><td>endOfDocument</td><td>endOfParagraph</td></tr> <tr><td>uparrow</td><td>previousLine</td><td>startOfDocument</td><td>startOfParagraph</td><td>previousLine</td><td>startOfDocument</td><td>startOfParagraph</td><td>previousCharacter</td><td>previousWord</td><td>previousWord</td><td>nextCharacter</td><td>nextWord</td><td>nextWord</td></tr> <tr><td>rightarrow</td><td>nextCharacter</td><td>nextWord</td><td>nextWord</td><td>previousCharacter</td><td>previousWord</td><td>previousWord</td><td>previousLine</td><td>startOfDocument</td><td>startOfParagraph</td><td>previousLine</td><td>startOfDocument</td><td>startOfParagraph</td></tr> <tr><td>downarrow</td><td>nextLine</td><td>endOfDocument</td><td>endOfParagraph</td><td>nextLine</td><td>endOfDocument</td><td>endOfParagraph</td><td>nextCharacter</td><td>nextWord</td><td>nextWord</td><td>previousCharacter</td><td>previousWord</td><td>previousWord</td></tr> <tr><td>home</td><td>startOfLine</td><td>startOfDocument</td><td>startOfLine</td><td>startOfLine</td><td>startOfDocument</td><td>startOfLine</td><td>startOfLine</td><td>startOfDocument</td><td>startOfLine</td><td>startOfLine</td><td>startOfDocument</td><td>startOfLine</td></tr> <tr><td>end</td><td>endOfLine</td><td>endOfDocument</td><td>endOfLine</td><td>endOfLine</td><td>endOfDocument</td><td>endOfLine</td><td>endOfLine</td><td>endOfDocument</td><td>endOfLine</td><td>endOfLine</td><td>endOfDocument</td><td>endOfLine</td></tr> <tr><td>pagedown</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td><td>nextPage</td></tr> <tr><td>pageup</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td><td>previousPage</td></tr> </table>  <p><strong>Key:</strong> <ul> <li>none = no modifier</li> <li>ctrl, shift, alt = modifiers</li> <li>alt-key and ctrl+alt-key are the same on all platforms (on some platforms alt-key does not get to the Text Layout Framework (TLF)</li> <li>shift key modifes to extend the active end of the selection in the specified manner</li> <li>TB (top-to-bottom),RL (right-to-left) are textFlow level <code>blockProgression</code> settings</li> <li>LTR (left-to-right),RTL (right-to-left) are textFlow level <code>direction</code> settings</li> <li>next and prev in logical order in the textFlow - the effect in RTL text is that the selection moves in the physical direction</li> </ul></p>",
"tags": [
{  "tagName": "see",
       "values": ["EditManager", "flashx.elements.ITextFlow", "EditManager", "flashx.elements.ITextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.SelectionState",
  "description": "The SelectionState class represents a selection in a text flow.  <p>A selection range has an anchor point, representing the point at which the selection of text began, and an active point, representing the point to which the selection is extended. The active point can be before or after the anchor point in the text. If a selection is modified (for example, by a user shift-clicking with the mouse), the active point changes while the anchor point always remains in the same position.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.ISelectionManager#getSelectionState()", "org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.elements.TextRange", "org.apache.royale.textLayout.edit.ISelectionManager#getSelectionState()", "org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.elements.TextRange"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.SelectionType",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.TextClipboard",
  "description": "The TextClipboard class copies and pastes TextScrap objects to and from the system clipboard.  <p>When you copy a TextScrap to the TextClipboard, the information is copied to the system clipboard in two clipboard formats. One format is an XML string expressing the copied TextScrap object in Text Layout Markup syntax. This clipboard object uses the format name: &quot;TEXT_LAYOUT_MARKUP&quot;. The second format is a plain-text string, which uses the standard Clipboard.TEXT_FORMAT name.</p>  <p>The methods of the TextClipboard class are static functions, you do not need to create an instance of TextClipboard.</p>",
"tags": [
{  "tagName": "see",
       "values": ["flash.desktop.Clipboard", "flash.desktop.Clipboard"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.TextFlowEdit",
  "description": "Encapsulates all methods necessary for dynamic editing of a text.  The methods are all static member functions of this class.",
"tags": [
{  "tagName": "private",
       "values": ["- because we can't make it tlf_internal. Used by the operations package", "- because we can't make it tlf_internal. Used by the operations package"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.TextScrap",
  "description": "The TextScrap class represents a fragment of a text flow.  <p>A TextScrap is a holding place for all or part of a TextFlow. A range of text can be copied from a TextFlow into a TextScrap, and pasted from the TextScrap into another TextFlow.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.edit.SelectionManager", "org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.edit.SelectionManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.mementos.AddElementMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.mementos.BaseMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.mementos.DeleteTextMemento",
  "description": "",
"tags": [
{  "tagName": "royaleignorecoercion",
       "values": ["org.apache.royale.textLayout.elements.IFlowGroupElement", "org.apache.royale.textLayout.elements.IFlowGroupElement"]}  ]},
{ "name": "org.apache.royale.textLayout.edit.mementos.InternalSplitFGEMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.mementos.JoinMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.mementos.MoveElementMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.mementos.RemoveElementsMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.mementos.SplitMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.edit.mementos.TextRangeMemento",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.BackgroundManager",
  "description": "@private Manages bounds calculation and rendering of backgroundColor character format."},
{ "name": "org.apache.royale.textLayout.elements.BreakElement",
  "description": "The BreakElement class defines a line break, which provides for creating a line break in the text without creating a new paragraph. It inserts a U+2028 character in the text of the paragraph.  <p><strong>Note</strong>: This class exists primarily to support break <br/> tags in MXML markup. To create line breaks, you can add newline characters (\\n) directly into the text like this:</p>  <listing version=&quot;3.0&quot; > spanElement1.text += '\\n'; </listing>  In markup, either FXG, TEXT_LAYOUT_FORMAT or MXML, you can simply insert a <br/> where you want the break.",
"tags": [
{  "tagName": "see",
       "values": ["ParagraphElement", "SpanElement", "ParagraphElement", "SpanElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.CellContainer",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.CellCoordinates",
  "description": "Describes the location of table cell by row and column"},
{ "name": "org.apache.royale.textLayout.elements.CellRange",
  "description": "A read only class that describes a range of contiguous table cells. Such a range occurs when you select a section of table cells. The range consists of the anchor point of the selection, <code>anchorPosition</code>, and the point that is to be modified by actions, <code>activePosition</code>.  As block selections are modified and extended <code>anchorPosition</code> remains fixed and <code>activePosition</code> is modified. The anchor position may be placed in the text before or after the active position.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.edit.SelectionState SelectionState", "org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.edit.SelectionState SelectionState"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.ConfigSettings",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.Configuration",
  "description": "The Configuration class is a primary point of integration between the Text Layout Framework and an application. You can include a Configuration object as a parameter to the <code>TextFlow()</code> constructor when you create a new TextFlow instance. It allows the application to initially control how the Text Layout Framework behaves.  <p>The Configuration class allows you to specify initial, paragraph and container formats for the text flow through the <code>textFlowInitialFormat</code> property. It also allows you to specify initial format attributes for links, selection, scrolling, and for handling the Tab and Enter keys.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.ITextLayoutFormat ITextLayoutFormat", "org.apache.royale.textLayout.edit.SelectionFormat SelectionFormat", "TextFlow", "org.apache.royale.textLayout.formats.ITextLayoutFormat ITextLayoutFormat", "org.apache.royale.textLayout.edit.SelectionFormat SelectionFormat", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.ConfigurationHelper",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ContainerFormattedElement",
  "description": "ContainerFormattedElement is the root class for all container-level block elements, such as DivElement and TextFlow objects. Container-level block elements are grouping elements for other FlowElement objects.",
"tags": [
{  "tagName": "see",
       "values": ["DivElement", "TextFlow", "DivElement", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.DivElement",
  "description": "The DivElement class defines an element for grouping paragraphs (ParagraphElement objects). If you want a group of paragraphs to share the same formatting attributes, you can group them in a DivElement object and apply the attributes to it. The paragraphs will inherit the attributes from the DivElement object.",
"tags": [
{  "tagName": "see",
       "values": ["ParagraphElement", "TextFlow", "ParagraphElement", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.ElementConstants",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ElementHelper",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.FlowElement",
  "description": "The text in a flow is stored in tree form with the elements of the tree representing logical divisions within the text. The FlowElement class is the abstract base class of all the objects in this tree. FlowElement objects represent paragraphs, spans of text within paragraphs, and groups of paragraphs.  <p>The root of a composable FlowElement tree is always a TextFlow object. Leaf elements of the tree are always subclasses of the FlowLeafElement class. All leaves arranged in a composable TextFlow have a ParagraphElement ancestor. </p>  <p>You cannot create a FlowElement object directly. Invoking <code>new FlowElement()</code> throws an error exception.</p>",
"tags": [
{  "tagName": "see",
       "values": ["IFlowGroupElement", "FlowLeafElement", "InlineGraphicElement", "ParagraphElement", "SpanElement", "TextFlow", "IFlowGroupElement", "FlowLeafElement", "InlineGraphicElement", "ParagraphElement", "SpanElement", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.FlowGroupElement",
  "description": "The FlowGroupElement class is the base class for FlowElement objects that can have an array of children. These classes include TextFlow, ParagraphElement, DivElement, and LinkElement.  <p>You cannot create a FlowGroupElement object directly. Invoking <code>new FlowGroupElement()</code> throws an error exception.</p>",
"tags": [
{  "tagName": "see",
       "values": ["DivElement", "LinkElement", "ParagraphElement", "TextFlow", "DivElement", "LinkElement", "ParagraphElement", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.FlowGroupHelper",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.FlowLeafElement",
  "description": "Base class for FlowElements that appear at the lowest level of the flow hierarchy. FlowLeafElement objects have no children and include InlineGraphicElement objects and SpanElement objects.",
"tags": [
{  "tagName": "see",
       "values": ["InlineGraphicElement", "SpanElement", "InlineGraphicElement", "SpanElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.FlowValueHolder",
  "description": "This class extends TextLayoutFormat and add capabilities to hold privateData and userStyles.  @private"},
{ "name": "org.apache.royale.textLayout.elements.GlobalSettings",
  "description": "Configuration that applies to all TextFlow objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.IBackgroundManager",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IBreakElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IConfiguration",
  "description": "Read-only interface to a configuration object.  Used by TextFlow to guarantee it has an unchangeable configuration once its constructed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.IContainerFormattedElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IDivElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IExplicitFormatResolver",
  "description": "Interface to a format resolver. Different from IFormatResolver, IExplicitFormatResolver allow you to set &quot;before style&quot; and &quot;after style&quot;. &quot;After Style&quot; can override the local computedFormat explicitly, which can be fetched by calling function resolveExplicitFormat(), &quot;Before Style&quot; is the format returned by function resolveFormat() defined in interface IFormatResolver.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow#formatResolver TextFlow.formatResolver", "org.apache.royale.textLayout.elements.TextFlow#formatResolver TextFlow.formatResolver"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.IFlowElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IFlowGroupElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IFlowLeafElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IFormatResolver",
  "description": "Interface to a format resolver. An implementation allows you to attach a styling mechanism of your choosing, such as Flex CSS styling and named styles, to a ITextFlow.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.ITextFlow#formatResolver ITextFlow.formatResolver", "org.apache.royale.textLayout.elements.ITextFlow#formatResolver ITextFlow.formatResolver"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.IInlineGraphicElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ILinkElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IListElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IListItemElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IParagraphElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.IParagraphFormattedElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ISpanElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ISpecialCharacterElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ISubParagraphGroupElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ISubParagraphGroupElementBase",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITCYElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITableCellElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITableColElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITableColSetter",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITableElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITableFormattedElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITableLeafElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITableRowElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.ITextFlow",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.InlineGraphicElement",
  "description": "The InlineGraphicElement class handles graphic objects that display inline in the text.  <p>You can embed a graphic or any DisplayObject or specify a URl for the location of the graphic. The <code>height</code> and <code>width</code> properties of InlineGraphicElement control the actual size of the graphic to display.  These values also control how much space to allocate for the graphic in the ITextLine object that contains the graphic. The <code>height</code> and <code>width</code> properties each can be one of:</p> <ol> <li>A number of pixels</li> <li>A percent of the measured size of the image</li> <li>The constant, &quot;auto&quot;, which computes the size (Default value)</li> </ol> There are three properties, or accessors, pertaining to the width and height of a graphic: <ul> <li>The <code>width</code> and <code>height</code> properties</li> <li>The <code>measuredWidth</code> and <code>measuredHeight</code> properties, which are the width or height of the graphic at load time</li> <li>The <code>actualWidth</code> and <code>actualHeight</code> properties, which are the actual display and compose width and height of the graphic as computed from <code>width</code> or <code>height</code> and <code>measuredWidth</code> or <code>measuredHeight</code></li> </ul> <p>The values of the <code>actualWidth</code> and <code>actualHeight</code> properties are always zero until the graphic is loaded.</p>  <p>If <code>source</code> is specified as a URI, the graphic is loaded asynchronously. If it's a DisplayObject, TextLayout uses the <code>width</code> and <code>height</code> at the time the graphic is set into the InlineGraphicElement object as <code>measuredHeight</code> and <code>measuredWidth</code>; its width and height are read immediately.</p> <p><strong>Notes</strong>: For graphics that are loaded asynchronously the user must listen for a StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE event on the TextFlow and call <code>IFlowComposer.updateAllControllers()</code> to have the graphic appear. The value of <code>measuredWidth</code> and <code>measuredHeight</code> for graphics that are in the process of loading is zero.</p>  <p>Some inline graphics are animations or videos that possibly have audio. They begin to run the first time they are composed after they finish loading. They don't stop running until the flowComposer on the TextFlow is set to null.  At that time they are stopped and unloaded.</p>  The following restrictions apply to InLineGraphicElement objects: <ol> <li>On export of TLFMarkup, source is converted to a string. If the graphic element is a class, the Text Layout Framework can't export it properly</li>. <li>When doing a copy/paste operation of an InlineGraphicElement, if source can't be used to create a new InLineGraphicElement, it won't be pasted.  For example if source is a DisplayObject, or if the graphic is set directly, it can't be duplicated.  Best results are obtained if the source is the class of an embedded graphic though that doesn't export/import.</li> <li>InLineGraphicElement objects work in the factory (TextFlowTextLineFactory) only if the source is a class or if you explicitly set the graphic to a loaded graphic. InlineGraphic objects that require delayed loads generally do not show up.</li> </ol>",
"tags": [
{  "tagName": "see",
       "values": ["#actualHeight", "#actualWidth", "flash.display.DisplayObject DisplayObject", "org.apache.royale.textLayout.compose.IFlowComposer#updateAllControllers()", "org.apache.royale.textLayout.events.StatusChangeEvent StatusChangeEvent", "TextFlow", "#actualHeight", "#actualWidth", "flash.display.DisplayObject DisplayObject", "org.apache.royale.textLayout.compose.IFlowComposer#updateAllControllers()", "org.apache.royale.textLayout.events.StatusChangeEvent StatusChangeEvent", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.InlineGraphicElementStatus",
  "description": "The InlineGraphicElementStatus class defines a set of constants for checking the value of <code>InlineGraphicElement.status</code>.",
"tags": [
{  "tagName": "see",
       "values": ["InlineGraphicElement#status", "InlineGraphicElement#status"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.LeadingUtils",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.LinkElement",
  "description": "The LinkElement class defines a link to a URI (Universal Resource Identifier), which is executed when the user clicks it. The LinkElement class is a subclass of the SubParagraphGroupElementBase class and it can contain one or more FlowElement objects, such as a SpanElement object that stores the link text. An empty LinkElement, which does not contain a FlowElement object, is ignored.  <p>Normally when clicked the LinkElement will call the <code>flash.net.navigateToURL()</code> method.  A special URI scheme <code>event:</code> is also supported.  This scheme will generate a ITextFlow event that the user may listen to in order to execute AS3 code.  An example is included below.</p>  <p>If you specify a target, it must be one of the following values: <table class=&quot;innertable&quot; width=&quot;100%&quot;> <tr> <th>Target value</th> <th>description</th> </tr> <tr> <td>_self</td> <td>Replaces the current HTML page. If it is in a frame or frameset, it will load within that frame. If it is the full browser, it opens to replace the page from which it came.</td> </tr> <tr> <td>_blank</td> <td>Opens a new browser name with no name.</td> </tr> <tr> <td>_parent</td> <td>Replaces the HTML page from which it came.</td> </tr> <tr> <td>_top</td> <td>Loads in the current browser, replacing anything within it, such as a frameset.</td> </tr> </table> </p>",
"tags": [
{  "tagName": "see",
       "values": ["LinkState", "FlowElement#linkActiveFormat FlowElement.linkActiveFormat", "FlowElement#linkHoverFormat FlowElement.linkHoverFormat", "FlowElement#linkNormalFormat FlowElement.linkNormalFormat", "ITextFlow", "LinkState", "FlowElement#linkActiveFormat FlowElement.linkActiveFormat", "FlowElement#linkHoverFormat FlowElement.linkHoverFormat", "FlowElement#linkNormalFormat FlowElement.linkNormalFormat", "ITextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.LinkState",
  "description": "The LinkState class defines a set of constants for the <code>linkState</code> property of the LinkElement class.",
"tags": [
{  "tagName": "see",
       "values": ["LinkElement#linkState", "LinkElement#linkState"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.ListElement",
  "description": "The List class is used for grouping together items into a numbered or unnumbered list. A ListElement's children may be of type ListItemElement, ListElement, ParagraphElement, or DivElement.  <p>Each ListElement creates a scope with an implicit counter 'ordered'.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.ITextLayoutFormat#listStyleType", "org.apache.royale.textLayout.formats.ITextLayoutFormat#listStylePosition", "org.apache.royale.textLayout.formats.ListMarkerFormat", "org.apache.royale.textLayout.formats.ITextLayoutFormat#listStyleType", "org.apache.royale.textLayout.formats.ITextLayoutFormat#listStylePosition", "org.apache.royale.textLayout.formats.ListMarkerFormat"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.ListItemElement",
  "description": "<p> ListItemElement is an item in a list. It most commonly contains one or more ParagraphElement objects, but could also have children of type DivElement or ListElement. A ListItemElement always appears within a ListElement.</p>  <p>A ListItemElement has automatically generated content that appears before the regular content of the list. This is called the <i>marker</i>, and it is what visually distinguishes the list item. The listStyleType property governs how the marker is generated and allows the user to control whether the list item is marked with a bullet, a number, or alphabetically. The listStylePosition governs where the marker appears relative to the list item; specifically it may appear outside, in the margin of the list, or inside, beside the list item itself. The ListMarkerFormat defines the TextLayoutFormat of the marker (by default this will be the same as the list item), as well as an optional suffix that goes at the end of the marker. For instance, for a numbered list, it is common to have a &quot;.&quot; as a suffix that appears after the number. The ListMarkerFormat also allows specification of text that goes at the start of the marker, and for numbered lists allows control over the numbering.</p>",
"tags": [
{  "tagName": "see",
       "values": ["ParagraphElement", "org.apache.royale.textLayout.formats.ITextLayoutFormat#listStyleType", "org.apache.royale.textLayout.formats.ITextLayoutFormat#listStylePosition", "org.apache.royale.textLayout.formats.ListMarkerFormat", "ParagraphElement", "org.apache.royale.textLayout.formats.ITextLayoutFormat#listStyleType", "org.apache.royale.textLayout.formats.ITextLayoutFormat#listStylePosition", "org.apache.royale.textLayout.formats.ListMarkerFormat"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.OverflowPolicy",
  "description": "The OverflowPolicy class defines a set of constants for the <code>overflowPolicy</code> property of the IConfiguration class. This defines how the composer will treat lines at the end of the composition area.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.ParagraphElement",
  "description": "The ParagraphElement class represents a paragraph in the text flow hierarchy. Its parent is a ParagraphFormattedElement, and its children can include spans (SpanElement), images (inLineGraphicElement), links (LinkElement) and TCY (Tatechuuyoko - ta-tae-chu-yo-ko) elements (TCYElement). The paragraph text is stored in one or more SpanElement objects, which define ranges of text that share the same attributes. A TCYElement object defines a small run of Japanese text that runs perpendicular to the line, as in a horizontal run of text in a vertical line. A TCYElement can also contain multiple spans.",
"tags": [
{  "tagName": "see",
       "values": ["InlineGraphicElement", "LinkElement", "SpanElement", "TCYElement", "ITextFlow", "InlineGraphicElement", "LinkElement", "SpanElement", "TCYElement", "ITextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.ParagraphFormattedElement",
  "description": "The ParagraphFormattedElement class is an abstract base class for FlowElement classes that have paragraph properties.  <p>You cannot create a ParagraphFormattedElement object directly. Invoking <code>new ParagraphFormattedElement()</code> throws an error exception.</p>",
"tags": [
{  "tagName": "see",
       "values": ["ContainerFormattedElement", "ParagraphElement", "ContainerFormattedElement", "ParagraphElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.SpanElement",
  "description": "The SpanElement class represents a run of text that has a single set of formatting attributes applied. SpanElement objects contain the text in a paragraph. A simple paragraph (ParagraphElement) includes one or more SpanElement objects.  <p>A ParagraphElement will have a single SpanElement object if all the text in the paragraph shares the same set of attributes. It has multiple SpanElement objects if the text in the paragraph has multiple formats.</p>",
"tags": [
{  "tagName": "see",
       "values": ["FlowElement", "ParagraphElement", "TextFlow", "FlowElement", "ParagraphElement", "TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.SpecialCharacterElement",
  "description": "The SpecialCharacterElement class is an abstract base class for elements that represent special characters.  <p>You cannot create a SpecialCharacterElement object directly. Invoking <code>new SpecialCharacterElement()</code> throws an error exception.</p>",
"tags": [
{  "tagName": "see",
       "values": ["BreakElement", "TabElement", "BreakElement", "TabElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.SubParagraphGroupElement",
  "description": "The SubParagraphGroupElement is a grouping element for FlowLeafElements and other classes that extend SubParagraphGroupElementBase.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.SubParagraphGroupElement", "org.apache.royale.textLayout.elements.SubParagraphGroupElementBase", "org.apache.royale.textLayout.elements.FlowLeafElement", "org.apache.royale.textLayout.elements.SubParagraphGroupElement", "org.apache.royale.textLayout.elements.SubParagraphGroupElementBase", "org.apache.royale.textLayout.elements.FlowLeafElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.SubParagraphGroupElementBase",
  "description": "The SubParagraphGroupElementBase class groups FlowLeafElements together. A SubParagraphGroupElementBase is a child of a ParagraphElement object and it can contain one or more FlowLeafElement objects as children.",
"tags": [
{  "tagName": "see",
       "values": ["FlowLeafElement", "LinkElement", "ParagraphElement", "TCYElement", "FlowLeafElement", "LinkElement", "ParagraphElement", "TCYElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TCYElement",
  "description": "The TCYElement (Tatechuuyoko - ta-tae-chu-yo-ko) class is a subclass of SubParagraphGroupElementBase that causes text to draw horizontally within a vertical line.  Traditionally, it is used to make small blocks of non-Japanese text or numbers, such as dates, more readable.  TCY can be applied to horizontal text, but has no effect on drawing style unless and until it is turned vertically.  TCY blocks which contain no text will be removed from the text flow during the normalization process. <p> In the example below, the image on the right shows TCY applied to the number 57, while the image on the left has no TCY formatting.</p> <p><img src=&quot;../../../images/textLayout_TCYElement.png&quot; alt=&quot;TCYElement&quot; border=&quot;0&quot;/> </p>",
"tags": [
{  "tagName": "see",
       "values": ["TextFlow", "ParagraphElement", "SpanElement", "TextFlow", "ParagraphElement", "SpanElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TabElement",
  "description": "The TabElement class represents a &lt;tab/&gt; in the text flow. You assign tab stops as an array of TabStopFormat objects to the <code>ParagraphElement.tabStops</code> property.  <p><strong>Note</strong>:This class exists primarily to support &lt;tab/&gt; in MXML markup. You can add tab characters (\\t) directly into the text like this:</p>  <listing version=&quot;3.0&quot; > spanElement1.text += '\\t'; </listing>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TabStopFormat", "FlowElement#tabStops", "SpanElement", "org.apache.royale.textLayout.formats.TabStopFormat", "FlowElement#tabStops", "SpanElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TableBlockContainer",
  "description": "The sprite that contains the table cells."},
{ "name": "org.apache.royale.textLayout.elements.TableBodyElement",
  "description": "<p> TableBodyElement is an item in a TableElement. It most commonly contains one or more TableRowElement objects, A TableBodyElement always appears within a TableElement.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TableCellElement",
  "description": "TableCellElement is an item in a TableElement. It most commonly contains one or more ParagraphElement objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TableColElement",
  "description": "<p> TableColElement is an item in a TableElement. It only contains the information of the column formats, A TableColElement always appears within a TableElement, TableColGroupElement.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TableColGroupElement",
  "description": "<p> TableColGroupElement is an item in a TableElement. It most commonly contains one or more ParagraphElement objects, A TableRowElement always appears within a TableElement.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TableDataCellElement",
  "description": "<p> TableDataCellElement is an item in a TableRowElement. It most commonly contains one or more IParagraphElement objects, A TableDataCellElement always appears within a TableRowElement.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TableElement",
  "description": "The TableElement class is used for grouping together items into a table. A TableElement's children must be of type TableRowElement, TableColElement, TableColGroupElement, TableBodyElement.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TableFormattedElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.TableLeafElement",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.TableRowElement",
  "description": "TableRowElement is an item in a TableElement. It most commonly contains one or more TableCellElement objects, A TableRowElement always appears within a TableElement, TableBodyElement.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TextFlow",
  "description": "The TextFlow class is responsible for managing all the text content of a story. In TextLayout, text is stored in a hierarchical tree of elements. TextFlow is the root object of the element tree. All elements on the tree derive from the base class, FlowElement.  <p>A TextFlow object can have ParagraphElement, ListElement and DivElement objects as children. A div (DivElement object) represents a group of paragraphs (ParagraphElement objects). A ListElement contains ListItemElement objects which in turn contain one or more ParagraphElement objects. A paragraph can have SpanElement, InlineGraphicElement, LinkElement, and TCYElement objects as children.</p>  <p>A span (SpanElement) is a range of text in a paragraph that has the same attributes. An image (InlineGraphicElement) represents an arbitrary graphic that appears as a single character in a line of text. A LinkElement represents a hyperlink, or HTML <code>a</code> tag, and it can contain multiple spans. A TCYElement object is used in Japanese text when there is a small run of text that appears perpendicular to the line, as in a horizontal run within a vertical line. A TCYElement also can contain multiple spans.</p>  <p>TextFlow also derives from the ContainerFormattedElement class, which is the root class for all container-level block elements.</p> <p>The following illustration shows the relationship of other elements, such as spans and paragraphs, to the TextFlow object.</p> <p><img src=&quot;../../../images/textLayout_textFlowHierarchy.gif&quot; alt=&quot;example TextFlow hierarchy&quot;></img></p>  <p>Each TextFlow object has a corresponding Configuration object that allows you to specify initial character and paragraph formats and the initial container format. It also allows you to specify attributes for selection, links, focus, and scrolling. When you supply a Configuration object as parameter to the <code>TextFlow()</code> constructor, it creates a read-only snapshot that you can access through the <code>TextFlow.configuration</code> property. After creation, you can't change the TextFlow's configuration. If you do not specify a Configuration, you can access the default configuration through the <code>TextFlow.defaultConfiguration</code> property.</p>",
"tags": [
{  "tagName": "see",
       "values": ["#configuration", "IConfiguration", "DivElement", "FlowElement", "IFlowGroupElement", "FlowLeafElement", "org.apache.royale.textLayout.compose.IFlowComposer IFlowComposer", "ParagraphElement", "SpanElement", "#configuration", "IConfiguration", "DivElement", "FlowElement", "IFlowGroupElement", "FlowLeafElement", "org.apache.royale.textLayout.compose.IFlowComposer IFlowComposer", "ParagraphElement", "SpanElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.TextRange",
  "description": "A read only class that describes a range of contiguous text. Such a range occurs when you select a section of text. The range consists of the anchor point of the selection, <code>anchorPosition</code>, and the point that is to be modified by actions, <code>activePosition</code>.  As block selections are modified and extended <code>anchorPosition</code> remains fixed and <code>activePosition</code> is modified. The anchor position may be placed in the text before or after the active position.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.edit.SelectionState SelectionState", "org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.edit.SelectionState SelectionState"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.elements.utils.BackgroundHelper",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.utils.GeometricElementUtils",
  "description": ""},
{ "name": "org.apache.royale.textLayout.elements.utils.ParagraphHelper",
  "description": ""},
{ "name": "org.apache.royale.textLayout.events.ActivateEvent",
  "description": ""},
{ "name": "org.apache.royale.textLayout.events.CompositionCompleteEvent",
  "description": "A ITextFlow instance dispatches this event after a compose operation completes. Each text container has two states: composition and display. This event notifies you when the composition phase has ended. This provides an opportunity to make any necessary and appropriate changes to the container before you display the text. For example, you can use this event to add highlighting of certain words or characters in the text flow before the text is displayed.  <p>The three main methods that dispatch this event are <code>compose()</code>, <code>updateToController()</code>, and <code>updateAllControllers()</code>. All three of these methods are in the StandardFlowComposer class.</p>  <p><strong>Note: </strong>If the event is dispatched by the <code>updateAllControllers()</code> method, do not call <code>updateAllControllers()</code> again in your event handler function. Such a call would be a recursive call because the <code>updateAllControllers()</code> method executes both the composition and display steps. The <code>updateAllControllers()</code> dispatches this event after composition completes, but before the display step executes. The same reasoning applies to the <code>updateToController()</code> method. </p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.ITextFlow", "org.apache.royale.textLayout.elements.ITextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.ContextMenuEvent",
  "description": ""},
{ "name": "org.apache.royale.textLayout.events.DamageEvent",
  "description": "A TextFlow instance dispatches this each time it is marked as damaged.  Damage can be caused by changes to the model or changes to the layout.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.elements.TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.EditEvent",
  "description": ""},
{ "name": "org.apache.royale.textLayout.events.FlowElementEventDispatcher",
  "description": "The ElementEventDispatcher class adds a simple tracking counter for event listeners to the core EventDispatcher class. This variable is tlf_internal, so internal code can check quickly if an EventDispatcher has any listeners attached at all."},
{ "name": "org.apache.royale.textLayout.events.FlowElementMouseEvent",
  "description": "A link element dispatches this event when it detects mouse activity. The Text Layout Framework includes this special version of mouse events because mouse events are generally unwanted when a flow element is embedded in an editable text flow, and because link elements are not in the display list (they are not DisplayObjects). <p>You can add an event listener to a link element to listen for this type of event. If you choose to cancel the event by calling <code>Event.preventDefault()</code>, the default behavior associated with the event will not occur. </p> <p>If you choose not to add an event listener to the link element, or your event listener function does not cancel the behavior, the event is again dispatched, but this time by the link element's associated TextFlow instance rather than by the link element itself. This provides a second opportunity to listen for this event with an event listener attached to the TextFlow. </p> <p>FlowElementMouseEvents are dispatched only when the text cannot be edited or when the control key is pressed concurrently with the mouse activity.</p> <p> The following six event types are dispatched only when the text cannot be edited or when the control key is pressed: <ul> <li><code>FlowElementMouseEvent.CLICK</code></li> <li><code>FlowElementMouseEvent.MOUSE_DOWN</code></li> <li><code>FlowElementMouseEvent.MOUSE_UP</code></li> <li><code>FlowElementMouseEvent.MOUSE_MOVE</code></li> <li><code>FlowElementMouseEvent.ROLL_OVER</code></li> <li><code>FlowElementMouseEvent.ROLL_OUT</code></li> </ul> </p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.LinkElement", "org.apache.royale.events.MouseEvent", "org.apache.royale.textLayout.elements.LinkElement", "org.apache.royale.events.MouseEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.FlowElementMouseEventManager",
  "description": "The ElementMouseEventManager class provides mouse element processing for visible FlowElements. The caller calls updateHitTests(), which traverses the FlowElement tree in the given character range, and collects hit test rectangles for FlowElements with active event mirrors, and LinkElements. The latter class exposes a number of mouse event handlers that this class calls directly. If no character range is supplied, the class makes an educated guess about the visible character range by inspecting the TextLine instances connected to the container widget as children.  In edit mode, moving the mouse over the element and clicking it should not activate it, but rather allow for editing. Passing in the value true as an argument to updateHitTests() requires the Ctrl key to be held down in order to pass mouse events on the FlowElements. If the user presses or releases the Ctrl key while the mouse is over the container widget (and the pressing of the Ctrl key is required for activation, the class simulates mouseOut and mouseOver events to inform the FlowElement underneath about the change. The class dispatches only FlowElementMouseEvents.  This class emits click events if the main mouse button is pressed and released over the same FlowElement.  The owner may choose to forward several mouse and keyboard events to this class so it does not need to listen to these events at the container itself. The constructor takes an array of event names that this class needs to listen to itself. The events that this class needs to listen to are MouseEvent.MOUSE_OVER, MouseEvent.MOUSE_OUT, MouseEvent.MOUSE_DOWN, MouseEvent.MOUSE_UP, MouseEvent.MOUSE_MOVE, KeyboardEvent.KEY_DOWN, and KeyboardEvent.KEY_UP. Note that MouseEvent.CLICK is not needed."},
{ "name": "org.apache.royale.textLayout.events.FlowOperationEvent",
  "description": "A TextFlow instance dispatches this event just before an operation commences and again just after an operation completes. Although the event object dispatched in both cases is an instance of FlowOperationEvent, the events dispatched before and after an operation differ in significant ways.  <p>Before any operation is carried out, a TextFlow object dispatches a FlowOperationEvent with its <code>type</code> property set to <code>FlowOperationEvent.FLOW_OPERATION_BEGIN.</code> You can determine what type of operation is about to commence by checking the <code>operation</code> property. Events of type FLOW_OPERATION_BEGIN are cancellable, which means that if you decide that the operation should not proceed, you can call <code>Event.PreventDefault()</code> to cancel the operation. If you cancel the operation, the operation is not performed and the FLOW_OPERATION_END event is not dispatched. You may also choose to call back into the EditManager to do another operation before the operation that triggered the event is done. If you do this, the operations you initiate in your event handler will be undone as a single operation with the operation that triggered the event.</p>  <p>If you allow the operation to proceed, TextFlow will dispatch a FlowOperationEvent upon completion of the operation with its <code>type</code> property set to <code>FlowOperationEvent.FLOW_OPERATION_END</code>. This event is dispatched before Flash Player throws any errors that may have occurred as a result of the operation. This gives you an opportunity to process the error before Flash Player throws the error. You can access the error through the event's <code>error</code> property. If you choose to handle the error in your event handler, you can prevent Flash Player from throwing the error by cancelling the FLOW_OPERATION_END event by calling <code>Event.preventDefault()</code>. You may also choose to call back into the EditManager to do some additional operations. If you do this, the operations that result will be undone as a unit with the operation that triggered the event. </p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.operations.FlowOperation", "org.apache.royale.textLayout.operations.FlowOperation"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.FocusEvent",
  "description": ""},
{ "name": "org.apache.royale.textLayout.events.ModelChange",
  "description": "ModelChange values.  These are various types of model change. @private"},
{ "name": "org.apache.royale.textLayout.events.ScrollEvent",
  "description": "Represents events that are dispatched when the TextFlow does automatic scrolling.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.ScrollEventDirection",
  "description": "Constants for the values of the <code>direction</code> property of a ScrollEvent.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.events.ScrollEvent", "org.apache.royale.textLayout.events.ScrollEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.0", "AIR 2.0", "Flash 10.0", "AIR 2.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.SelectionEvent",
  "description": "A TextFlow instance dispatches a SelectionEvent object when an EditManager or SelectionManager changes or selects a range of text. For example, this event is dispatched not only when a range of text is selected, but also when the selection changes because the user clicks elsewhere in the text flow. Moreover, this event is also dispatched when an EditManager changes the text or text formatting within a range of text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.StatusChangeEvent",
  "description": "A TextFlow instance dispatches this event when the status of a FlowElement changes. This event can be used to detect when an inline graphic element has completed loading. You can use your event handler to recompose the text flow based on the presence of the newly loaded inline graphic element.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.TextLayoutEvent",
  "description": "A TextLayoutEvent instance represents an event, such as the <code>TextLayoutEvent.SCROLL</code> event, that does not require custom properties. <p>A scroll event is represented by a TextLayoutEvent instance with its <code>type</code> property set to <code>TextLayoutEvent.SCROLL</code>. A class specifically for scroll events is not necessary because there are no custom properties for a scroll event, as there are for the other events that have specific event classes. If a new text layout event is needed, and the event does not require custom properties, the new event will also be represented by a TextLayoutEvent object, but with its <code>type</code> property set to a new static constant. </p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.events.UpdateCompleteEvent",
  "description": "A TextFlow instance dispatches this event after any of its containers completes an update. Each text container has two states: composition and display. This event notifies you when the display phase has ended. This provides an opportunity to make any necessary changes to the container when it is ready to be displayed, but hasn't yet been painted to the screen.  using the UpdateCompleteEvent, so I have included it as the class example instead of creating a new example. I've updated the description of the DamageEvent_example file to include prominent mention of the UpdateCompleteEvent.",
"tags": [
{  "tagName": "internal",
       "values": ["Note: the DamageEvent_example class contains a good example of", "Note: the DamageEvent_example class contains a good example of"]},
    {  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.elements.TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.factory.FactoryBackgroundManager",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.INumberLineFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.IStringTextLineFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.ITLFFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.ITextLineFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.NumberLineFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.StandardTLFFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.StringTextLineFactory",
  "description": "The StringTextLineFactory class provides a simple way to create TextLines from a string.  <p>The text lines are static and are created using a single format and a single paragraph. The lines are created to fit in the specified bounding rectangle.</p>  <p>The StringTextLineFactory provides an efficient way to create TextLines, since it reuses single TextFlow, ParagraphElement, SpanElement, and ContainerController objects across many repeated invocations. You can create a single factory, and use it again and again. You can also reuse all the parts that are the same each time you call it; for instance, you can reuse the various formats and the bounds.</p>  <p><b>Note:</b> To create static lines that use multiple formats or paragraphs, or that include inline graphics, use a TextFlowTextLineFactory and a TextFlow object. </p>  <p><b>Note:</b> The StringTextLineFactory ignores the truncationIndicatorFormat property set in the truncationOptions when truncating text.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.factory.TextFlowTextLineFactory TextFlowTextLineFactory", "org.apache.royale.textLayout.factory.TextFlowTextLineFactory TextFlowTextLineFactory"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.factory.TCMTextFlowTextLineFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.TLFFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.factory.TextFlowTextLineFactory",
  "description": "The TextFlowTextLineFactory class provides a simple way to create TextLines for displaying text from a text flow.  <p>The text lines are static and created fit in a single bounding rectangle, but can have multiple paragraphs and formats as well as inline graphics. To create ITextLine objects directly from a string, use StringTextLineFactory.</p>  <p><b>Note:</b> When using inline graphics, the <code>source</code> property of the InlineGraphicElement object must either be an instance of a DisplayObject or a Class object representing an embedded asset. URLRequest objects cannot be used. The width and height of the inline graphic at the time the line is created is used to compose the flow. </p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.factory.StringTextLineFactory StringTextLineFactory", "org.apache.royale.textLayout.elements.TextFlow TextFlow", "org.apache.royale.textLayout.factory.StringTextLineFactory StringTextLineFactory"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.factory.TextLineFactoryBase",
  "description": "The TextLineFactoryBase class serves as the base class for the Text Layout Framework text line factories.  <p><b>Note:</b> Application code does not typically need to create or use a TextLineFactoryBase object directly. Use one of the derived text factory classes instead.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TextFlow", "org.apache.royale.textLayout.elements.TextFlow"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.factory.TruncationOptions",
  "description": "The TruncationOptions class specifies options for limiting the number of lines of text created by a text line factory and for indicating when lines have been left out.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.BackgroundColor",
  "description": "Defines a constant for specifying that the value of the <code>backgroundColor</code> property of the <code>TextLayoutFormat</code> class is &quot;transparent&quot;.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat#backgroundColor TextLayoutFormat.backgroundColor", "org.apache.royale.textLayout.formats.TextLayoutFormat#backgroundColor TextLayoutFormat.backgroundColor"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.BaselineOffset",
  "description": "Defines values for the <code>firstBaselineOffset</code> property of the <code>TextLayoutFormat</code> and <code>ContainerFormattedElement</code> classes. Determines the offset from the top inset of the container to the baseline of the first line. Baseline offset may be specified as the ascent of the line, the height of the line, or an auto generated amount. <p> <img src=&quot;../../../images/textLayout_FBO1.jpg&quot; alt=&quot;firstBaselineOffset_1&quot; border=&quot;0&quot;/> <img src=&quot;../../../images/textLayout_FBO2.jpg&quot; alt=&quot;firstBaselineOffset_2&quot; border=&quot;0&quot;/> <img src=&quot;../../../images/textLayout_FBO3.jpg&quot; alt=&quot;firstBaselineOffset_3&quot; border=&quot;0&quot;/> <img src=&quot;../../../images/textLayout_FBO4.jpg&quot; alt=&quot;firstBaselineOffset_4&quot; border=&quot;0&quot;/> </p>",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#firstBaselineOffset", "TextLayoutFormat#firstBaselineOffset"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.BaselineShift",
  "description": "Defines constants for specifying subscript or superscript in the <code>baselineShift</code> property of the <code>TextLayoutFormat</code> class. You can specify baseline shift as an absolute pixel offset, a percentage of the current point size, or the constants SUPERSCRIPT or SUBSCRIPT. Positive values shift the line up for horizontal text (right for vertical) and negative values shift it down for horizontal (left for vertical).",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat#baselineShift TextLayoutFormat.baselineShift", "org.apache.royale.textLayout.formats.TextLayoutFormat#baselineShift TextLayoutFormat.baselineShift"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.BlockProgression",
  "description": "Defines values for the <code>blockProgression</code> property of the <code>TextLayouFormat</code> class. BlockProgression specifies the direction in which lines are placed in the container.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat#blockProgression TextLayoutFormat.blockProgression", "org.apache.royale.textLayout.formats.TextLayoutFormat#blockProgression TextLayoutFormat.blockProgression"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.BorderColor",
  "description": "Defines a constant for specifying that the value of the <code>borderColor</code> property of the <code>TextLayoutFormat</code> class is &quot;transparent&quot;.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat#borderColor TextLayoutFormat.borderColor", "org.apache.royale.textLayout.formats.TextLayoutFormat#borderColor TextLayoutFormat.borderColor"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.BorderStyle",
  "description": "Defines a constant for specifying that the value of the <code>borderStyle</code> property of the <code>TextLayoutFormat</code> class.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat#borderStyle TextLayoutFormat.borderStyle", "org.apache.royale.textLayout.formats.TextLayoutFormat#borderStyle TextLayoutFormat.borderStyle"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.BreakStyle",
  "description": "",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.Category",
  "description": "Property categories",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.ClearFloats",
  "description": "Defines values for setting the <code>clear</code> property of the <code>TextLayoutFormat</code> class. This property controls how text wraps around floats.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.InlineGraphicElement#float", "TextLayoutFormat#clear", "org.apache.royale.textLayout.elements.InlineGraphicElement#float", "TextLayoutFormat#clear"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.ColorName",
  "description": "Defines a constant for specifying that the value of the <code>color</code> property of the <code>TextLayoutFormat</code> class is &quot;transparent&quot;.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat#color TextLayoutFormat.color", "org.apache.royale.textLayout.formats.TextLayoutFormat#color TextLayoutFormat.color"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.Direction",
  "description": "Defines values for setting the <code>direction</code> property of the <code>TextLayoutFormat</code> class. Left-to-right reading order is used in Latin-style scripts. Right-to-left reading order is used with scripts such as Arabic or Hebrew.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#direction", "TextLayoutFormat#direction"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.Float",
  "description": "Defines values for the <code>float</code> property of the InlineGraphicElement class.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.InlineGrapicElement", "org.apache.royale.textLayout.elements.InlineGrapicElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.FormatValue",
  "description": "Defines values for specifying that a formatting property is to inherit its parent's value or have it's value generated automatically. The <code>INHERIT</code> constant specifies that a property inherits its parent's value while the <code>AUTO</code> constant specifies that an internal algorithm automatically determine the property's value. As one example, you can set <code>TextLayoutFormat.columnWidth</code> using these values. Typically, a property's description indicates whether it accepts these constants.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat TextLayoutFormat", "org.apache.royale.textLayout.formats.TextLayoutFormat TextLayoutFormat"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.IListMarkerFormat",
  "description": "This interface provides read access to ListMarkerFormat properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.IMEStatus",
  "description": "Used internally for specifying the status of clauses in IME text during an IME text entry session.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.ITabStopFormat",
  "description": "This interface provides read access to tab stop-related properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.ITextLayoutFormat",
  "description": "This interface provides read access to FlowElements-related properties.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.JustificationRule",
  "description": "Defines values for setting the <code>justificationRule</code> property of the TextLayoutFormat class. Default value is SPACE, which accomplishes justification by adding extra space to the space characters. When you use EAST_ASIAN, Japanese style leading is employed, which applies bottom-down as opposed to top-up, which is used in Roman text. The spacing of punctuation is also different. In the Roman version, the comma and Japanese periods take a full character's width but only half in East Asian. Additionally, the spacing between sequential punctuation marks becomes tighter, obeying traditional East Asian typographic conventions. Also note the leading, applied to the second line of the paragraphs in the example below. In the East Asian version, the last two lines push left. In the Roman version, the second and following lines push left. <p><img src=&quot;../../../images/textLayout_justificationrule.png&quot; alt=&quot;justificationRule&quot; /></p>",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#justificationRule", "TextLayoutFormat#justificationRule"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.LeadingModel",
  "description": "Defines values for setting the <code>leadingModel</code> property of the <code>TextLayoutFormat</code> class, composed of valid combinations of leading basis and leading direction. Leading basis describes which baselines determine the leading (or <code>lineHeight</code>) of lines in a paragraph. Leading direction specifies whether the <code>lineHeight</code> property refers to the distance of a line's baseline from that of the line before it or the line after it. <p> <img src=&quot;../../../images/textLayout_baselines.jpg&quot; alt=&quot;baselines&quot; border=&quot;0&quot;/> <img src=&quot;../../../images/textLayout_LD1.jpg&quot; alt=&quot;leadingDirection_1&quot; border=&quot;0&quot;/> <img src=&quot;../../../images/textLayout_LD2.jpg&quot; alt=&quot;leadingDirection_2&quot; border=&quot;0&quot;/> <img src=&quot;../../../images/textLayout_LD3.jpg&quot; alt=&quot;leadingDirection_3&quot; border=&quot;0&quot;/> </p>",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#leadingModel", "TextLayoutFormat#lineHeight", "flash.text.TextField", "org.apache.royale.text.engine.TextLine", "TextLayoutFormat#leadingModel", "TextLayoutFormat#lineHeight", "flash.text.TextField", "org.apache.royale.text.engine.TextLine"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.LineBreak",
  "description": "Defines values for setting the <code>lineBreak</code> property of <code>TextLayoutFormat</code> to specify how lines are broken within wrapping text.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#linebreak", "TextLayoutFormat#linebreak"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.ListMarkerFormat",
  "description": "Defines the marker format in a ListItemElement.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.ListItemElement", "org.apache.royale.textLayout.elements.ListItemElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.ListStylePosition",
  "description": "Defines values for setting the <code>listStylePosition</code> property. These values control the placement of a list item marker relative to the list item.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#listStylePosition", "TextLayoutFormat#listStylePosition"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.ListStyleType",
  "description": "Defines values for setting the <code>listStyleType</code> property of a TextLayoutFormat object. These values are used for controlling the appearance of items in a list.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#listStyleType", "TextLayoutFormat#listStyleType"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.Suffix",
  "description": "Defines values for setting the <code>suffix</code> property of a ListMarkerFormat.",
"tags": [
{  "tagName": "see",
       "values": ["ListMarkerFormat#suffix", "ListMarkerFormat#suffix"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TLFTypographicCase",
  "description": "Defines values for the <code>typographicCase</code> property of the TextLayoutFormat class.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#typographicCase", "TextLayoutFormat#typographicCase"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TabStopFormat",
  "description": "The TabStopFormat class represents the properties of a tab stop in a paragraph. You can set the <code>TextLayoutFormat.tabstops</code> property to an array of TabStopFormat objects.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TabElement", "org.apache.royale.textLayout.formats.TextLayoutFormat#tabStops", "org.apache.royale.textLayout.elements.TabElement", "org.apache.royale.textLayout.formats.TextLayoutFormat#tabStops"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TableFrame",
  "description": "Defines values for the <code>TableFrame</code> property of the TextLayoutFormat class. Specifies which sides of the frame surrounding a table will be visible.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#TableFrame", "TextLayoutFormat#TableFrame"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TableRules",
  "description": "Defines values for the <code>TableRules</code> property of the TextLayoutFormat class. Specifies which rules will appear between cells within a table. The rendering of rules is user agent dependent.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#TableRules", "TextLayoutFormat#TableRules"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TextAlign",
  "description": "Defines values for setting the <code>textAlign</code> and <code>textAlignLast</code> properties of the TextLayoutFormat class. The values describe the alignment of lines in the paragraph relative to the container.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#textAlign", "TextLayoutFormat#textAlignLast", "TextLayoutFormat#textAlign", "TextLayoutFormat#textAlignLast"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TextDecoration",
  "description": "Defines values for the <code>textDecoration</code> property of the TextLayoutFormat class. The values specify either normal text, with no decoration, or underline.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#textDecoration", "TextLayoutFormat#textDecoration"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TextJustify",
  "description": "Defines values for setting the <code>textJustify</code> property of the TextLayoutFormat class. Default value is INTER_WORD, meaning that extra space in justification is added to the space characters. DISTRIBUTE specifies that extra space is added both to space characters and between individual letters. Use these values only when setting <code>justificationRule</code> to SPACE.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#textJustify", "TextLayoutFormat#justificationRule", "TextLayoutFormat#textJustify", "TextLayoutFormat#justificationRule"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TextLayoutFormat",
  "description": "The TextLayoutFormat class holds all of the text layout properties. These properties affect the format and style of a text flow at the container level, paragraph level, and text level.  Both the ContainerController class and the FlowElement base class have <code>format</code> properties that enable you to assign a TextLayoutFormat instance to them. Assign a TextLayoutFormat object to a container to affect the format of all of the container's content. Assign a TextLayoutFormat object to a FlowElement descendant to specify formatting for that particular element: TextFlow, ParagraphElement, DivElement, SpanElement, InlineGraphicElement, LinkElement, and TCYElement. In addition to the <code>format</code> property, these classes also define each of the individual TextLayoutFormat properties so that you can override the setting of a particular style property for that element, if you wish. <p>Because you can set a given style at multiple levels, it is possible to have conflicts. For example, the color of the text at the TextFlow level could be set to black while a SpanElement object sets it to blue. The general rule is that the setting at the lowest level on the text flow tree takes precedence. So if the ligature level is set for a TextFlow instance and also set for a DivElement, the DivElement setting takes precedence. </p><p>Cascading styles refers to the process of adopting styles from a higher level in the text flow if a style value is undefined at a lower level. When a style is undefined on an element at the point it is about to be rendered, it either takes its default value or the value cascades or descends from the value on a parent element. For example, if the transparency (<code>textAlpha</code> property) of the text is undefined on a SpanElement object, but is set on the TextFlow, the value of the <code>TextFlow.textAlpha</code> property cascades to the SpanElement object and is applied to the text for that span. The result of the cascade, or the sum of the styles that is applied to the element, is stored in the element's <code>computedFormat</code> property.</p><p>In the same way, you can apply user styles using the <code>userStyles</code> property of the ContainerController and FlowElement classes. This  property allows you to read or write a dictionary of user styles and apply its settings to a container or a text flow element. The user styles dictionary is an object that consists of <em>stylename-value</em> pairs. Styles specified by the <code>userStyles</code> property take precedence over all others.</p><p>Most styles that are undefined inherit the value of their immediate parent during a cascade. A small number of styles, however, do not inherit their parent�s value and take on their default values instead.</p><p><strong>Style properties that adopt their default values, if undefined, include:</strong> <code>backgroundAlpha</code>, <code>backgroundColor</code>, <code>columnCount</code>, <code>columnGap</code>, <code>columnWidth</code>, <code>lineBreak</code>, <code>paddingBottom</code>, <code>paddingLeft</code>, <code>paddingRight</code>, <code>paddingTop</code>, <code>verticalAlign</code></p>.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.FlowElement#format", "org.apache.royale.textLayout.factory.TextFlowTextLineFactory", "org.apache.royale.textLayout.elements.FlowElement#format", "org.apache.royale.textLayout.factory.TextFlowTextLineFactory"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.TextLayoutFormatBase",
  "description": ""},
{ "name": "org.apache.royale.textLayout.formats.VerticalAlign",
  "description": "Defines values for the <code>verticalAlign</code> property of the TextLayoutFormat class. Specifies how TextFlow elements align with their containers.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#verticalAlign", "TextLayoutFormat#verticalAlign"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.formats.WhiteSpaceCollapse",
  "description": "Defines values for setting the <code>whiteSpaceCollapse</code> property of the <code>TextLayoutFormat</code> class.",
"tags": [
{  "tagName": "see",
       "values": ["TextLayoutFormat#whiteSpaceCollapse", "TextLayoutFormat#whiteSpaceCollapse"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyElementIDOperation",
  "description": "The ChangeElementIDOperation class encapsulates an element ID change.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.FlowElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.FlowElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyElementStyleNameOperation",
  "description": "The ApplyElementStyleNameOperation class encapsulates a style name change.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.FlowElement#styleName", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.FlowElement#styleName", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyElementTypeNameOperation",
  "description": "The ApplyElementTypeNameOperation class encapsulates a type name change.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.FlowElement#typeName", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.FlowElement#typeName", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyElementUserStyleOperation",
  "description": "The ApplyElementUserStyleOperation class encapsulates a change in a style value of an element.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.FlowElement#userStyles", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.FlowElement#userStyles", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyFormatOperation",
  "description": "The ApplyFormatOperation class encapsulates a style change.  <p>An ApplyFormatOperation applies the leaf format to the text in the specified range (no change is made if the specified range is a single point). It applies the paragraph format to any paragraphs at least partially within the range (or a single paragraph if the range is a single point). And it applies the container format to any containers at least partially within the range (or a single container if the range is a single point).</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyFormatToElementOperation",
  "description": "The ApplyFormatToElementOperation class encapsulates a style change to an element.  <p>This operation applies one or more formats to a flow element.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.formats.TextLayoutFormat", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.formats.TextLayoutFormat", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyLinkOperation",
  "description": "The ApplyLinkOperation class encapsulates a link creation or modification operation.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.LinkElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.LinkElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ApplyTCYOperation",
  "description": "The ApplyTCYOperation class encapsulates a TCY transformation.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.TCYElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.TCYElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ClearFormatOnElementOperation",
  "description": "The ClearFormatOnElementOperation class encapsulates a style change to an element.  <p>This operation undefines one or more formats to a flow element.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.formats.TextLayoutFormat", "org.apache.royale.textLayout.events.FlowOperationEvent", "ApplyFormatToElementOperation", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.formats.TextLayoutFormat", "org.apache.royale.textLayout.events.FlowOperationEvent", "ApplyFormatToElementOperation"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ClearFormatOperation",
  "description": "The ClearFormatOperation class encapsulates a way to undefine formats.  <p>An UndefineFormatOperation undefines properties set in the leaf format to the text in the specified range (no change is made if the specified range is a single point). It undefines properties set in the paragraph format to any paragraphs at least partially within the range (or a single paragraph if the range is a single point). And it undefines properties set in the container format to any containers at least partially within the range (or a single container if the range is a single point).</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.CompositeOperation",
  "description": "The CompositeOperation class encapsulates a group of transformations managed as a unit.  <p>The CompositeOperation class provides a grouping mechanism for combining multiple FlowOperations into a single atomic operation. Grouping operations allows them to be undone and redone as a unit. For example, several single character inserts followed by several backspaces can be undone together as if they were a single operation. Grouping also provides a mechanism for representing complex operations. For example, a replace operation that modifies more than one text ranges can be represented and managed as a single composite operation.</p>  <p><b>Note:</b> It can be more efficient to merge individual atomic operations rather than to combine separate operations into a group. For example, several sequential character inserts can easily be represented as a single insert operation, and undoing or redoing that single operation is more efficient than undoing or redoing a group of insert operations.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.CopyOperation",
  "description": "The CopyOperation class encapsulates a copy operation.  <p><b>Note:</b> The operation is responsible for copying the text scrap to the clipboard. Undonig a copy operation does not restore the original clipboard state.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.CreateDivOperation",
  "description": "The CreateDivOperation class encapsulates creating IDivElement",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.CreateListOperation",
  "description": "The CreateListOperation class encapsulates creating list",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.CreateSubParagraphGroupOperation",
  "description": "The CreateSPGEOperation class encapsulates creating a SubPargraphGroupElement",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.CutOperation",
  "description": "The CutOperation class encapsulates a cut operation.  <p>The specified range is removed from the text flow.</p>  <p><b>Note:</b> The edit manager is responsible for copying the text scrap to the clipboard. Undoing a cut operation does not restore the original clipboard state.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.DeleteTextOperation",
  "description": "The DeleteTextOperation class encapsulates the deletion of a range of text.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.FlowElementOperation",
  "description": "The FlowElementOperation class is the base class for operations that transform a FlowElement.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.formats.TextLayoutFormat", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.formats.TextLayoutFormat", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.FlowOperation",
  "description": "The FlowOperation class is the base class for all Text Layout Framework operations.  <p>Operations are transformations of a text flow. An Operation class defines the logic for performing and undoing the transformation. Operations are executed by an edit manager. Most applications do not need to create or manage operations directly (unless implementing a custom edit manager).</p>  <p>When an operation is performed, the edit manager dispatches an Operation object within the FlowOperationEvent object. You can query this Operation object to decide whether or not to allow the operation, to decide whether to perform some other operation as well, or to update related user-interface elements.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.FlowTextOperation",
  "description": "The FlowTextOperation is the base class for operations that transform a range of text.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.edit.EditManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.InsertInlineGraphicOperation",
  "description": "The InsertInlineGraphicOperation class encapsulates the insertion of an inline graphic into a text flow.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.IInlineGraphicElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.IInlineGraphicElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.InsertTableElementOperation",
  "description": ""},
{ "name": "org.apache.royale.textLayout.operations.InsertTextOperation",
  "description": "The InsertTextOperation class encapsulates a text insertion operation.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.ModifyInlineGraphicOperation",
  "description": "The InsertInlineGraphicOperation class encapsulates the modification of an existing inline graphic.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.InlineGraphicElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.InlineGraphicElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.MoveChildrenOperation",
  "description": "The MoveChildrenOperation class allows moving a set of siblings out of its immediate parent chain, and the operation removes any empty ancestor chain left behind.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.FlowElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.FlowElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.PasteOperation",
  "description": "The PasteOperation class encapsulates a paste operation.  <p>The specified range is replaced by the new content.</p>  <p><b>Note:</b> The edit manager is responsible for copying the contents of the clipboard.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.RedoOperation",
  "description": "The RedoOperation class encapsulates a redo operation.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.SplitElementOperation",
  "description": "The SplitElementOperation class encapsulates a change that splits any IFlowGroupElement into two elements.  This operation splits target at operationState.absoluteStart.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.ParagraphElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.ParagraphElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.SplitParagraphOperation",
  "description": "The SplitParagraphOperation class encapsulates a change that splits a paragraph into two elements.  <p>The operation creates a new paragraph containing the text from the specified position to the end of the paragraph. If a range of text is specified, the text in the range is deleted first.</p>",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.elements.ParagraphElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.elements.ParagraphElement", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.operations.UndoOperation",
  "description": "The UndoOperation class encapsulates an undo operation.",
"tags": [
{  "tagName": "see",
       "values": ["org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent", "org.apache.royale.textLayout.edit.EditManager", "org.apache.royale.textLayout.events.FlowOperationEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.property.ArrayProperty",
  "description": "A property description with an Array value.@private"},
{ "name": "org.apache.royale.textLayout.property.BooleanPropertyHandler",
  "description": "A property description with a Boolean value. @private"},
{ "name": "org.apache.royale.textLayout.property.CounterContentHandler",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.CounterPropHandler",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.EnumPropertyHandler",
  "description": "An property description with an enumerated string as its value. @private"},
{ "name": "org.apache.royale.textLayout.property.FormatPropertyHandler",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.IntPropertyHandler",
  "description": "A property description with a Number as its value. @private"},
{ "name": "org.apache.royale.textLayout.property.NumberPropertyHandler",
  "description": "A property description with a Number as its value. @private"},
{ "name": "org.apache.royale.textLayout.property.PercentPropertyHandler",
  "description": "A property description with a Number or a Percent as its value. @private"},
{ "name": "org.apache.royale.textLayout.property.PropConst",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.Property",
  "description": "Base class of property metadata.  Each property in the various TextLayout attributes structures has a metadata singletion Property class instance.  The instance can be used to process the property to and from xml, find out range information and help with the attribute cascade.  The Property class also contains static functions"},
{ "name": "org.apache.royale.textLayout.property.PropertyFactory",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.PropertyHandler",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.PropertyUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.SpacingLimitPropertyHandler",
  "description": ""},
{ "name": "org.apache.royale.textLayout.property.StringPropertyHandler",
  "description": "A property handler with a String as its value @private"},
{ "name": "org.apache.royale.textLayout.property.TabStopsProperty",
  "description": "Property for tab stops. Extends ArrayProperty; setter takes a string representation of tab stops in addition to an array. @private"},
{ "name": "org.apache.royale.textLayout.property.UintPropertyHandler",
  "description": "A property description with an unsigned integer as its value.  Typically used for color. @private"},
{ "name": "org.apache.royale.textLayout.property.UndefinedPropertyHandler",
  "description": "An property description with an enumerated string as its value. @private"},
{ "name": "org.apache.royale.textLayout.utils.BackgroundUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.utils.CharacterUtil",
  "description": "Utilities for managing and getting information about characters. The methods of this class are static and must be called using the syntax <code>CharacterUtil.method(<em>parameter</em>)</code>.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.utils.ComposeUtils",
  "description": ""},
{ "name": "org.apache.royale.textLayout.utils.ConfigUtils",
  "description": ""},
{ "name": "org.apache.royale.textLayout.utils.CreateTLFUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.utils.FactoryUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.utils.GeometryUtil",
  "description": "Utilities for getting information about text geometry and bounds. The methods of this class are static and must be called using the syntax <code>GeometryUtil.method(<em>parameter</em>)</code>.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.utils.HitTestArea",
  "description": "The HitTestArea class is a lightweight implementation of the Warnock algorithm for rectangles. It is used for hit-testing in FlowElements, which may contain multiple child elements. The algorithm attempts to set the logical midpoint to be outside of a bounding rectangle to avoid having to split too many rectangles. Note that the code is optimized for non-overlapping rectangles; the determination of the logical midpoint does not work well for overlapping rectangles because the algorithm breaks once it found a rectangle that contains the geometric midpoint.  The pseudocode for this algorithm is:  if !(point in this rectangle) return false; if !(hasKids) return true; determine the quadrant where the point is in (top left &quot;tl&quot;, top right &quot;tr&quot;, bottom left &quot;bl&quot;, or bottom right &quot;br&quot;); if this[quadrant] == null, return false; // no rectangle covers this area else return this[quadrant].hitTest(x,y);  To avoid having to create a 4-element array for the four quadrants, the code constructs the property name and accesses the property with dynamic lookup."},
{ "name": "org.apache.royale.textLayout.utils.LocaleUtil",
  "description": "Utilities for managing and getting information about Locale based defaults. The methods of this class are static and must be called using the syntax <code>LocaleUtil.method(<em>parameter</em>)</code>.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.utils.NavigationUtil",
  "description": "Utilities for manipulating a TextRange The methods of this class are static and must be called using the syntax <code>NavigationUtil.method(<em>parameter</em>)</code>.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.textLayout.utils.NumberFactoryUtil",
  "description": ""},
{ "name": "org.apache.royale.textLayout.utils.Twips",
  "description": "@private Internally, we work with Twips, which we consider to be 1/20 of a pixel. This is the same measurement as used within FTE (see the kTwipsPerPixel constant in flash/core/edittext.h).  Note that conversion between Pixels and Twips does not round-trip due to the loss of precision in the conversion to Twips."},
{ "name": "org.apache.royale.utils.AbsoluteLayoutTweener",
  "description": ""},
{ "name": "org.apache.royale.utils.AnimationUtil",
  "description": "The AnimationUtil class wraps callbacks to be called when the platform is ready for the next draw. (requestAnimationFrame in HTML and ENTER_FRAME in Flash)",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.Base64",
  "description": "Implementation derived from: https://sociodox.com/base64.html available under MIT License.  By: Jean-Philippe Auclair : http://jpauclair.net Based on article: http://jpauclair.net/2010/01/09/base64-optimized-as3-lib/ Benchmark: This version: encode: 260ms decode: 255ms Blog version: encode: 322ms decode: 694ms as3Crypto encode: 6728ms decode: 4098ms  Encode: com.sociodox.utils.Base64 is 25.8x faster than as3Crypto Base64 Decode: com.sociodox.utils.Base64 is 16x faster than as3Crypto Base64  Optimize & Profile any Flash content with TheMiner ( http://www.sociodox.com/theminer )"},
{ "name": "org.apache.royale.utils.BinaryData",
  "description": "The BinaryData class is a class that represents binary data.  The way browsers handle binary data varies.  This class abstracts those differences..",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.BrowserInfo",
  "description": "The BrowserInfo class is a convenience class for getting info about the current browser environment. It uses browser sniffing which is generally considered a fragile way to get this info, but it's the best we have. You cannot instantiate your own instance of a BrowserInfo. To get the current environment use `BrowserInfo.current()` This will return a static instance which represents your current browser environment. This class contains blank values on Flash.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.BrowserUtils",
  "description": "The BrowserUtils class has convenience methods abstracting differences in executing browser code in Flash and HTML.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7.0", "Royale 0.7.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.CSSBorderUtils",
  "description": "The CSSBorderUtils class is shared code for getting the styles regarding borders and drawing one.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.CSSUtils",
  "description": "The CSSUtils class is a collection of static functions that provide utility features for managing CSS values.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.ClassSelectorList",
  "description": "The ClassSelectorList class is used to manage the list of class selectors applied to a component.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 2.6", "Flash 9", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.ColorUtil",
  "description": "The ColorUtil class is an all-static class with methods for working with RGB colors within Royale. You do not create instances of ColorUtil; instead you simply call static methods such as the <code>ColorUtil.adjustBrightness()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.CompressionUtils",
  "description": ""},
{ "name": "org.apache.royale.utils.DisplayUtils",
  "description": "The SpriteUtils class is a collection of static functions that are useful for geometric operations on visible objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7", "Royale 0.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.EffectTimer",
  "description": "The Timer class dispatches events based on a delay and repeat count.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.Endian",
  "description": "The endianness of the byte data.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7.0", "Royale 0.7.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.HSV",
  "description": "The HSV class stores colors in HSV format",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.utils.HTMLLoader",
  "description": "The Timer class dispatches events based on a delay and repeat count.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.IBinaryDataInput",
  "description": ""},
{ "name": "org.apache.royale.utils.IBinaryDataOutput",
  "description": ""},
{ "name": "org.apache.royale.utils.IClassSelectorListSupport",
  "description": "The IClassSelectorList interface stablish the contract methods for componnets that use ClassSelectorList to deal with class selector names",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.3", "Royale 0.9.3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.IEffectsGenerator",
  "description": "The IEffectsGenerator interface is the basic interface for classes generating tweener effects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.IEmphasis",
  "description": "The IEmphasis is the interface a jewel control implements to get diferent jewel look and feels. Jewel has PRIMARY, SECONDARY and EMPHASIZED emphasis look and feels.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.IntUtil",
  "description": "Contains reusable methods for operations pertaining to int values."},
{ "name": "org.apache.royale.utils.JXON",
  "description": "JXON is a lightweight class for parsing and using simple XML. It gives access to children in the XML tree as an array of `children`. Attributes are an object `attribute` with the attribute key/value pairs. Namespaces are completely ignored. If you need more functionality such as E4X and advanced filtering, use the XML and XMLList classes instead. To parse XML, use JXON.parse(xmlStr) where xmlStr is a string of your XML.",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.utils.LayoutTweener",
  "description": "",
"tags": [
{  "tagName": "author",
       "values": ["Yishay", "Yishay"]}  ]},
{ "name": "org.apache.royale.utils.LocaleUtils",
  "description": "The LocaleUtils class is an all-static class with methods for getting informatiojn about the locale. You do not create instances of LocaleUtils; instead you call methods such as the <code>LocaleUtils.getLocale()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 0.0", "Royale 1.0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.MD5",
  "description": ""},
{ "name": "org.apache.royale.utils.MXMLDataInterpreter",
  "description": "The MXMLDataInterpreter class is the class that interprets the encoded information generated by the compiler that describes the contents of an MXML document.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "royaleignoreimport",
       "values": ["goog.bind", "goog.bind"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.MixinManager",
  "description": "The MixinManager class is the class that instantiates mixins linked into the application.  Mixins are classes with [Mixin] metadata and are often linked in via the -includes option.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.MockContentView",
  "description": ""},
{ "name": "org.apache.royale.utils.MockLayoutChild",
  "description": ""},
{ "name": "org.apache.royale.utils.MockLayoutHost",
  "description": ""},
{ "name": "org.apache.royale.utils.MockLayoutParent",
  "description": ""},
{ "name": "org.apache.royale.utils.MockParent",
  "description": ""},
{ "name": "org.apache.royale.utils.MoveGenerator",
  "description": ""},
{ "name": "org.apache.royale.utils.OSUtils",
  "description": "The OSUtils class is an all-static class with methods for getting information about the host operating system. You do not create instances of OSUtils; instead you call methods such as the <code>OSUtils.getOS()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 0.0", "Royale 1.0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.ObjectMap",
  "description": "The ObjectMap class is a hash class which supports weak keys and object keys on systems which support it. This includes Flash and most modern browsers. For browsers which do not support Map and WeakMap, it falls back to simple object hashes.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.1", "Royale 0.9.1"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.ObjectUtil",
  "description": "The ObjectUtil class contains static utility methods for analyzing and manipulating Objects. You do not create instances of ObjectUtil; instead you call methods such as the <code>ObjectUtil.toString(var)</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 0.0", "Royale 1.0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.PNGEncoder",
  "description": "The PNGEncoder class converts raw bitmap images into encoded images using Portable Network Graphics (PNG) lossless compression.  <p>For the PNG specification, see http://www.w3.org/TR/PNG/</p>.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 1.0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.PointUtils",
  "description": "The PointUtils class is a collection of static functions that convert Points between coordinate spaces.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.Proxy",
  "description": "The Proxy class calls methods when properties are set and read and deleted.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.ResizeGenerator",
  "description": ""},
{ "name": "org.apache.royale.utils.SolidBorderUtil",
  "description": "The SolidBorderUtil class is a utility class that draws a solid color border of a specified color, thickness and alpha.  This class is used to composite Flash equivalents of JS entities and has no JS equivalent.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.StringPadder",
  "description": "The StringPadder utility class is an all-static class with methods for working with String objects. You do not create instances of StringPadder; instead you call methods such as the <code>StringPadder.pad()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 0.0", "Royale 1.0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.StringTrimmer",
  "description": "The StringTrimmer class is a collection of static functions that provide utility features for trimming whitespace off Strings.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.StringUtil",
  "description": "The StringUtil utility class is an all-static class with methods for working with String objects. You do not create instances of StringUtil; instead you call methods such as the <code>StringUtil.substitute()</code> method.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 0.0", "Royale 1.0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.Timer",
  "description": "The Timer class dispatches events based on a delay and repeat count.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.UIDUtil",
  "description": "The UIDUtil class is an all-static class with methods for working with UIDs (unique identifiers) within Royale. You do not create instances of UIDUtil; instead you simply call static methods such as the <code>UIDUtil.createUID()</code> method.  <p><b>Note</b>: If you have a dynamic object that has no [Bindable] properties (which force the object to implement the IUID interface), Royale adds an internal property that contains a UID to the object. To avoid having this field in your dynamic object, make it [Bindable], implement the IUID interface in the object class, or set a <coded>uid</coded> property with a value.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Royale 1.0.0", "Royale 0.0", "Royale 1.0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.UIModuleUtils",
  "description": "The UIModuleUtils class can load a UIModule.",
"tags": [
{  "tagName": "toplevel",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.UIUtils",
  "description": "The UIUtils class is a collection of static functions that provide utility features to UIBase objects.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.URLUtils",
  "description": "The URLUtils class is a collection of static functions that wrap dealing with object URLs in the browser.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.7", "Royale 0.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.ViewSourceContextMenuOption",
  "description": "The ViewSourceContextMenuOption class is a class that implements the &quot;View Source&quot; option in Flash for a Royale application.  There is no JS equivalent as browsers always display source.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.async.AsyncTask",
  "description": ""},
{ "name": "org.apache.royale.utils.async.CompoundAsyncTask",
  "description": "The CompoundAsyncTask class allows running a number of AsyncTasks in parallel and resolves when they are done.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.6", "Royale 0.9.6"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.async.SequentialAsyncTask",
  "description": "The SequentialAsyncTask runs a list of tasks in sequential order. Each sunsequent task is only run once the previous task is done. The previous task is used as the argument for the next task's run method. This enables the chaining of results."},
{ "name": "org.apache.royale.utils.dbg.DOMPathUtil",
  "description": "The DOMPathUtil class is a tracks instances of display objects and provides a unique string for each one based on its position in the tree of display objects.  It is generally used for trace output.  If you think you need this for production applications you might want to re-think your design.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.net.IDataInput",
  "description": ""},
{ "name": "org.apache.royale.utils.net.IDataOutput",
  "description": ""},
{ "name": "org.apache.royale.utils.net.IDynamicPropertyOutput",
  "description": "This interface controls the serialization of dynamic properties of dynamic objects. You use this interface with the IDynamicPropertyWriter interface to create an implementation for configuring serialization of dynamic objects.  This interface is a placeholder for SWF, and cannot be used to with native serialization, because the native class (e.g. ByteArray) that supports serialization does not implement this interface (and that cannot change)"},
{ "name": "org.apache.royale.utils.net.IDynamicPropertyWriter",
  "description": "This interface controls the serialization of dynamic properties of dynamic objects. This interface is used with the IDynamicPropertyOutput interface to control the serialization of dynamic properties of dynamic objects. To use this interface, assign an object that implements the IDynamicPropertyWriter interface to the AMFObjectEncoding.dynamicPropertyWriter property."},
{ "name": "org.apache.royale.utils.net.IExternalizable",
  "description": ""},
{ "name": "org.apache.royale.utils.string.Base64",
  "description": "Base64 encoding/decoding that works cross browsers",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.undo.IOperation",
  "description": "IOperation defines the interface for operations that can be undone and redone.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.undo.IUndoManager",
  "description": "IUndoManager defines the interface for managing the undo and redo stacks.  <p>An undo manager maintains a stack of operations that can be undone and redone.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.utils.undo.UndoManager",
  "description": "The UndoManager class manages the history of editing operations on a text flow so that these operations can be undone and redone.  <p>The undo manager maintains two stacks of IOperation objects. When a reversible operation is executed, it is placed on the undo stack. If that operation is undone, it is removed from the undo stack, reversed, and placed on the redo stack. Likewise, if that operation is then redone, it is removed from the redo stack, re-executed, and then placed onto the undo stack again. If another operation is executed first, the redo stack is cleared.</p>  <p>If the TextFlow is modified directly (not via calls to the edit manager, but directly via calls to the managed FlowElement objects), then the edit manager clears the undo stack to prevent the stack from getting out of sync with the current state.</p>",
"tags": [
{  "tagName": "see",
       "values": ["flashx.textLayout.edit.EditManager", "flashx.textLayout.edit.EditManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.collections.ComplexSortField",
  "description": ""},
{ "name": "spark.collections.Sort",
  "description": "Provides the sorting information required to establish a sort on an existing view (<code>ICollectionView</code> interface or class that implements the interface). After you assign a <code>Sort</code> instance to the view's <code>sort</code> property, you must call the view's <code>refresh()</code> method to apply the sort criteria.  <p>Typically the sort is defined for collections of complex items, that is collections in which the sort is performed on one or more properties of the objects in the collection. The following example shows this use:</p> <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n // In the real world, the collection would have more than one item.\\n col.addItem({first:&quot;Anders&quot;, last:&quot;Dickerson&quot;});\\n \\n // Create the Sort instance.\\n var sort:ISort = new Sort();\\n \\n // Set the sort field; sort on the last name first, first name second.\\n var sortfieldLastName:ISortField = new SortField(&quot;last&quot;,true);\\n var sortfieldFirstName:ISortField = new SortField(&quot;first&quot;,true);\\n \\n // Set the locale style to &quot;en-US&quot; to cause the strings\\n // to be ordered according to the rules for English as used in the USA.\\n sortfieldLastName.setStyle(&quot;locale&quot;,&quot;en-US&quot;);\\n sortfieldFirstName.setStyle(&quot;locale&quot;,&quot;en-US&quot;);\\n sort.fields = [sortfieldLastName, sortfieldFirstName];\\n \\n // Assign the Sort object to the view.\\n col.sort = sort;\\n \\n // Apply the sort to the collection.\\n col.refresh();\\n </code></pre>  <p>There are situations in which the collection contains simple items, like <code>String</code>, <code>Date</code>, <code>Boolean</code>, etc. In this case, apply the sort to the simple type directly. When constructing a sort for simple items, use a single sort field, and specify a <code>null</code> <code>name</code> (first) parameter in the SortField object constructor. For example: <pre><code>\\n import mx.collections.ArrayCollection;\\n import spark.collections.Sort;\\n import spark.collections.SortField;\\n \\n var col:ICollectionView = new ArrayCollection();\\n col.addItem(&quot;California&quot;);\\n col.addItem(&quot;Arizona&quot;);\\n var sort:Sort = new Sort();\\n \\n // There is only one sort field, so use a <code>null</code>\\n // first parameter.\\n var sortfield:SortField = new SortField(&quot;null&quot;,true);\\n \\n // Set the locale style to &quot;en-US&quot; to set the language for the sort.\\n sortfield.setStyle(&quot;locale&quot;,&quot;en-US&quot;);\\n sort.fields = [sortfield];\\n col.sort = sort;\\n col.refresh();\\n </code></pre> </p>  <p>The Flex implementations of the <code>ICollectionView</code> interface retrieve all items from a remote location before executing a sort. If you use paging with a sorted list, apply the sort to the remote collection before you retrieve the data. </p>  <p>The default comparison provided by the <code>SortField</code> class provides correct language-specific sorting for strings. The language is selected by setting the locale style on an instance of the class in one of the following ways: </p> <ul> <li> By using the class in an MXML declaration and inheriting the locale from the document that contains the declaration. </li> Example: <pre>\\n &lt;fx:Declarations&gt; <br>\\n &lt;s:SortField id=&quot;sf&quot; /&gt; <br>\\n &lt;/fx:Declarations&gt;\\n </pre> <li> By using an MXML declaration and specifying the locale value in the list of assignments. </li> Example: <pre>\\n &lt;fx:Declarations&gt; <br>\\n &lt;s:SortField id=&quot;sf_SimplifiedChinese&quot; locale=&quot;zh-Hans-CN&quot; /&gt; <br>\\n &lt;/fx:Declarations&gt;\\n </pre> <li> Calling the <code>setStyle</code> method, e.g. <code>sf.setStyle(&quot;locale&quot;, &quot;zh-Hans-CN&quot;)</code> </li> <li> Inheriting the style from a <code>UIComponent</code> by calling the UIComponent's <code>addStyleClient()</code> method. </li> </ul>  Note: to prevent problems like <a href=&quot;https://issues.apache.org/jira/browse/FLEX-34853&quot;>FLEX-34853</a> it is recommended to use SortField instances as immutable objects (by not changing their state).   <p>The <code>&lt;s:Sort&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;s:Sort\\n <b>Properties</b>\\n compareFunction=&quot;<em>Internal compare function</em>&quot;\\n fields=&quot;null&quot;\\n unique=&quot;false | true&quot;\\n /&gt;\\n </pre>  <p>In case items have inconsistent data types or items have complex data types, the use of the default built-in compare functions is not recommended. Inconsistent sorting results may occur in such cases. To avoid such problem, provide a custom compare function and/or make the item types consistent.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SortExample1.mxml", "examples/SortExample2.mxml", "examples/SortExample1.mxml", "examples/SortExample2.mxml"]},
    {  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "spark.collections.SortField", "mx.collections.ICollectionView", "spark.collections.SortField"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.1", "AIR 2.5", "Flash 10.1", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.collections.SortField",
  "description": "Provides the sorting information required to establish a sort on a field or property in a collection view.  The SortField class is meant to be used with the Sort class.  Typically the sort is defined for collections of complex items, that is items in which the sort is performed on properties of those objects. As in the following example:  <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem({first:&quot;Anders&quot;, last:&quot;Dickerson&quot;});\\n var sort:Sort = new Sort();\\n var sortfield:SortField = new SortField(&quot;first&quot;, true);\\n sortfield.setStyle(&quot;locale&quot;, &quot;en-US&quot;);\\n sort.fields = [sortfield];\\n col.sort = sort;\\n </code></pre>  There are situations in which the collection contains simple items, like <code>String</code>, <code>Date</code>, <code>Boolean</code>, etc. In this case, sorting should be applied to the simple type directly. When constructing a sort for this situation only a single sort field is required and should not have a <code>name</code> specified. For example:  <pre><code>\\n var col:ICollectionView = new ArrayCollection();\\n col.addItem(&quot;California&quot;);\\n col.addItem(&quot;Arizona&quot;);\\n var sort:Sort = new Sort();\\n var sortfield:SortField = new SortField(null, true);\\n sortfield.setStyle(&quot;locale&quot;, &quot;en-US&quot;);\\n sort.fields = [sortfield];\\n col.sort = sort;\\n </code></pre>  <p>The default comparison provided by the <code>SortField</code> class provides correct language specific sorting for strings. The language is selected by the setting the locale style on an instance of the class in one of the following ways: </p> <ul> <li> By using the class in an MXML declaration and inheriting the locale from the document that contains the declaration. </li> Example: <pre>\\n &lt;fx:Declarations&gt; <br>\\n &lt;s:SortField id=&quot;sf&quot; /&gt; <br>\\n &lt;/fx:Declarations&gt;\\n </pre> <li> By using an MXML declaration and specifying the locale value in the list of assignments. </li> Example: <pre>\\n &lt;fx:Declarations&gt; <br>\\n &lt;s:SortField id=&quot;sf_SimplifiedChinese&quot; locale=&quot;zh-Hans-CN&quot; /&gt; <br>\\n &lt;/fx:Declarations&gt;\\n </pre> <li> Calling the <code>setStyle</code> method, e.g. <code>sf.setStyle(&quot;locale&quot;, &quot;zh-Hans-CN&quot;)</code> </li> <li> Inheriting the style from a <code>UIComponent</code> by calling the UIComponent's <code>addStyleClient()</code> method. </li> </ul>  Note: to prevent problems like <a href=&quot;https://issues.apache.org/jira/browse/FLEX-34853&quot;>FLEX-34853</a> it is recommended to use SortField instances as immutable objects (by not changing their state).   <p>The <code>&lt;s:SortField&gt;</code> tag has the following attributes:</p>  <pre>\\n &lt;s:SortField\\n <b>Properties</b>\\n compareFunction=&quot;<em>Internal compare function</em>&quot;\\n descending=&quot;false&quot;\\n name=&quot;null&quot;\\n numeric=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SortExample1.mxml", "examples/SortExample2.mxml", "examples/SortExample1.mxml", "examples/SortExample2.mxml"]},
    {  "tagName": "see",
       "values": ["mx.collections.ICollectionView", "spark.collections.Sort", "mx.collections.ICollectionView", "spark.collections.Sort"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10.1", "AIR 2.5", "Flash 10.1", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.collections.SubListView",
  "description": "A &quot;view&quot; of a contiguous IList interval that begins at startIndex and extends for count items.  The list item index parameter for IList methods like getItemAt(index) are defined relative to this SubListView.   For example the SubListView definition of getItemAt(0) is defined as list.getItemAt(startIndex).  Similarly returned index values and the location CollectionEvent property are defined relative to the SubListView.   In all other respects paraters, return values, and events, have the same semantics as defined for IList.  This class is internal to the Grid implementation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 11", "AIR 3", "Flash 11", "AIR 3"]},
    {  "tagName": "productversion",
       "values": ["Flex 5.0*", "Flex 5.0*"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Application",
  "description": "Flex defines a default, or Application, container that lets you start adding content to your application without explicitly defining another container.  <p>The Application container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>375 pixels high and 500 pixels wide in the Standalone Flash Player, and all available space in a browser</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels wide and 0 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>No limit</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.ApplicationSkin</td> </tr> </table>   <p>The <code>&lt;s:Application&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Application\\n <strong>Properties</strong>\\n applicationDPI=<i>Device dependent</i>&quot;\\n backgroundColor=&quot;0xFFFFFF&quot;\\n colorCorrection=&quot;default&quot;\\n controlBarContent=&quot;null&quot;\\n controlBarLayout=&quot;HorizontalLayout&quot;\\n controlBarVisible=&quot;true&quot;\\n frameRate=&quot;24&quot;\\n pageTitle&quot;&quot;\\n preloader=&quot;<i>No default</i>&quot;\\n preloaderChromeColor=&quot;<i>No default</i>&quot;\\n resizeForSoftKeyboard=true&quot;\\n runtimeDPIProvider=&quot;RuntimeDPIProvider&quot;\\n scriptRecursionLimit=&quot;1000&quot;\\n scriptTimeLimit=&quot;60&quot;\\n splashScreenImage=&quot;&quot;\\n splashScreenMinimumDisplayTime=&quot;1000&quot;\\n splashScreenScaleMode=&quot;none&quot;\\n usePreloader=&quot;true&quot;\\n viewSourceURL=&quot;&quot;\\n xmlns:<i>No default</i>=&quot;<i>No default</i>&quot;\\n \\n <strong>Events</strong>\\n applicationComplete=&quot;<i>No default</i>&quot;\\n error=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ApplicationContainerExample.mxml", "examples/ApplicationContainerExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.ApplicationSkin", "spark.skins.spark.ApplicationSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.BorderContainer",
  "description": "The BorderContainer class defines a set of CSS styles that control the appearance of the border and background fill of the container.  <p><b>Note: </b>Because you use CSS styles and class properties to control the appearance of the BorderContainer, you typically do not create a custom skin for it. If you do create a custom skin, your skin class should apply any styles to control the appearance of the container.</p>  <p>By default, the stroke of the border is rounded. If you do not want rounded corners, set the <code>joints</code> property of the stroke to <code>JointStyle.MITER</code>. </p>  <p>The BorderContainer container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>112 pixels wide by 112 pixels high</td></tr> <tr><td>Minimum size</td><td>30 pixels wide by 30 pixels high</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> <tr><td>Default skin class</td><td>spark.skins.spark.BorderContainerSkin</td></tr> </table>   <p>The <code>&lt;s:BorderContainer&gt;</code> tag inherits all the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;s:BorderContainer\\n <b>Properties</b>\\n backgroundFill=&quot;null&quot;\\n borderStroke=&quot;null&quot;\\n \\n <b>Styles</b>\\n backgroundImage=&quot;undefined&quot;\\n backgroundImageFillMode=&quot;scale&quot;\\n borderAlpha=&quot;1.0&quot;\\n borderColor=&quot;0xB7BABC&quot;\\n borderStyle=&quot;solid&quot;\\n borderVisible=&quot;true&quot;\\n borderWeight=&quot;1&quot;\\n cornerRadius=&quot;0&quot;\\n dropShadowVisible=&quot;false&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/BorderContainerExample.mxml", "examples/BorderContainerExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.BorderContainerSkin", "spark.skins.spark.BorderContainerSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Button",
  "description": "The Button component is a commonly used rectangular button. The Button component looks like it can be pressed. The default skin has a text label. Define a custom skin class to add an image to the control.  <p>Buttons typically use event listeners to perform an action when the user selects the control. When a user clicks the mouse on a Button control, and the Button control is enabled, it dispatches a <code>click</code> event and a <code>buttonDown</code> event. A button always dispatches events such as the <code>mouseMove</code>, <code>mouseOver</code>, <code>mouseOut</code>, <code>rollOver</code>, <code>rollOut</code>, <code>mouseDown</code>, and <code>mouseUp</code> events whether enabled or disabled.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The Button control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to display the text label of the control</td> </tr> <tr> <td>Minimum size</td> <td>21 pixels wide and 21 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.ButtonSkin</td> </tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Button\\n <strong>Properties</strong>\\n emphasized=&quot;false&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ButtonExample.mxml", "examples/ButtonExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.ButtonSkin", "spark.skins.spark.ButtonSkin"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:Button&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:Button&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.ButtonBar",
  "description": "The ButtonBar control defines a horizontal group of logically related buttons with a common look and navigation.  <p>The typical use for a button bar is for grouping a set of related buttons together, which gives them a common look and navigation, and handling the logic for the <code>change</code> event in a single place. </p>  <p>The ButtonBar control creates Button controls based on the value of its <code>dataProvider</code> property. Use methods such as <code>addItem()</code> and <code>removeItem()</code> to manipulate the <code>dataProvider</code> property to add and remove data items. The ButtonBar control automatically adds or removes the necessary children based on changes to the <code>dataProvider</code> property.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>For non-mobile projects, you can use the ButtonBar control to set the active child of a ViewStack container, as the following example shows:</p>  <p><b>Note: </b>The Spark list-based controls (the Spark ListBase class and its subclasses such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class as the value of the <code>layout</code> property. Do not use BasicLayout with the Spark list-based controls.</p>  <pre>\\n &lt;s:ButtonBar dataProvider=&quot;{myViewStack}&quot; requireSelection=&quot;true&quot; /&gt;\\n \\n &lt;mx:ViewStack id=&quot;myViewStack&quot;\\n borderStyle=&quot;solid&quot;&gt;\\n \\n &lt;s:NavigatorContent id=&quot;search&quot; label=&quot;Search&quot;&gt;\\n &lt;s:Label text=&quot;Search Screen&quot;/&gt;\\n &lt;/s:NavigatorContent&gt;\\n \\n &lt;s:NavigatorContent id=&quot;custInfo&quot; label=&quot;Customer Info&quot;&gt;\\n &lt;s:Label text=&quot;Customer Info&quot;/&gt;\\n &lt;/s:NavigatorContent&gt;\\n \\n &lt;s:NavigatorContent id=&quot;accountInfo&quot; label=&quot;Account Info&quot;&gt;\\n &lt;s:Label text=&quot;Account Info&quot;/&gt;\\n &lt;/s:NavigatorContent&gt;\\n &lt;/mx:ViewStack&gt; </pre>  <p>The ButtonBar control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display all buttons</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>No limit</td></tr> <tr><td>Default skin class</td><td>spark.skins.spark.ButtonBarSkin</td></tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:ButtonBar\\n \\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ButtonBarExample.mxml", "examples/ButtonBarExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.ViewStack", "spark.components.ButtonBarButton", "spark.skins.spark.ButtonBarSkin", "mx.containers.ViewStack", "spark.components.ButtonBarButton", "spark.skins.spark.ButtonBarSkin"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:ButtonBar&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:ButtonBar&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.components.CheckBox",
  "description": "The CheckBox component consists of an optional label and a small box that can contain a check mark or not.  <p>When a user clicks a CheckBox component or its associated text, the CheckBox component sets its <code>selected</code> property to <code>true</code> for checked, and to <code>false</code> for unchecked.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The CheckBox control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to display the text label of the control</td> </tr> <tr> <td>Minimum size</td> <td>18 pixels wide and 18 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.CheckBoxSkin</td> </tr> </table>   <p>The <code>&lt;s:CheckBox&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following attributes:</p> <pre>\\n &lt;s:CheckBox\\n <strong>Properties</strong>\\n symbolColor=&quot;0x000000&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/CheckBoxExample.mxml", "examples/CheckBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.CheckBoxSkin", "spark.skins.spark.CheckBoxSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.ComboBox",
  "description": "The ComboBox control is a child class of the DropDownListBase control. Like the DropDownListBase control, when the user selects an item from the drop-down list in the ComboBox control, the data item appears in the prompt area of the control.  <p>One difference between the controls is that the prompt area of the ComboBox control is implemented by using the TextInput control, instead of the Label control for the DropDownList control. Therefore, a user can edit the prompt area of the control to enter a value that is not one of the predefined options.</p>  <p>For example, the DropDownList control only lets the user select from a list of predefined items in the control. The ComboBox control lets the user either select a predefined item, or enter a new item into the prompt area. When the user enters a new item, the <code>selectedIndex</code> property is set to -3. Your application can recognize that a new item has been entered and, optionally, add it to the list of items in the control.</p>  <p>The ComboBox control also searches the item list as the user enters characters into the prompt area. As the user enters characters, the drop-down area of the control opens. It then scrolls to and highlights the closest match in the item list.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p><b>Note: </b>The Spark list-based controls (the Spark ListBase class and its subclasses such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class as the value of the <code>layout</code> property. Do not use BasicLayout with the Spark list-based controls.</p>  <p>The ComboBox control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>146 pixels wide by 23 pixels high</td> </tr> <tr> <td>Minimum size</td> <td>20 pixels wide by 23 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.ComboBoxSkin <p>spark.skins.spark.ComboBoxTextInputSkin</p></td> </tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:ComboBox\\n <strong>Properties</strong>\\n itemMatchingFunction=&quot;null&quot;\\n labelToItemFunction=&quot;null&quot;\\n maxChars=&quot;0&quot;\\n openOnInput=&quot;true&quot;\\n prompt=&quot;null&quot;\\n restrict=&quot;&quot;\\n \\n <strong>Styles</strong>\\n paddingBottom=&quot;3&quot;\\n paddingLeft=&quot;3&quot;\\n paddingRight=&quot;3&quot;\\n paddingTop=&quot;5&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ComboBoxExample.mxml", "examples/ComboBoxExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.ComboBoxSkin", "spark.skins.spark.ComboBoxTextInputSkin", "spark.skins.spark.ComboBoxSkin", "spark.skins.spark.ComboBoxTextInputSkin"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:ComboBox&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:ComboBox&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.DataGrid",
  "description": "The DataGrid displays a row of column headings above a scrollable grid. The grid is arranged as a collection of individual cells arranged in rows and columns. The DataGrid control is designed to support smooth scrolling through large numbers of rows and columns.  <p>The Spark DataGrid control is implemented as a skinnable wrapper around the Spark Grid control. The Grid control defines the columns of the data grid, and much of the functionality of the DataGrid control itself.</p>  <p>The DataGrid skin is responsible for laying out the grid, column header, and scroller. The skin also configures the graphic elements used to render visual elements used as indicators, separators, and backgrounds. The DataGrid skin also defines a default item renderer, used to display the contents of each cell. Please see the documentation for the renderer class for the list of supported styles.</p>  <p>Transitions in DataGrid item renderers aren't supported. The GridItemRenderer class has disabled its <code>transitions</code> property so setting it will have no effect.</p>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:DataGrid\\n <strong>Properties</strong>\\n columns=&quot;null&quot;\\n dataProvider=&quot;null&quot;\\n dataTipField=&quot;null&quot;\\n dataTipFunction=&quot;null&quot;\\n doubleClickMode=&quot;row&quot;\\n editable=&quot;false&quot;\\n editorColumnIndex=&quot;-1&quot;\\n editorRowIndex=&quot;-1&quot;\\n imeMode=&quot;null&quot;\\n itemEditor=&quot;null&quot;\\n itemRenderer=&quot;<i>DefaultGridItemRenderer</i>&quot;\\n preserveSelection=&quot;true&quot;\\n requestedColumnCount=&quot;-1&quot;\\n requestedMaxRowCount=&quot;-1&quot;\\n requestedMinColumnCount=&quot;-1&quot;\\n requestedMinRowCount=&quot;-1&quot;\\n requestedRowCount=&quot;-1&quot;\\n requireSelection=&quot;false&quot;\\n resizeableColumns=&quot;true&quot;\\n rowHeight=&quot;<i>Calculated default</i>&quot;\\n selectedCell=&quot;null&quot;\\n selectedCells=&quot;<i>empty Vector.&lt;CellPosition&gt</i>&quot;\\n selectedIndex=&quot;null&quot;\\n selectedIndices=&quot;<i>empty Vector.&lt;CellPosition&gt</i>&quot;\\n selectedItem=&quot;null&quot;\\n selectedItems=&quot;<i>empty Vector.&lt;Object&gt</i>&quot;\\n selectionMode=&quot;singleRow&quot;\\n showDataTips=&quot;false&quot;\\n sortableColumns=&quot;true&quot;\\n typicalItem=&quot;null&quot;\\n variableRowHeight=&quot;false&quot;\\n \\n <strong>Styles</strong>\\n alignmentBaseline=&quot;useDominantBaseline&quot;\\n baselineShift=&quot;0.0&quot;\\n cffHinting=&quot;horizontalStem&quot;\\n color=&quot;0&quot;\\n defaultGridItemEditor=&quot;null&quot;\\n digitCase=&quot;default&quot;\\n digitWidth=&quot;default&quot;\\n direction=&quot;ltr&quot;\\n dominantBaseline=&quot;auto&quot;\\n fontFamily=&quot;Arial&quot;\\n fontLookup=&quot;device&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;normal&quot;\\n fontWeight=&quot;normal&quot;\\n justificationRule=&quot;auto&quot;\\n justificationStyle=&quot;auto&quot;\\n kerning=&quot;auto&quot;\\n ligatureLevel=&quot;common&quot;\\n lineHeight=&quot;120%&quot;\\n lineThrough=&quot;false&quot;\\n locale=&quot;en&quot;\\n renderingMode=&quot;cff&quot;\\n stretchCursor=&quot;<i>cursorStretch symbol from Assets.swf</i>&quot;\\n textAlign=&quot;start&quot;\\n textAlignLast=&quot;start&quot;\\n textAlpha=&quot;1&quot;\\n textDecoration=&quot;none&quot;\\n textJustify=&quot;interWord&quot;\\n trackingLeft=&quot;0&quot;\\n trackingRight=&quot;0&quot;\\n typographicCase=&quot;default&quot;\\n verticalScrollPolicy=&quot;auto&quot;\\n \\n <strong>Styles for the Spark Theme</strong>\\n alternatingRowColors=&quot;undefined&quot;\\n borderAlpha=&quot;1.0&quot;\\n borderColor=&quot;0x696969&quot;\\n borderVisible=&quot;true&quot;\\n caretColor=&quot;0x0167FF&quot;\\n contentBackgroundAlpha=&quot;1.0&quot;\\n contentBackgroundColor=&quot;0xFFFFFF&quot;\\n rollOverColor=&quot;0xCEDBEF&quot;\\n selectionColor=&quot;0xA8C6EE&quot;\\n symbolColor=&quot;0x000000&quot;\\n \\n <strong>Styles for the Mobile Theme</strong>\\n leading=&quot;0&quot;\\n letterSpacing=&quot;0&quot;\\n selectionColor=&quot;0xE0E0E0&quot;\\n symbolColor=&quot;0x000000&quot;\\n \\n <strong>Events</strong>\\n caretChange=&quot;<i>No default</i>&quot;\\n gridClick=&quot;<i>No default</i>&quot;\\n gridDoubleClick=&quot;<i>No default</i>&quot;\\n gridItemEditorSessionCancel=&quot;<i>No default</i>&quot;\\n gridItemEditorSessionSave=&quot;<i>No default</i>&quot;\\n gridItemEditorSessionStart=&quot;<i>No default</i>&quot;\\n gridItemEditorSessionStarting=&quot;<i>No default</i>&quot;\\n gridMouseDown=&quot;<i>No default</i>&quot;\\n gridMouseDrag=&quot;<i>No default</i>&quot;\\n gridMouseUp=&quot;<i>No default</i>&quot;\\n gridMouseRollOut=&quot;<i>No default</i>&quot;\\n gridMouseRollOver=&quot;<i>No default</i>&quot;\\n selectionChange=&quot;<i>No default</i>&quot;\\n selectionChanging=&quot;<i>No default</i>&quot;\\n sortChange=&quot;<i>No default</i>&quot;\\n sortChanging=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DataGridSimpleExample.mxml", "examples/DataGridMasterDetailExample.mxml", "examples/DataGridTypicalItemExample.mxml", "examples/DataGridRowHeightExample.mxml", "examples/DataGridSelectionExample.mxml", "examples/DataGridInvalidateCellExample.mxml", "examples/DataGridLockedRowsAndColumnsExample.mxml", "examples/DataGridSimpleExample.mxml", "examples/DataGridMasterDetailExample.mxml", "examples/DataGridTypicalItemExample.mxml", "examples/DataGridRowHeightExample.mxml", "examples/DataGridSelectionExample.mxml", "examples/DataGridInvalidateCellExample.mxml", "examples/DataGridLockedRowsAndColumnsExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Grid", "spark.components.gridClasses.GridColumn", "spark.skins.spark.DataGridSkin", "spark.skins.spark.DefaultGridItemRenderer", "spark.components.Grid", "spark.components.gridClasses.GridColumn", "spark.skins.spark.DataGridSkin", "spark.skins.spark.DefaultGridItemRenderer"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:DataGrid&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:DataGrid&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.components.DataGroup",
  "description": "The DataGroup class is the base container class for data items. The DataGroup class converts data items to visual elements for display. While this container can hold visual elements, it is often used only to hold data items as children.  <p>The DataGroup class takes as children data items or visual elements that implement the IVisualElement interface and are DisplayObjects. Data items can be simple data items such String and Number objects, and more complicated data items such as Object and XMLNode objects. While these containers can hold visual elements, they are often used only to hold data items as children.</p>  <p>An item renderer defines the visual representation of the data item in the container. The item renderer converts the data item into a format that can be displayed by the container. You must pass an item renderer to a DataGroup container to render data items appropriately.</p>  <p>To improve performance and minimize application size, the DataGroup container cannot be skinned. If you want to apply a skin, use the SkinnableDataContainer instead. </p>  <p>The DataGroup container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:DataGroup&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:DataGroup\\n <strong>Properties</strong>\\n dataProvider=&quot;null&quot;\\n itemRenderer=&quot;null&quot;\\n itemRendererFunction=&quot;null&quot;\\n typicalItem=&quot;null&quot;\\n \\n <strong>Events</strong>\\n rendererAdd=&quot;<i>No default</i>&quot;\\n rendererRemove=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DataGroupExample.mxml", "examples/DataGroupExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.SkinnableDataContainer", "spark.components.Group", "spark.skins.spark.DefaultItemRenderer", "spark.skins.spark.DefaultComplexItemRenderer", "spark.components.SkinnableDataContainer", "spark.components.Group", "spark.skins.spark.DefaultItemRenderer", "spark.skins.spark.DefaultComplexItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.DataRenderer",
  "description": "The DataRenderer class is the base class for data components in Spark.  <p><b>Note:</b> This class may be removed in a later release.</p>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:DataRenderer\\n <strong>Properties</strong>\\n data=&quot;&quot;\\n \\n <strong>Events</strong>\\n dataChange=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:DataRenderer&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:DataRenderer&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.DropDownList",
  "description": "The DropDownList control contains a drop-down list from which the user can select a single value. Its functionality is very similar to that of the SELECT form element in HTML.  <p>The DropDownList control consists of the anchor button, prompt area, and drop-down-list, Use the anchor button to open and close the drop-down-list. The prompt area displays a prompt String, or the selected item in the drop-down-list.</p>  <p>When the drop-down list is open:</p> <ul> <li>Clicking the anchor button closes the drop-down list and commits the currently selected data item.</li> <li>Clicking outside of the drop-down list closes the drop-down list and commits the currently selected data item.</li> <li>Clicking on a data item selects that item and closes the drop-down list.</li> <li>If the <code>requireSelection</code> property is <code>false</code>, clicking on a data item while pressing the Control key deselects the item and closes the drop-down list.</li> </ul>  <p><b>Note: </b>The Spark list-based controls (the Spark ListBase class and its subclasses such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class as the value of the <code>layout</code> property. Do not use BasicLayout with the Spark list-based controls.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The DropDownList control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>112 pixels wide and 21 pixels high</td></tr> <tr><td>Minimum size</td><td>112 pixels wide and 21 pixels high</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> <tr><td>Default skin class</td><td>spark.skins.spark.DropDownListSkin</td></tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:DropDownList\\n <strong>Properties</strong>\\n prompt=&quot;&quot;\\n typicalItem=&quot;null&quot;\\n \\n <strong>Events</strong>\\n closed=&quot;<i>No default</i>&quot;\\n open=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DropDownListExample.mxml", "examples/DropDownListExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.DropDownListSkin", "spark.components.supportClasses.DropDownController", "spark.skins.spark.DropDownListSkin", "spark.components.supportClasses.DropDownController"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:DropDownList&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:DropDownList&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Form",
  "description": "The Spark Form container lets you control the layout of a form, mark form fields as required or optional, handle error messages, and bind your form data to the Flex data model to perform data checking and validation. It also lets you use style sheets to configure the appearance of your forms.  <p>The following table describes the components you use to create forms in Flex:</p> <table class=&quot;innertable&quot;> <tr> <th>Component</th> <th>Tag</th> <th>Description</th> </tr> <tr> <td>Form</td> <td><code>&lt;s:Form&gt;</code></td> <td>Defines the container for the entire form, including the overall form layout. Use the FormHeading control and FormItem control to define content. You can also insert other types of components in a Form container.</td> </tr> <tr> <td>FormHeading</td> <td><code>&lt;s:FormHeading&gt;</code></td> <td>Defines a heading within your form. </td> </tr> <tr> <td>FormItem</td> <td><code>&lt;s:FormItem&gt;</code></td> <td>Contains one or more form children arranged horizontally or vertically. Children can be controls or other containers. A single Form container can hold multiple FormItem containers.</td> </tr> <tr> <td>FormLayout</td> <td><code>&lt;s:FormLayout&gt;</code></td> <td>Defines the default layout for Spark Form skins.</td> </tr> </table>   <p>The <code>&lt;s:Form&gt;</code> tag inherits all the tag attributes of its superclass and adds no new tag attributes:</p>  <pre>\\n &lt;s:Form&gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/s:Form&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/FormExample.mxml", "examples/StackedFormSkinExample.mxml", "examples/FormExample.mxml", "examples/StackedFormSkinExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.FormHeading", "spark.components.FormItem", "spark.layouts.FormLayout", "spark.skins.spark.FormSkin", "spark.components.FormHeading", "spark.components.FormItem", "spark.layouts.FormLayout", "spark.skins.spark.FormSkin"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.FormItem",
  "description": "The FormItem container defines the following in a Spark From:  <ul> <li>A single label.</li> <li>A sequence label.</li> <li>One or more child controls or containers.</li> <li>Help content that provides a description of the form item or instructions for filling it in.</li> <li>Required indicator to indicate if a form item has to be filled</li> </ul>  Children can be controls or other containers. A single Form container can hold multiple FormItem containers. By default, all the FormItem elements are arranged in a horizontal layout with the label placed on the left and the Help content on the right.   <p>The <code>&lt;s:FormItem&gt;</code> tag inherits all the tag attributes of its superclass and adds no new tag attributes:</p>  <pre>\\n &lt;s:FormItem\\n <strong>Properties</strong>\\n helpContent=&quot;null&quot;\\n label=&quot;&quot;\\n required=&quot;false&quot;\\n sequenceLabel=&quot;&quot;\\n \\n <strong>Common Styles</strong>\\n errorIndicatorSource=&quot;assets/ErrorIndicator.png&quot;\\n requiredIndicatorSource=&quot;assets/RequiredIndicator.png&quot;\\n \\n <strong>Mobile Styles</strong>\\n leading=&quot;2&quot;\\n letterSpacing=&quot;0&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/FormItemExample.mxml", "examples/FormItemExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Form", "spark.components.FormHeading", "spark.layouts.FormLayout", "spark.skins.spark.FormItemSkin", "spark.components.Form", "spark.components.FormHeading", "spark.layouts.FormLayout", "spark.skins.spark.FormItemSkin"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.components.Grid",
  "description": "The Grid control displays a list of data items called its <i>data provider</i> in a scrollable table or &quot;grid&quot;, one item per row. Each of the grid's columns, defined by a GridColumn object, displays a value based on the item for the corresponding row. The grid's data provider is mutable, meaning its items can be added or removed, or changed. Similarly, the list of columns is mutable.  <p>The Grid component is intended to be used as a DataGrid skin part, or as an element of other custom composite components. Therefore, it is not skinnable, it does not include a scroller or scrollbars, and it does not provide default mouse or keyboard event handling.</p>  <p>Each visible Grid <i>cell</i> is displayed by a GridItemRenderer instance created by using the <code>itemRenderer</code> property. specify an item renderer for each column. Before it is displayed, each item renderer instance is configured with the value of the data provider item for that row. Item renderers are created as needed and then, to keep creation overhead to a minimum, pooled and recycled.</p>  <p>The Grid control supports a doubleClick event, according the <code>doubleClickMode</code> property.</p>  <p>The Grid control supports selection, according the <code>selectionMode</code> property.  The set of selected row or cell indices can be modified or queried programatically using the selection methods, such as <code>setSelectedIndex</code> or <code>selectionContainsIndex()</code>.</p>  <p>The Grid control displays hover, caret, and selection indicators based on the <code>selectionMode</code> property and the corresponding row index and column index properties, such as <code>hoverRowIndex</code> and <code>columnRowIndex</code>. An indicator can be any visual element. Indicators that implement IGridVisualElement can configure themselves according to the row and column in which they are used.</p>  <p>The Grid control supports smooth scrolling. Their vertical and horizontal scroll positions define the pixel origin of the visible part of the grid and the grid's layout only displays as many cell item renderers as are needed to fill the available space.</p>  <p>The Grid control supports variable height rows that automatically compute their height based on the item renderers' contents. This support is called grid <i>virtualization</i> because the mapping from (pixel) scroll positions to row and column indices is typically based on incomplete information about the preferred sizes for grid cells. The Grid caches the computed heights of rows that have been scrolled into view and estimates the rest based on a single <code>typicalItem</code>.</p>  <p>Transitions in DataGrid item renderers aren't supported. The GridItemRenderer class has disabled its <code>transitions</code> property so setting it will have no effect.</p>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Grid\\n <strong>Properties</strong>\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["DataGrid", "spark.components.gridClasses.GridColumn", "DataGrid", "spark.components.gridClasses.GridColumn"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:Grid&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:Grid&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Group",
  "description": "The Group class is the base container class for visual elements. The Group container takes as children any components that implement the IUIComponent interface, and any components that implement the IGraphicElement interface. Use this container when you want to manage visual children, both visual components and graphical components.  <p>To improve performance and minimize application size, the Group container cannot be skinned. If you want to apply a skin, use the SkinnableContainer instead.</p>  <p><b>Note:</b> The scale grid might not function correctly when there are DisplayObject children inside of the Group, such as a component or another Group.  If the children are GraphicElement objects, and they all share the Group's DisplayObject, then the scale grid works properly.</p>  <p>Setting any of the following properties on a GraphicElement child requires that GraphicElement to create its own DisplayObject, thus negating the scale grid properties on the Group.</p>  <pre>\\n alpha\\n blendMode other than BlendMode.NORMAL or &quot;auto&quot;\\n colorTransform\\n filters\\n mask\\n matrix\\n rotation\\n scaling\\n 3D properties\\n bounds outside the extent of the Group\\n </pre>  <p>The Group container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:Group&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Group\\n <strong>Properties</strong>\\n blendMode=&quot;auto&quot;\\n mxmlContent=&quot;null&quot;\\n scaleGridBottom=&quot;null&quot;\\n scaleGridLeft=&quot;null&quot;\\n scaleGridRight=&quot;null&quot;\\n scaleGridTop=&quot;null&quot;\\n \\n <strong>Events</strong>\\n elementAdd=&quot;<i>No default</i>&quot;\\n elementRemove=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GroupExample.mxml", "examples/GroupExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.DataGroup", "spark.components.SkinnableContainer", "spark.components.DataGroup", "spark.components.SkinnableContainer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.HGroup",
  "description": "The HGroup container is an instance of the Group container that uses the HorizontalLayout class. Do not modify the <code>layout</code> property. instead, use the properties of the HGroup class to modify the characteristics of the HorizontalLayout class.  <p>The HGroup container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:HGroup&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:HGroup\\n <strong>Properties</strong>\\n columnWidth=&quot;no default&quot;\\n gap=&quot;6&quot;\\n horizontalAlign=&quot;left&quot;\\n padding=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n requestedColumnCount=&quot;-1&quot;\\n requestedMaxColumnCount=&quot;-1&quot;\\n requestedMinColumnCount=&quot;-1&quot;\\n variableColumnWidth&quot;true&quot;\\n verticalAlign=&quot;top&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/HGroupExample.mxml", "examples/HGroupExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.layouts.HorizontalLayout", "spark.layouts.HorizontalLayout"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Image",
  "description": "The Spark Image control is a skinnable component that provides a customizable loading state, chrome, and error state. The Image control lets you import JPEG, PNG, and GIF files at runtime. You can also embed any of these files at compile time by using <code>&#64;Embed(source='filename')</code>.  <p><strong>Note: </strong>Flex also includes the SWFLoader control for loading Flex applications. You typically use the Image control for loading static graphic files and SWF files, and use the SWFLoader control for loading Flex applications. The Image control is also designed to be used in custom item renderers and item editors. </p>  <p><strong>Note: </strong>Flex also includes the BitmapImage class. This class is used for embedding images into skins and FXG components. </p>  <p>Embedded images load immediately, because they are already part of the Flex SWF file. However, they add to the size of your application and slow down the application initialization process. Embedded images also require you to recompile your applications whenever your image files change.</p>  <p>The alternative to embedding a resource is to load the resource at runtime. You can load a resource from the local file system in which the SWF file runs, or you can access a remote resource, typically though an HTTP request over a network. These images are independent of your Flex application, so you can change them without causing a recompile operation as long as the names of the modified images remain the same. The referenced images add no additional overhead to an application's initial loading time. However, you might experience a delay when you use the images and load them into Flash Player or AIR. </p>  <p>The default skin provides a chromeless image skin with a generic progress bar based preloader and broken image icon to reflect invalid content.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The Image control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to hold the associated source content</td> </tr> <tr> <td>Minimum size</td> <td>0 pixels wide by 0 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.ImageSkin</td> </tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Image\\n <strong>Properties</strong>\\n clearOnLoad=&quot;true&quot;\\n contentLoader=&quot;null&quot;\\n contentLoaderGrouping=&quot;null&quot;\\n fillMode=&quot;scale&quot;\\n horizontalAlign=&quot;center&quot;\\n preliminaryHeight=&quot;NaN&quot;\\n preliminaryWidth=&quot;NaN&quot;\\n scaleMode=&quot;letterbox&quot;\\n smooth=&quot;false&quot;\\n source=&quot;null\\n verticalAlign=&quot;middle&quot;\\n \\n <strong>Styles</strong>\\n backgroundAlpha=&quot;NaN&quot;\\n backgroundColor=&quot;NaN&quot;\\n enableLoadingState=&quot;false&quot;\\n smoothingQuality=&quot;default&quot;\\n \\n <strong>Events</strong>\\n complete=&quot;<i>No default</i>&quot;\\n httpStatus=&quot;<i>No default</i>&quot;\\n ioError=&quot;<i>No default</i>&quot;\\n progress=&quot;<i>No default</i>&quot;\\n ready=&quot;<i>No default</i>&quot;\\n securityError=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.skins.spark.ImageSkin", "mx.controls.SWFLoader", "spark.skins.spark.ImageSkin", "mx.controls.SWFLoader"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:Image&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:Image&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Label",
  "description": "Label is a low-level UIComponent that can render one or more lines of uniformly-formatted text. The text to be displayed is determined by the <code>text</code> property inherited from TextBase. The formatting of the text is specified by the element's CSS styles, such as <code>fontFamily</code> and <code>fontSize</code>.  <p>Label uses of the Flash Text Engine (FTE) in Flash Player to provide high-quality international typography. Because Label is fast and lightweight, it is especially suitable for use cases that involve rendering many small pieces of non-interactive text, such as item renderers and labels in Button skins.</p>  <p>The Spark architecture provides three text &quot;primitives&quot; -- Label, RichText, and RichEditableText -- as part of its pay-only-for-what-you-need philosophy. Label is the fastest and most lightweight, but is limited in its capabilities: no complex formatting, no scrolling, no selection, no editing, and no hyperlinks. RichText and RichEditableText are built on the Text Layout Framework (TLF) library, rather than on FTE. RichText adds the ability to render rich HTML-like text with complex formatting, but is still completely non-interactive. RichEditableText is the slowest and heaviest, but can do it all: it supports scrolling with virtualized TextLines, selection, editing, hyperlinks, and images loaded from URLs. You should use the fastest one that meets your needs.</p>  <p>The Spark Label control is similar to the MX Label control, mx.controls.Label. The most important differences are: <ul> <li>Spark Label uses FTE, the player's new text engine, while MX Label uses the TextField class.</li> <li>Spark Label offers better typography, and better support for international languages, than MX Label.</li> <li>Spark Label can display multiple lines, which MX Label cannot.</li> <li>MX Label can display a limited subset of HTML, while Spark Label can only display text with uniform formatting.</li> <li>MX Label can be made selectable, while Spark Label cannot.</li> </ul></p>  <p>In Spark Label, three character sequences are recognized as explicit line breaks: CR (<code>&quot;\\r&quot;</code>), LF (<code>&quot;\\n&quot;</code>), and CR+LF (<code>&quot;\\r\\n&quot;</code>).</p>  <p>If you don't specify any kind of width for a Label, then the longest line, as determined by these explicit line breaks, determines the width of the Label.</p>  <p>If you do specify some kind of width, then the specified text is word-wrapped at the right edge of the component's bounds, because the default value of the <code>lineBreak</code> style is <code>&quot;toFit&quot;</code>. If the text extends below the bottom of the component, it is clipped.</p>  <p>To disable this automatic wrapping, set the <code>lineBreak</code> style to <code>&quot;explicit&quot;</code>. Then lines are broken only where the <code>text</code> contains an explicit line break, and the ends of lines extending past the right edge is clipped.</p>  <p>If you have more text than you have room to display it, Label can truncate the text for you. Truncating text means replacing excess text with a truncation indicator such as &quot;...&quot;. See the inherited properties <code>maxDisplayedLines</code> and <code>isTruncated</code>.</p>  <p>You can control the line spacing with the <code>lineHeight</code> style. You can horizontally and vertically align the text within the element's bounds using the <code>textAlign</code>, <code>textAlignLast</code>, and <code>verticalAlign</code> styles. You can inset the text from the element's edges using the <code>paddingLeft</code>, <code>paddingTop</code>, <code>paddingRight</code>, and <code>paddingBottom</code> styles.</p>  <p>By default a Label has no background, but you can draw one using the <code>backgroundColor</code> and <code>backgroundAlpha</code> styles. Borders are not supported. If you need a border, or a more complicated background, use a separate graphic element, such as a Rect, behind the Label.</p>  <p>Label supports displaying left-to-right (LTR) text such as French, right-to-left (RTL) text such as Arabic, and bidirectional text such as a French phrase inside of an Arabic paragraph. If the predominant text direction is right-to-left, set the <code>direction</code> style to <code>&quot;rtl&quot;</code>. The <code>textAlign</code> style defaults to <code>&quot;start&quot;</code>, which makes the text left-aligned when <code>direction</code> is <code>&quot;ltr&quot;</code> and right-aligned when <code>direction</code> is <code>&quot;rtl&quot;</code>. To get the opposite alignment, set <code>textAlign</code> to <code>&quot;end&quot;</code>.</p>  <p>Label uses the TextBlock class in the Flash Text Engine to create one or more TextLine objects to statically display its text String in the format determined by its CSS styles. For performance, its TextLines do not contain information about individual glyphs; for more info, see flash.text.engine.TextLineValidity.STATIC.</p>  <p>The Label control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>0 pixels wide by 12 pixels high if it contains no text, and large enough ti display the text if it does</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Label\\n <strong>Styles</strong>\\n alignmentBaseline=&quot;baseline&quot;\\n baselineShift=&quot;0&quot;\\n cffHinting=&quot;0.0&quot;\\n color=&quot;0x000000&quot;\\n digitCase=&quot;default&quot;\\n digitWidth=&quot;default&quot;\\n direction=&quot;ltr&quot;\\n dominantBaseline=&quot;auto&quot;\\n fontFamily=&quot;Arial&quot;\\n fontLookup=&quot;embeddedCFF&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;normal&quot;\\n fontWeight=&quot;normal&quot;\\n justificationRule=&quot;auto&quot;\\n justificationStyle=&quot;auto&quot;\\n kerning=&quot;false&quot;\\n ligatureLevel=&quot;common&quot;\\n lineBreak=&quot;toFit&quot;\\n lineHeight=&quot;120%&quot;\\n lineThrough=&quot;false&quot;\\n locale=&quot;en&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n renderingMode=&quot;cff&quot;\\n textAlign=&quot;start&quot;\\n textAlignLast=&quot;start&quot;\\n textAlpha=&quot;1&quot;\\n textDecoration=&quot;start&quot;\\n textJustify=&quot;interWord&quot;\\n trackingLeft=&quot;0&quot;\\n trackingRight=&quot;00&quot;\\n typographicCase=&quot;default&quot;\\n verticalAlign=&quot;top&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LabelExample.mxml", "examples/LabelExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.RichEditableText", "spark.components.RichText", "flash.text.engine.TextLineValidity#STATIC", "spark.components.RichEditableText", "spark.components.RichText", "flash.text.engine.TextLineValidity#STATIC"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:Label&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:Label&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.List",
  "description": "The List control displays a vertical list of items. Its functionality is similar to that of the SELECT form element in HTML. If there are more items than can be displayed at once, it can display a vertical scroll bar so the user can access all items in the list. An optional horizontal scroll bar lets the user view items when the full width of the list items is unlikely to fit. The user can select one or more items from the list, depending on the value of the <code>allowMultipleSelection</code> property.  <p><b>Note: </b>The Spark list-based controls (the Spark ListBase class and its subclasses such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class as the value of the <code>layout</code> property. Do not use BasicLayout with the Spark list-based controls.  When a layout is specified, the layout's typicalLayoutElement property should not be set; it's automatically set to an item renderer created with the List's <code>typicalItem</code>.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The List control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>112 pixels wide by 112 pixels high</td></tr> <tr><td>Minimum size</td><td>112 pixels wide by 112 pixels high</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> <tr><td>Default skin class</td><td>spark.skins.spark.ListSkin</td></tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:List\\n <strong>Properties</strong>\\n allowMultipleSelection=&quot;false&quot;\\n dragEnabled=&quot;false&quot;\\n dragMoveEnabled=&quot;false&quot;\\n dropEnabled=&quot;false&quot;\\n selectedIndices=&quot;null&quot;\\n selectedItems=&quot;null&quot;\\n useVirtualLayout=&quot;true&quot;\\n \\n <strong>Styles</strong>\\n alternatingItemColors=&quot;undefined&quot;\\n borderAlpha=&quot;1.0&quot;\\n borderColor=&quot;0#CCCCCC&quot;\\n borderVisible=&quot;true&quot;\\n contentBackgroundColor=&quot;0xFFFFFF&quot;\\n downColor=&quot;0xA8C6EE&quot;\\n dragIndicator=&quot;ListItemDragProxy&quot;\\n dropIndicatorSkin=&quot;ListDropIndicator&quot;\\n rollOverColor=&quot;0xCEDBEF&quot;\\n selectionColor=&quot;0xA8C6EE&quot;\\n symbolColor=&quot;0x000000&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ListExample.mxml", "examples/ListExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.ListSkin", "spark.skins.spark.ListSkin"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:List&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:List&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.NavigatorContent",
  "description": "The NavigatorContent class defines a Spark container that can be used in an MX navigator container, such as the ViewStack, TabNavigator and Accordion containers.  <p>Do not use a NavigatorContent container outside of an MX navigator container.</p>  <p>The creation policy of the NavigatorContent container is based on the creation policy of its parent navigator container: </p>  <ul> <li>If the creation policy of the parent is none, then the creation policy of the NavigatorContent is none.</li> <li>If the creation policy of the parent is all, then the creation policy of the NavigatorContent is all.</li> <li>If the creation policy of the parent is auto, then the creation policy of the NavigatorContent is none.</li> </ul>  <p>The NavigatorContent container does not support the queued creation policy.</p>  <p>The NavigatorContent container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:NavigatorContent&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:NavigatorContent\\n <strong>Properties</strong>\\n icon=&quot;null&quot;\\n label=&quot;&quot;\\n \\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/NavigatorContentExample.mxml", "examples/NavigatorContentExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.Accordion", "mx.containers.TabNavigator", "mx.containers.ViewStack", "mx.containers.Accordion", "mx.containers.TabNavigator", "mx.containers.ViewStack"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.NonVirtualHDataGroup",
  "description": "The NonVirtualHDataGroup class is a DataGroup that defaults to non-virtual vertical layout",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.NonVirtualVDataGroup",
  "description": "The NonVirtualVDataGroup class is a DataGroup that defaults to non-virtual vertical layout",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.NumericStepper",
  "description": "The NumericStepper control lets you select a number from an ordered set. The NumericStepper provides the same functionality as the Spinner component, but adds a TextInput control so that you can directly edit the value of the component, rather than modifying it by using the control's arrow buttons.  <p>The NumericStepper control consists of a single-line input text field and a pair of arrow buttons for stepping through the possible values. The Up Arrow and Down Arrow keys and the mouse wheel also cycle through the values. An input value is committed when the user presses the Enter key, removes focus from the component, or steps the NumericStepper by pressing an arrow button or by calling the <code>changeValueByStep()</code> method.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The NumericStepper control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>53 pixels wide by 23 pixels high</td> </tr> <tr> <td>Minimum size</td> <td>40 pixels wide and 40 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin classes</td> <td>spark.skins.spark.NumericStepperSkin <p>spark.skins.spark.NumericStepperTextInputSkin</p></td> </tr> </table>   <p>The <code>&lt;s:NumericStepper&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:NumericStepper\\n \\n <strong>Properties</strong>\\n imeMode=&quot;null&quot;\\n maxChars=&quot;0&quot;\\n maximum=&quot;10&quot;\\n valueFormatFunction=&quot;&quot;\\n valueParseFunction=&quot;&quot;\\n \\n <strong>Styles</strong>\\n \\n alignmentBaseline=&quot;USE_DOMINANT_BASELINE&quot;\\n baselineShift=&quot;0.0&quot;\\n blockProgression=&quot;TB&quot;\\n borderAlpha=&quot;0.5&quot;\\n borderColor=&quot;0x000000&quot;\\n borderVisible=&quot;true&quot;\\n breakOpportunity=&quot;AUTO&quot;\\n cffHinting=&quot;HORIZONTAL_STEM&quot;\\n color=&quot;0&quot;\\n contentBackgroundAlpha=&quot;1.0&quot;\\n contentBackgroundColor=&quot;0xFFFFFF&quot;\\n clearFloats=&quot;none&quot;\\n digitCase=&quot;DEFAULT&quot;\\n digitWidth=&quot;DEFAULT&quot;\\n direction=&quot;LTR&quot;\\n dominantBaseline=&quot;AUTO&quot;\\n firstBaselineOffset=&quot;AUTO&quot;\\n focusedTextSelectionColor=&quot;&quot;\\n fontFamily=&quot;Arial&quot;\\n fontLookup=&quot;DEVICE&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;NORMAL&quot;\\n fontWeight=&quot;NORMAL&quot;\\n inactiveTextSelection=&quot;&quot;\\n justificationRule=&quot;AUTO&quot;\\n justificationStyle=&quot;AUTO&quot;\\n kerning=&quot;AUTO&quot;\\n leadingModel=&quot;AUTO&quot;\\n ligatureLevel=&quot;COMMON&quot;\\n lineHeight=&quot;120%&quot;\\n lineThrough=&quot;false&quot;\\n listAutoPadding=&quot;40&quot;\\n listStylePosition=&quot;outside&quot;\\n listStyleType=&quot;disc&quot;\\n locale=&quot;en&quot;\\n paragraphEndIndent=&quot;0&quot;\\n paragraphSpaceAfter=&quot;0&quot;\\n paragraphSpaceBefore=&quot;0&quot;\\n paragraphStartIndent=&quot;0&quot;\\n renderingMode=&quot;CFF&quot;\\n tabStops=&quot;null&quot;\\n textAlign=&quot;START&quot;\\n textAlignLast=&quot;START&quot;\\n textAlpha=&quot;1&quot;\\n textDecoration=&quot;NONE&quot;\\n textIndent=&quot;0&quot;\\n textJustify=&quot;INTER_WORD&quot;\\n textRotation=&quot;AUTO&quot;\\n trackingLeft=&quot;0&quot;\\n trackingRight=&quot;0&quot;\\n typographicCase=&quot;DEFAULT&quot;\\n unfocusedTextSelectionColor=&quot;&quot;\\n whiteSpaceCollapse=&quot;COLLAPSE&quot;\\n wordSpacing=&quot;100%,50%,150%&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/NumericStepperExample.mxml", "examples/NumericStepperExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Spinner", "spark.skins.spark.NumericStepperSkin", "spark.skins.spark.NumericStepperTextInputSkin", "spark.components.Spinner", "spark.skins.spark.NumericStepperSkin", "spark.skins.spark.NumericStepperTextInputSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Panel",
  "description": "The Panel class defines a container that includes a title bar, a caption, a border, and a content area for its children.  <p>The panel container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>131 pixels wide and 127 pixels high</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:Panel&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Panel\\n <strong>Properties</strong>\\n controlBarContent=&quot;null&quot;\\n controlBarLayout=&quot;HorizontalLayout&quot;\\n controlBarVisible=&quot;true&quot;\\n title=&quot;&quot;\\n \\n <strong>Styles</strong>\\n borderAlpha=&quot;0.5&quot;\\n borderColor=&quot;0&quot;\\n borderVisible=&quot;true&quot;\\n cornerRadius=&quot;0&quot;\\n dropShadowVisible=&quot;true&quot;\\n &gt;\\n ...\\n <i>child tags</i>\\n ...\\n &lt;/s:Panel&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PanelExample.mxml", "examples/PanelExample.mxml"]},
    {  "tagName": "see",
       "values": ["SkinnableContainer", "spark.skins.spark.PanelSkin", "SkinnableContainer", "spark.skins.spark.PanelSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.PopUpAnchor",
  "description": "The PopUpAnchor component is used to position a control that pops up or drops down, such as a DropDownList component, in layout. Because a popup or drop-down control is added to the display list by the PopUpManager, it doesn't normally participate in layout. The PopUpAnchor component is a UIComponent that is added to a container and is laid out. It is then responsible for sizing and positioning the popup or drop-down control relative to itself. It has no visual appearance.  <p>The PopUpAnchor control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>0</td> </tr> <tr> <td>Minimum size</td> <td>0</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> </table>   <p>The <code>&lt;s:PopUpAnchor&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:PopUpAnchor\\n \\n <strong>Properties</strong>\\n displayPopUp=&quot;false&quot;\\n popUp=&quot;&quot;\\n popUpHeightMatchesAnchorHeight=&quot;false&quot;\\n popUpPosition=&quot;topLeft&quot;\\n popUpWidthMatchesAnchorWidth=&quot;false&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/PopUpAnchorExample.mxml", "examples/PopUpAnchorExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.RadioButton",
  "description": "The RadioButton component allows the user make a single choice within a set of mutually exclusive choices. A RadioButtonGroup is composed of two or more RadioButton components with the same <code>groupName</code> property. While grouping RadioButton instances in a RadioButtonGroup is optional, a group lets you do things like set a single event handler on a group of RadioButtons, rather than on each individual RadioButton.  <p>The RadioButton group can refer to the a group created by the <code>&lt;s:RadioButtonGroup&gt;</code> tag. The user selects only one member of the group at a time. Selecting an unselected group member deselects the currently selected RadioButton component within that group.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The RadioButton component has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to display the text label of the component</td> </tr> <tr> <td>Minimum size</td> <td>18 pixels wide and 18 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.RadioButtonSkin</td> </tr> </table>   <p>The <code>&lt;s:RadioButton&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;s:RadioButton\\n <strong>Properties</strong>\\n enabled=&quot;&quot;\\n group=&quot;<i>the automatically created default RadioButtonGroup</i>&quot;\\n groupName=&quot;radioGroup&quot;\\n value=&quot;null&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RadioButtonExample.mxml", "examples/RadioButtonExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.RadioButtonGroup", "spark.skins.spark.RadioButtonSkin", "spark.components.RadioButtonGroup", "spark.skins.spark.RadioButtonSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.RadioButtonGroup",
  "description": "The RadioButtonGroup component defines a group of RadioButton components that act as a single mutually exclusive component; therefore, a user can select only one RadioButton component at a time. The <code>id</code> property is required when you use the <code>&lt;s:RadioButtonGroup&gt;</code> tag to define the group name.  Any <code>&lt;s:RadioButton&gt;</code> component added to this group will have this group name.  <p>Notice that the RadioButtonGroup component is a subclass of EventDispatcher, not UIComponent, and implements the IMXMLObject interface. All other Flex visual components implement the IVisualElement interface. The RadioButtonGroup component declaration must be contained within the <code>&lt;Declarations&gt;</code> tag since it is not assignable to IVisualElement.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>   <p>The <code>&lt;s:RadioButtonGroup&gt;</code> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:</p>  <pre>\\n &lt;s:RadioButtonGroup\\n <strong>Properties</strong>\\n enabled=&quot;true&quot;\\n selectedValue=&quot;null&quot;\\n selection=&quot;null&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>No default</i>&quot;\\n itemClick=&quot;<i>No default</i>&quot;\\n valueCommit=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RadioButtonGroupExample.mxml", "examples/RadioButtonGroupExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.RadioButton", "spark.components.RadioButton"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.RichEditableText",
  "description": "RichEditableText is a low-level UIComponent for displaying, scrolling, selecting, and editing richly-formatted text.  <p>The rich text can contain clickable hyperlinks and inline graphics that are either embedded or loaded from URLs.</p>  <p>RichEditableText does not have scrollbars, but it implements the IViewport interface for programmatic scrolling so that it can be controlled by a Scroller, which does provide scrollbars. It also supports vertical scrolling with the mouse wheel.</p>  <p>It does not include any user interface for changing the formatting of the text. But it offers APIs which can do this programmatically; these make it possible, for example, for you to create a Bold button that makes the selected text bold.</p>  <p>This class is used in the skins of the Spark versions of TextInput and TextArea. (TextInput does not expose its ability to handle rich text, but TextArea does.) By default, RichEditableText has a transparent background, and it does not support drawing a border.</p>  <p>RichEditableText uses the Text Layout Framework (TLF) library, which in turn builds on the Flash Text Engine (FTE) introduced in Flash Player 10. In combination, these layers provide text editing with high-quality international typography and layout.</p>  <p>The Spark architecture provides three text &quot;primitives&quot; -- Label, RichText, and RichEditableText. Label is the fastest and most lightweight because it uses only FTE, not TLF, but it is limited in its capabilities: no rich text, no scrolling, no selection, and no editing. RichText adds the ability to display rich text with complex layout, but is still completely non-interactive. RichEditableText is the heaviest-weight, but offers most of what TLF can do. In general, use the fastest text primitive that meets your needs.</p>  <p>RichEditableText is similar to the UITextField class used in MX components. This class did not use FTE or TLF but rather extended the older TextField class.</p>  <p>The most important differences between UITextField and RichEditableText are: <ul> <li>RichEditableText offers better typography, better support for international languages, and better text layout.</li> <li>RichEditableText has an object-oriented model of rich text, while UITextField does not.</li> <li>RichEditableText has better support for displaying large amounts of text.</li> <li>RichEditableText requires that fonts be embedded differently than UITextField. Consult the documentation regarding how to use the <code>embedAsCFF</code> attribute when you embed a font.</li> </ul></p>  <p>RichEditableText uses TLF's object-oriented model of rich text, in which text layout elements such as divisions, paragraphs, spans, hyperlinks, and images are represented at runtime by ActionScript objects which can be programmatically accessed and manipulated. The central object in TLF for representing rich text is a TextFlow, so you specify rich text for a RichEditableText control to display by setting its <code>textFlow</code> property to a TextFlow instance. See the description of the <code>textFlow</code> property for information about how to create one, such as by importing TLF markup. If you don't need to display text that has multiple formats, you can use the <code>text</code> property to set a &quot;plain text&quot; String. See the description of the <code>text</code> and <code>textFlow</code> properties for information about how they interact; for example, you can set one and get the other.</p>  <p>At compile time, you can put TLF markup tags inside the RichEditableText tag, as the following example shows: <pre>\\n &lt;s:RichEditableText&gt;Hello &lt;s:span fontWeight=&quot;bold&quot;&gt;World!&lt;/s:span&gt;&lt;/s:RichEditableText&gt;\\n </pre> In this case, the MXML compiler sets the <code>content</code> property, causing a TextFlow to be automatically created from the FlowElements that you specify.</p>  <p>The default text formatting is determined by CSS styles such as <code>fontFamily</code>, <code>fontSize</code>. Any formatting information in the TextFlow overrides the default formatting provided by the CSS styles.</p>  <p>You can control the spacing between lines with the <code>lineHeight</code> style and the spacing between paragraphs with the <code>paragraphSpaceBefore</code> and <code>paragraphSpaceAfter</code> styles. You can align or justify the text using the <code>textAlign</code> and <code>textAlignLast</code> styles. You can inset the text from the component's edges using the <code>paddingLeft</code>, <code>paddingTop</code>, <code>paddingRight</code>, and <code>paddingBottom</code> styles.</p>  <p>By default, a RichEditableText &quot;autosizes&quot;: it starts out very small if it has no text, and grows in width up to <code>maxWidth</code> as you type. It grows in height when you press the Enter key to start a new line.</p>  <p>The <code>widthInChars</code> and <code>heightInLines</code> properties provide a convenient way to specify the width and height in a way that scales with the font size. You can use the <code>typicalText</code> property as well. Note that if you use <code>typicalText</code>, the <code>widthInChars</code> and <code>heightInLines</code> are ignored. You can also specify an explicit width or height in pixels, or use a percent width and height, or use constraints such as <code>left</code> and <code>right</code> or <code>top</code> and <code>bottom</code>.</p>  <p>When you specify some kind of width -- whether an explicit or percent width, a <code>maxWidth</code> or <code>left</code> and <code>right</code> constraints -- the text wraps at the right edge of the component and the text becomes vertically scrollable when there is more text than fits. If you set the <code>lineBreak</code> style to <code>explicit</code>, new lines will start only at explicit lines breaks, such as if you use CR (<code>\\r</code>), LF (<code>\\n</code>), or CR+LF (<code>\\r\\n</code>) in <code>text</code> or if you use <code>&lt;p&gt;</code> and <code>&lt;br/&gt;</code> in TLF markup. In that case, the text becomes horizontally scrollable if any lines are wider than the control.</p>  <p>You can use the <code>maxChars</code> property to limit the number of character that the user can enter, and the <code>restrict</code> to limit which characters the user can enter.</p>  <p>The <code>multiline</code> property determines what happens when you press the Enter key. If it is <code>true</code>, the Enter key starts a new paragraph. If it is <code>false</code>, it causes a <code>FlexEvent.ENTER</code> event to be dispatched.</p>  <p>If you don't want the text to be editable, set the <code>editable</code> property to <code>false</code>. If you don't even want the text to be selectable, set the <code>selectable</code> property to <code>false</code>.</p>  <p>Because RichEditableText uses TLF, it supports displaying left-to-right (LTR) text such as French, right-to-left (RTL) text such as Arabic, and bidirectional text such as a French phrase inside of an Arabic one. If the predominant text direction is right-to-left, set the <code>direction</code> style to <code>rtl</code>. The <code>textAlign</code> style defaults to <code>&quot;start&quot;</code>, which makes the text left-aligned when <code>direction</code> is <code>ltr</code> and right-aligned when <code>direction</code> is <code>rtl</code>. To get the opposite alignment, set <code>textAlign</code> to <code>end</code>.</p>  <p>As a result of using TLF, the RichEditableText supports unlimited undo/redo within one editing session. An editing session starts when the component gets keyboard focus and ends when it loses focus.</p>  <p>RichEditableText uses TLF's TextContainerManager class to handle its text display, scrolling, selection, editing and context menu.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>   <p>The <code>&lt;s:RichEditableText&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:RichEditableText\\n <strong>Properties</strong>\\n clipAndEnableScrolling=&quot;false|true&quot;\\n contentHeight=&quot;<i>Calculated default</i>&quot;\\n contentWidth=&quot;<i>Calculated default</i>&quot;\\n displayAsPassword=&quot;false&quot;\\n editable=&quot;true&quot;\\n heightInLines=&quot;NaN&quot;\\n horizontalScrollPosition=&quot;0&quot;\\n imeMode=&quot;null&quot;\\n maxChars=&quot;0&quot;\\n multiline=&quot;true&quot;\\n restrict=&quot;null&quot;\\n selectable=&quot;true&quot;\\n selectionActivePosition=&quot;-1&quot;\\n selectionAnchorPosition=&quot;-1&quot;\\n selectionHighlighting=&quot;TextSelectionHighlighting.WHEN_FOCUSED&quot;\\n text=&quot;&quot;\\n textFlow=&quot;<i>TextFlow</i>&quot;\\n typicalText=null\\n verticalScrollPosition=&quot;0&quot;\\n widthInChars=&quot;NaN&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>No default</i>&quot;\\n changing=&quot;<i>No default</i>&quot;\\n enter=&quot;<i>No default</i>&quot;\\n selectionChange=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RichEditableTextExample.mxml", "examples/externalTextFlow.xml -noswf", "examples/RichEditableTextExample.mxml", "examples/externalTextFlow.xml -noswf"]},
    {  "tagName": "see",
       "values": ["spark.components.Label", "spark.components.RichText", "spark.utils.TextFlowUtil", "flashx.textLayout.container.TextContainerManager", "spark.components.Label", "spark.components.RichText", "spark.utils.TextFlowUtil", "flashx.textLayout.container.TextContainerManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.RichText",
  "description": "RichText is a low-level UIComponent that can display one or more lines of richly-formatted text and embedded images.  <p>For performance reasons, it does not support scrolling, selection, editing, clickable hyperlinks, or images loaded from URLs. If you need those capabilities, please see the RichEditableText class.</p>  <p>RichText uses the Text Layout Framework (TLF) library, which in turn builds on the Flash Text Engine (FTE) in Flash Player 10. In combination, they provide rich text layout using high-quality international typography.</p>  <p>The Spark architecture provides three text &quot;primitives&quot; -- Label, RichText, and RichEditableText. Label is the fastest and most lightweight because it uses only FTE, not TLF, but it is limited in its capabilities: no rich text, no scrolling, no selection, and no editing. RichText adds the ability to display rich text with complex layout, but is still completely non-interactive. RichEditableText is the heaviest-weight, but offers most of what TLF can do. You should use the lightest-weight text primitive that meets your needs.</p>  <p>RichText is similar to the MX control mx.controls.Text. The Text control uses the older TextField class, instead of TLF, to display text.</p>  <p>The most important differences between RichText and Text are: <ul> <li>RichText offers better typography, better support for international languages, and better text layout than Text.</li> <li>RichText has an object-oriented model of what it displays, while Text does not.</li> <li>Text is selectable, while RichText does not support selection.</li> </ul></p>  <p>RichText uses TLF's object-oriented model of rich text, in which text layout elements such as divisions, paragraphs, spans, and images are represented at runtime by ActionScript objects which can be programmatically accessed and manipulated. The central object in TLF for representing rich text is a TextFlow, and you specify what RichText should display by setting its <code>textFlow</code> property to a TextFlow instance. (Please see the description of the <code>textFlow</code> property for information about how to create one.) You can also set the <code>text</code> property that is inherited from TextBase, but if you don't need the richness of a TextFlow, you should consider using Label instead.</p>  <p>At compile time, you can put TLF markup tags inside the RichText tag, as the following example shows: <pre>\\n &lt;s:RichText&gt;Hello &lt;s:span fontWeight=&quot;bold&quot;&gt;World!&lt;/s:span&gt;&lt;/s:RichText&gt;\\n </pre> In this case, the MXML compiler sets the <code>content</code> property, causing a TextFlow to be automatically created from the FlowElements that you specify.</p>  <p>The default text formatting is determined by CSS styles such as <code>fontFamily</code>, <code>fontSize</code>. Any formatting information in the TextFlow overrides the default formatting provided by the CSS styles.</p>  <p>You can control the spacing between lines with the <code>lineHeight</code> style and the spacing between paragraphs with the <code>paragraphSpaceBefore</code> and <code>paragraphSpaceAfter</code> styles. You can align or justify the text using the <code>textAlign</code> and <code>textAlignLast</code> styles. You can inset the text from the component's edges using the <code>paddingLeft</code>, <code>paddingTop</code>, <code>paddingRight</code>, and <code>paddingBottom</code> styles.</p>  <p>If you don't specify any kind of width for a RichText, then the longest line, as determined by these explicit line breaks, determines the width of the Label.</p>  <p>When you specify a width, the text wraps at the right edge of the component and the text is clipped when there is more text than fits. If you set the <code>lineBreak</code> style to <code>explicit</code>, new lines will start only at explicit lines breaks, such as if you use CR (<code>\\r</code>), LF (<code>\\n</code>), or CR+LF (<code>\\r\\n</code>) in <code>text</code> or if you use <code>&lt;p&gt;</code> and <code>&lt;br/&gt;</code> in TLF markup. In that case, lines that are wider than the control are clipped.</p>  <p>If you have more text than you have room to display it, RichText can truncate the text for you. Truncating text means replacing excess text with a truncation indicator such as &quot;...&quot;. See the inherited properties <code>maxDisplayedLines</code> and <code>isTruncated</code>.</p>  <p>By default,RichText has no background, but you can draw one using the <code>backgroundColor</code> and <code>backgroundAlpha</code> styles. Borders are not supported. If you need a border, or a more complicated background, use a separate graphic element, such as a Rect, behind the RichText.</p>  <p>Because RichText uses TLF, it supports displaying left-to-right (LTR) text such as French, right-to-left (RTL) text such as Arabic, and bidirectional text such as a French phrase inside of an Arabic one. If the predominant text direction is right-to-left, set the <code>direction</code> style to <code>rtl</code>. The <code>textAlign</code> style defaults to <code>&quot;start&quot;</code>, which makes the text left-aligned when <code>direction</code> is <code>ltr</code> and right-aligned when <code>direction</code> is <code>rtl</code>. To get the opposite alignment, set <code>textAlign</code> to <code>end</code>.</p>  <p>RichText uses TLF's StringTextFlowFactory and TextFlowTextLineFactory classes to create one or more TextLine objects to statically display its text. For performance, its TextLines do not contain information about individual glyphs; for more info, see the TextLineValidity class.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>   <p>The <code>&lt;s:RichText&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:RichText\\n <strong>Properties</strong>\\n luminosityClip=&quot;false&quot;\\n luminosityInvert=&quot;false&quot;\\n maskType=&quot;MaskType.CLIP&quot;\\n textFlow=&quot;<i>TextFlow</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RichTextExample.mxml", "examples/RichTextExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.RichEditableText", "spark.components.Label", "flash.text.engine.TextLineValidity", "spark.components.RichEditableText", "spark.components.Label", "flash.text.engine.TextLineValidity"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.Scroller",
  "description": "The Scroller component displays a single scrollable component, called a viewport, and horizontal and vertical scroll bars. The viewport must implement the IViewport interface.  Its skin must be a derivative of the Group class.  <p>The Spark Group, DataGroup, and RichEditableText components implement the IViewport interface and can be used as the children of the Scroller control, as the following example shows:</p>  <pre>\\n &lt;s:Scroller width=&quot;100&quot; height=&quot;100&quot;&gt;\\n &lt;s:Group&gt;\\n &lt;mx:Image width=&quot;300&quot; height=&quot;400&quot;\\n source=&quot;&#64;Embed(source='assets/logo.jpg')&quot;/&gt;\\n &lt;/s:Group&gt;\\n &lt;/s:Scroller&gt;</pre>  <p>The size of the Image control is set larger than that of its parent Group container. By default, the child extends past the boundaries of the parent container. Rather than allow the child to extend past the boundaries of the parent container, the Scroller specifies to clip the child to the boundaries and display scroll bars.</p>  <p>Not all Spark containers implement the IViewPort interface. Therefore, those containers, such as the BorderContainer and SkinnableContainer containers, cannot be used as the direct child of the Scroller component. However, all Spark containers can have a Scroller component as a child component. For example, to use scroll bars on a child of the Spark BorderContainer, wrap the child in a Scroller component. </p>  <p>To make the entire BorderContainer scrollable, wrap it in a Group container. Then, make the Group container the child of the Scroller component, For skinnable Spark containers that do not implement the IViewport interface, you can also create a custom skin for the container that includes the Scroller component. </p>  <p>The IViewport interface defines a viewport for the components that implement it. A viewport is a rectangular subset of the area of a container that you want to display, rather than displaying the entire container. The scroll bars control the viewport's <code>horizontalScrollPosition</code> and <code>verticalScrollPosition</code> properties. scroll bars make it possible to view the area defined by the viewport's <code>contentWidth</code> and <code>contentHeight</code> properties.</p>  <p>You can directly set properties on the component wrapped by the Scroller by using the <code>Scroller.viewport</code> property. For example, you can modify the viewport's <code>horizontalScrollPosition</code> and <code>verticalScrollPosition</code> properties.</p>  <p>To directly access the scroll bar instances, either HScrollBar or VScrollBar, created by the Scroller, use the <code>Scroller.horizontalScrollBar</code> and <code>Scroller.verticalScrollBar</code> properties.</p>  <p>You can combine scroll bars with explicit settings for the container's viewport. The viewport settings determine the initial position of the viewport, and then you can use the scroll bars to move it, as the following example shows: </p>  <pre>\\n &lt;s:Scroller width=&quot;100&quot; height=&quot;100&quot;&gt;\\n &lt;s:Group\\n horizontalScrollPosition=&quot;50&quot; verticalScrollPosition=&quot;50&quot;&gt;\\n &lt;mx:Image width=&quot;300&quot; height=&quot;400&quot;\\n source=&quot;&#64;Embed(source='assets/logo.jpg')&quot;/&gt;\\n &lt;/s:Group&gt;\\n &lt;/s:Scroller&gt;</pre>  <p>The scroll bars are displayed according to the vertical and horizontal scroll bar policy, which can be <code>auto</code>, <code>on</code>, or <code>off</code>. The <code>auto</code> policy means that the scroll bar will be visible and included in the layout when the viewport's content is larger than the viewport itself.</p>  <p>The Scroller skin layout cannot be changed. It is unconditionally set to a private layout implementation that handles the scroll policies.  Scroller skins can only provide replacement scroll bars.  To gain more control over the layout of a viewport and its scroll bars, instead of using Scroller, just add them to a <code>Group</code> and use the scroll bar <code>viewport</code> property to link them together.</p>  <p>The Scroller control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>0</td> </tr> <tr> <td>Minimum size</td> <td>0</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.ScrollerSkin</td> </tr> </table>   <p>The <code>&lt;s:Scroller&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Scroller\\n <strong>Properties</strong>\\n measuredSizeIncludesScrollBars=&quot;true&quot;\\n minViewportInset=&quot;0&quot;\\n pageScrollingEnabled=&quot;false&quot;\\n scrollSnappingMode=&quot;none&quot;\\n viewport=&quot;null&quot;\\n \\n <strong>Styles</strong>\\n alignmentBaseline=&quot;use_dominant_baseline&quot;\\n alternatingItemColors=&quot;&quot;\\n baselineShift=&quot;0.0&quot;\\n blockProgression=&quot;TB&quot;\\n breakOpportunity=&quot;auto&quot;\\n cffHinting=&quot;horizontal_stem&quot;\\n clearFloats=&quot;none&quot;\\n color=&quot;0&quot;\\n contentBackgroundAlpha=&quot;&quot;\\n contentBackgroundColor=&quot;&quot;\\n digitCase=&quot;default&quot;\\n digitWidth=&quot;default&quot;\\n direction=&quot;LTR&quot;\\n dominantBaseline=&quot;auto&quot;\\n downColor=&quot;&quot;\\n firstBaselineOffset=&quot;auto&quot;\\n focusColor=&quot;&quot;\\n focusedTextSelectionColor=&quot;&quot;\\n fontFamily=&quot;Arial&quot;\\n fontLookup=&quot;device&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;normal&quot;\\n fontWeight=&quot;normal&quot;\\n horizontalScrollPolicy=&quot;auto&quot;\\n inactiveTextSelection=&quot;&quot;\\n justificationRule=&quot;auto&quot;\\n justificationStyle=&quot;auto&quot;\\n kerning=&quot;auto&quot;\\n leadingModel=&quot;auto&quot;\\n ligatureLevel=&quot;common&quot;\\n lineHeight=&quot;120%&quot;\\n lineThrough=&quot;false&quot;\\n listAutoPadding=&quot;40&quot;\\n listStylePosition=&quot;outside&quot;\\n listStyleType=&quot;disc&quot;\\n locale=&quot;en&quot;\\n paragraphEndIndent=&quot;0&quot;\\n paragraphSpaceAfter=&quot;0&quot;\\n paragraphSpaceBefore=&quot;0&quot;\\n paragraphStartIndent=&quot;0&quot;\\n renderingMode=&quot;CFF&quot;\\n rollOverColor=&quot;&quot;\\n symbolColor=&quot;&quot;\\n tabStops=&quot;null&quot;\\n textAlign=&quot;start&quot;\\n textAlignLast=&quot;start&quot;\\n textAlpha=&quot;1&quot;\\n textDecoration=&quot;none&quot;\\n textIndent=&quot;0&quot;\\n textJustify=&quot;inter_word&quot;\\n textRotation=&quot;auto&quot;\\n trackingLeft=&quot;0&quot;\\n trackingRight=&quot;0&quot;\\n typographicCase=&quot;default&quot;\\n unfocusedTextSelectionColor=&quot;&quot;\\n verticalScrollPolicy=&quot;auto&quot;\\n whiteSpaceCollapse=&quot;collapse&quot;\\n wordSpacing=&quot;100%,50%,150%&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ScrollerExample.mxml", "examples/ScrollerExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.core.IViewport", "spark.components.DataGroup", "spark.components.Group", "spark.components.RichEditableText", "spark.skins.spark.ScrollerSkin", "spark.core.IViewport", "spark.components.DataGroup", "spark.components.Group", "spark.components.RichEditableText", "spark.skins.spark.ScrollerSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.SkinnableContainer",
  "description": "The SkinnableContainer class is the base class for skinnable containers that have visual content. The SkinnableContainer container takes as children any components that implement the IVisualElement interface. All Spark and Halo components implement the IVisualElement interface, as does the GraphicElement class. That means the container can use the graphics classes, such as Rect and Ellipse, as children.  <p>To improve performance and minimize application size, you can use the Group container. The Group container cannot be skinned.</p>  <p>The SkinnableContainer container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:SkinnableContainer&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:SkinnableContainer\\n <strong>Properties</strong>\\n autoLayout=&quot;true&quot;\\n creationPolicy=&quot;auto&quot;\\n layout=&quot;BasicLayout&quot;\\n \\n <strong>Styles</strong>\\n accentColor=&quot;0x0099FF&quot;\\n alignmentBaseline=&quot;useDominantBaseline&quot;\\n alternatingItemColors=&quot;&quot;\\n backgroundAlpha=&quot;1.0&quot;\\n backgroundColor=&quot;0xFFFFFF&quot;\\n baselineShift=&quot;0.0&quot;\\n blockProgression=&quot;TB&quot;\\n breakOpportunity=&quot;auto&quot;\\n cffHinting=&quot;horizontal_stem&quot;\\n clearFloats=&quot;none&quot;\\n color=&quot;0&quot;\\n contentBackgroundAlpha=&quot;&quot;\\n contentBackgroundColor=&quot;&quot;\\n digitCase=&quot;default&quot;\\n digitWidth=&quot;default&quot;\\n direction=&quot;LTR&quot;\\n dominantBaseline=&quot;auto&quot;\\n downColor=&quot;&quot;\\n firstBaselineOffset=&quot;auto&quot;\\n focusColor=&quot;&quot;\\n focusedTextSelectionColor=&quot;&quot;\\n fontFamily=&quot;Arial&quot;\\n fontLookup=&quot;device&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;normal&quot;\\n fontWeight=&quot;normal&quot;\\n inactiveTextSelectionColor=&quot;0xE8E8E8&quot;\\n justificationRule=&quot;auto&quot;\\n justificationStyle=&quot;auto&quot;\\n kerning=&quot;auto&quot;\\n leadingModel=&quot;auto&quot;\\n ligatureLevel=&quot;common&quot;\\n lineHeight=&quot;120%&quot;\\n lineThrough=&quot;false&quot;\\n listAutoPadding=&quot;40&quot;\\n listStylePosition=&quot;outside&quot;\\n listStyleType=&quot;disc&quot;\\n locale=&quot;en&quot;\\n paragraphEndIndent=&quot;0&quot;\\n paragraphSpaceAfter=&quot;0&quot;\\n paragraphSpaceBefore=&quot;0&quot;\\n paragraphStartIndent=&quot;0&quot;\\n renderingMode=&quot;CFF&quot;\\n rollOverColor=&quot;&quot;\\n symbolColor=&quot;&quot;\\n tabStops=&quot;null&quot;\\n textAlign=&quot;start&quot;\\n textAlignLast=&quot;start&quot;\\n textAlpha=&quot;1&quot;\\n textDecoration=&quot;none&quot;\\n textIndent=&quot;0&quot;\\n textJustify=&quot;inter_word&quot;\\n textRotation=&quot;auto&quot;\\n trackingLeft=&quot;0&quot;\\n trackingRight=&quot;0&quot;\\n typographicCase=&quot;default&quot;\\n unfocusedTextSelectionColor=&quot;&quot;\\n verticalScrollPolicy=&quot;auto&quot;\\n whiteSpaceCollapse=&quot;collapse&quot;\\n wordSpacing=&quot;100%,50%,150%&quot;\\n \\n <strong>Events</strong>\\n elementAdd=&quot;<i>No default</i>&quot;\\n elementRemove=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SkinnableContainerExample.mxml", "examples/MyBorderSkin.mxml -noswf", "examples/SkinnableContainerExample.mxml", "examples/MyBorderSkin.mxml -noswf"]},
    {  "tagName": "see",
       "values": ["SkinnableDataContainer", "Group", "spark.skins.spark.SkinnableContainerSkin", "SkinnableDataContainer", "Group", "spark.skins.spark.SkinnableContainerSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.SkinnablePopUpContainer",
  "description": "The SkinnablePopUpContainer class is a SkinnableContainer that functions as a pop-up. One typical use for a SkinnablePopUpContainer container is to open a simple window in an application, such as an alert window, to indicate that the user must perform some action.  <p>You do not create a SkinnablePopUpContainer container as part of the normal layout of its parent container. Instead, it appears as a pop-up window on top of its parent. Therefore, you do not create it directly in the MXML code of your application.</p>  <p>Instead, you create is as an MXML component, often in a separate MXML file. To show the component create an instance of the MXML component, and then call the <code>open()</code> method. You can also set the size and position of the component when you open it.</p>  <p>To close the component, call the <code>close()</code> method. If the pop-up needs to return data to a handler, you can add an event listener for the <code>PopUp.CLOSE</code> event, and specify the returned data in the <code>close()</code> method.</p>  <p>The SkinnablePopUpContainer is initially in its <code>closed</code> skin state. When it opens, it adds itself as a pop-up to the PopUpManager, and transition to the <code>normal</code> skin state. To define open and close animations, use a custom skin with transitions between the <code>closed</code> and <code>normal</code> skin states.</p>  <p>The SkinnablePopUpContainer container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> <tr><td>Default skin class</td><td>spark.skins.spark.SkinnablePopUpContainerSkin</td></tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:SkinnablePopUpContainer\\n <strong>Events</strong>\\n close=&quot;<i>No default</i>&quot;\\n open=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.skins.spark.SkinnablePopUpContainerSkin", "spark.skins.spark.SkinnablePopUpContainerSkin"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:SkinnablePopUpContainer&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:SkinnablePopUpContainer&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.TabBar",
  "description": "The TabBar class displays a set of identical tabs. One tab can be selected at a time, and the first tab is selected by default. The TabBarSkin class arranges the tabs in a single row. Use the TabBar <code>cornerRadius</code> style to configure the corner radius of the tabs.  <p>The set of tabs is defined by the <code>dataProvider</code> property. The appearance of the TabBar is defined by the TabBarSkin class. The appearance of each tab is defined by the TabBarButtonSkin class.</p>  <p>You can use the TabBar control to set the active child of a ViewStack container, as the following example shows:</p>  <p><b>Note: </b>The Spark list-based controls (the Spark ListBase class and its subclasses such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class as the value of the <code>layout</code> property. Do not use BasicLayout with the Spark list-based controls.</p>  <pre>\\n &lt;s:TabBar dataProvider=&quot;{myViewStack}&quot;/&gt;\\n \\n &lt;mx:ViewStack id=&quot;myViewStack&quot;\\n borderStyle=&quot;solid&quot;&gt;\\n \\n &lt;s:NavigatorContent id=&quot;search&quot; label=&quot;Search&quot;&gt;\\n &lt;s:Label text=&quot;Search Screen&quot;/&gt;\\n &lt;/s:NavigatorContent&gt;\\n \\n &lt;s:NavigatorContent id=&quot;custInfo&quot; label=&quot;Customer Info&quot;&gt;\\n &lt;s:Label text=&quot;Customer Info&quot;/&gt;\\n &lt;/s:NavigatorContent&gt;\\n \\n &lt;s:NavigatorContent id=&quot;accountInfo&quot; label=&quot;Account Info&quot;&gt;\\n &lt;s:Label text=&quot;Account Info&quot;/&gt;\\n &lt;/s:NavigatorContent&gt;\\n &lt;/mx:ViewStack&gt; </pre>  <p>The TabBar container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display the tabs</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:TabBar\\n <b>Styles</b>\\n cornerRadius=&quot;4&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TabBarExample.mxml", "examples/TabBarExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.containers.ViewStack", "spark.skins.spark.TabBarSkin", "spark.skins.spark.TabBarButtonSkin", "mx.containers.ViewStack", "spark.skins.spark.TabBarSkin", "spark.skins.spark.TabBarButtonSkin"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:TabBar&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:TabBar&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.TextArea",
  "description": "TextArea is a text-entry control that lets users enter and edit multiple lines of formatted text.  <p><b>The skin for the Spark theme uses the RichEditableText class. This means that the Spark TextArea control supports the Text Layout Framework (TLF) library, which builds on the Flash Text Engine (FTE).</b> In combination, these layers provide text editing with high-quality international typography and layout. The skin includes a scroller that can display horizontal and vertical scrollbars for scrolling through the text and supports vertical scrolling with the mouse wheel. The RichEditableText can be accessed as <code>textDisplay</code> and the Scroller as <code>scroller</code>.</p>  <p><b>The skin for the mobile theme uses the StyleableStageText class.</b> Since StyleableStageText uses native text fields it allows for better text entry and manipulation experiences on mobile devices however there are some <a href=&quot;supportClasses/StyleableStageText.html&quot;>limitations and differences</a> that you should consider. Because StageText is not capable of measuring text, the TextArea must be given explicit, percent-based, or constraint-based <code>width</code> and <code>height</code>. The StyleableStageText can be accessed as <code>textDisplay</code>. If you wish to use the TextField-based skin, rather than the StageText-based skin, set the <code>skinClass</code> property to <code>&quot;spark.skins.mobile.TextAreaSkin&quot;</code>.</p>  <p>You can set the text to be displayed, or get the text that the user has entered, using the <code>text</code> property.</p>  <p>The text is formatted using CSS styles such as <code>fontFamily</code> and <code>fontSize</code>.</p>  <p>For the Spark theme,  the <code>widthInChars</code> and <code>heightInLines</code> properties let you specify the width and height of the TextArea in a way that scales with the font size or you can use the <code>typicalText</code> property. Note that if you use <code>typicalText</code>, the <code>widthInChars</code> and <code>heightInLines</code> properties are ignored. For all themes, you can also specify an explicit width or height in pixels, or use a percent width and height or constraints such as <code>left</code> and <code>right</code> or <code>top</code> and <code>bottom</code>.</p>  <p>You can use the <code>maxChars</code> property to limit the number of character that the user can enter, and the <code>restrict</code> to limit which characters the user can enter. To use this control for password input, set the <code>displayAsPassword</code> property to <code>true</code>.</p>  <p>For the mobile theme, the soft-keyboard-specific properties, <code>autoCapitalize</code>, <code>autoCorrect</code>, <code>returnKeyLabel</code> and <code>softKeyboardType</code> properties specify keyboard hints. If a soft-keyboard is present but does not support a feature represented by the hint, the hint is ignored. In mobile environments with only hardware keyboards, these hints are ignored. </p>  <p><b>Text Area for the Spark Theme</b></p>  <p>The most important differences between Spark TextArea and the MX TextArea control are as follows: <ul> <li>Spark TextArea offers better typography, better support for international languages, and better text layout.</li> <li>Spark TextArea has an object-oriented model of rich text, while the MX version does not.</li> <li>Spark TextArea has better support for displaying large amounts of text.</li> <li>Spark TextArea requires that fonts be embedded differently than the MX version. To learn how to use the <code>embedAsCFF</code> attribute when you embed a font, see the font documentation.</li> </ul></p>  <p>The Spark TextArea control uses the TLF object-oriented model of rich text, in which text layout elements such as divisions, paragraphs, spans, hyperlinks, and images are represented at runtime by ActionScript objects. You can programmatically access and manipulate these objects. The central object in TLF for representing rich text is a TextFlow. Specify rich text for a TextArea control by setting its <code>textFlow</code> property to a TextFlow instance.</p>  <p>If you don't need to display text that has multiple formats, set the TextArea <code>text</code> property to a plain text string. See the descriptions of the <code>text</code> and <code>textFlow</code> properties for information about how they interact; for example, you can set one and get the other.</p>  <p>At compile time, you can put TLF markup tags inside the TextArea tag, as the following example shows: <pre>\\n &lt;s:TextArea&gt;Hello &lt;s:span fontWeight=&quot;bold&quot;&gt;World!&lt;/s:span&gt;&lt;/s:TextArea&gt;\\n </pre> In this example, the MXML compiler sets the TextArea <code>content</code> property, causing a TextFlow object to be created from the FlowElements that you specify.</p>  <p>The TextArea control does not include any user interface for changing the formatting of the text but contains APIs that you can use to programmatically format text. For example, you can create a a button that, when clicked, makes the selected text bold.</p>  <p>The default text formatting is determined by CSS styles such as <a href=&quot;supportClasses/SkinnableTextBase.html#style:fontFamily&quot;>fontFamily</a> and <a href=&quot;supportClasses/SkinnableTextBase.html#style:fontSize&quot;>fontSize</a>. Any formatting information in the TextFlow object overrides the default formatting provided by the CSS styles.</p>  <p>You can control many characteristics of TextArea content with styles. Here are a few popular ones:</p>  <ul><li>Control spacing between lines with the <code>lineHeight</code> style.</li> <li>Control the spacing between paragraphs with the <code>paragraphSpaceBefore</code> and <code>paragraphSpaceAfter</code> styles.</li> <li>Align or justify text using the <code>textAlign</code> and <code>textAlignLast</code> styles.</li> <li>Inset text from the border of the control using the <code>paddingLeft</code>, <code>paddingTop</code>, <code>paddingRight</code>, and <code>paddingBottom</code> styles.</li> </ul>  <p>By default, the text wraps at the right edge of the control. A vertical scrollbar automatically appears when there is more text than fits in the TextArea. If you set the <code>lineBreak</code> style to <code>explicit</code>, new lines start only at explicit line breaks. This has the same effect as if you use CR (<code>\\r</code>), LF (<code>\\n</code>), or CR+LF (<code>\\r\\n</code>) in <code>text</code>, or if you use <code>&lt;p&gt;</code> and <code>&lt;br/&gt;</code> in TLF markup. In those cases, a horizontal scrollbar automatically appears if any lines of text are wider than the control.</p>   <p>The Spark TextArea can display left-to-right (LTR) text, such as French, right-to-left (RTL) text, such as Arabic, and bidirectional text, such as a French phrase inside of an Arabic one. If the predominant text direction is right-to-left, set the <code>direction</code> style to <code>rtl</code>. The <code>textAlign</code> style defaults to <code>start</code>, which makes the text left-aligned when <code>direction</code> is <code>ltr</code> and right-aligned when <code>direction</code> is <code>rtl</code>. To get the opposite alignment, set <code>textAlign</code> to <code>end</code>.</p>  <p>The Spark TextArea also supports unlimited undo/redo within one editing session. An editing session starts when the control gets keyboard focus and ends when the control loses focus.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>For the Spark theme, the TextArea control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>188 pixels wide by 149 pixels high</td> </tr> <tr> <td>Minimum size</td> <td>36 pixels wide and 36 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.TextAreaSkin</td> </tr> </table>  <p>For the Mobile theme, the TextArea control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default skin class</td> <td>spark.skins.mobile.StageTextAreaSkin</td> </tr> </table>   <p>The <code>&lt;s:TextArea&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:TextArea\\n <strong>Properties</strong>\\n heightInLines=&quot;<i>Calculated default</i>&quot;  <b>[Spark theme only]</b>\\n textFlow=&quot;<i>TextFlow</i>&quot;  <b>[Spark theme only]</b>\\n typicalText=null  <b>[Spark theme only]</b>\\n widthInChars=&quot;<i>Calculated default</i>&quot;  <b>[Spark theme only]</b>\\n \\n <strong>Styles</strong>\\n horizontalScrollPolicy=&quot;auto&quot;  <b>[Spark theme only]</b>\\n symbolColor=&quot;&quot;\\n verticalScrollPolicy=&quot;auto&quot;  <b>[Spark theme only]</b>\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TextAreaExample.mxml", "examples/TextAreaExample.mxml"]},
    {  "tagName": "see",
       "values": ["#text", "#textFlow", "spark.components.TextInput", "spark.components.RichText", "spark.components.RichEditableText", "spark.components.Scroller", "spark.components.Label", "spark.skins.mobile.StageTextAreaSkin", "spark.skins.mobile.TextAreaSkin", "spark.skins.spark.TextAreaSkin", "#text", "#textFlow", "spark.components.TextInput", "spark.components.RichText", "spark.components.RichEditableText", "spark.components.Scroller", "spark.components.Label", "spark.skins.mobile.StageTextAreaSkin", "spark.skins.mobile.TextAreaSkin", "spark.skins.spark.TextAreaSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.TextInput",
  "description": "TextInput is a text-entry control that lets users enter and edit a single line of uniformly-formatted text.  <p><b>The TextInput skin for the Spark theme uses the RichEditableText class. This means that the Spark TextInput control supports the Text Layout Framework (TLF) library, which builds on the Flash Text Engine (FTE).</b> In combination, these layers provide text editing with high-quality international typography and layout.</p>  <p><b>The TextInput skin for the mobile theme uses the StyleableStageText class instead of RichEditableText.</b> Since StyleableStageText uses native text fields it allows for better text entry and manipulation experiences on mobile devices however there are <a href=&quot;supportClasses/StyleableStageText.html&quot;>limitations and differences</a> that you should consider. The native text controls used by StageText apply different paddings around text. In order to avoid vertical scrolling, the StageText-based TextInput skin attempts to estimate this padding and compensate for that. Because of this and other differences in how native text controls treat text, the default height of the TextInput control using StageText-based skin will differ from its default height using the the TextField-based TextInput skin. </p>  <p>You can set the text to be displayed, or get the text that the user has entered, using the <code>text</code> property. This property is a String, so if the user enter a numeric value it will be reported, for example, as &quot;123.45&quot; rather than 123.45.</p>  <p>The text is formatted using CSS styles such as <code>fontFamily</code> and <code>fontSize</code>.</p>  <p>For the Spark theme you can specify the width of the control using the <code>widthInChars</code> property which provides a convenient way to specify the width in a way that scales with the font size or you can use the <code>typicalText</code> property. Note that if you use <code>typicalText</code>, the <code>widthInChars</code> property is ignored. For all themes, you can also specify an explicit width in pixels, a percent width, or use constraints such as <code>left</code> and <code>right</code>. You do not normally do anything to specify the height; the control's default height is sufficient to display one line of text. </p>  <p>You can use the <code>maxChars</code> property to limit the number of character that the user can enter, and the <code>restrict</code> to limit which characters the user can enter. To use this control for password input, set the <code>displayAsPassword</code> property to <code>true</code>.</p>  <p>For the mobile theme, the soft-keyboard-specific properties, <code>autoCapitalize</code>, <code>autoCorrect</code>, <code>returnKeyLabel</code> and <code>softKeyboardType</code> properties specify keyboard hints. If a soft-keyboard is present but does not support a feature represented by the hint, the hint is ignored. In mobile environments with only hardware keyboards, these hints are ignored. </p>  <p>This control dispatches a <code>FlexEvent.ENTER</code> event when the user pressed the Enter key rather than inserting a line break, because this control does not support entering multiple lines of text. By default, this control has explicit line breaks.</p>  <p>This control is a skinnable control whose default skin contains either a RichEditableText instance for the Spark theme or a StyleableStageText instance for the Mobile theme. It handles displaying and editing the text. (The skin also handles drawing the border and background.) This RichEditableText or StyleableStageText instance can be accessed as the <code>textDisplay</code> object.  For the mobile theme, if you wish to use the TextField-based skin, rather than the StageText-based skin, set the <code>skinClass</code> property to <code>&quot;spark.skins.mobile.TextInputSkin&quot;</code>.</p>  <p>For the Spark theme, as a result of its RichEditableText using TLF, the Spark TextInput control supports displaying left-to-right (LTR) text, such as French, right-to-left (RTL) text, such as Arabic, and bidirectional text such as a French phrase inside of an Arabic one. If the predominant text direction is right-to-left, set the <code>direction</code> style to <code>rtl</code>. The <code>textAlign</code> style defaults to <code>start</code>, which makes the text left-aligned when <code>direction</code> is <code>ltr</code> and right-aligned when <code>direction</code> is <code>rtl</code>. To get the opposite alignment, set <code>textAlign</code> to <code>end</code>.</p>  <p>Also as a result of using TLF, the Spark TextInput supports unlimited undo/redo within one editing session. An editing session starts when the control gets keyboard focus and ends when the control loses focus.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>For the Spark theme, the TextInput control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>128 pixels wide by 22 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.TextInputSkin</td> </tr> </table>  <p>For the Mobile theme, the TextInput control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default skin class</td> <td>spark.skins.mobile.StageTextInputSkin</td> </tr> </table>    <p>The <code>&lt;s:TextInput&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:TextInput\\n \\n widthInChars=&quot;<i>Calculated default</i>&quot;  <b>[applies to Spark theme]</b>\\n \\n <strong>Events</strong>\\n enter=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TextInputExample.mxml", "examples/TextInputExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Label", "spark.components.RichEditableText", "spark.skins.mobile.StageTextInputSkin", "spark.skins.mobile.TextInputSkin", "spark.skins.spark.TextInputSkin", "TextArea", "spark.components.Label", "spark.components.RichEditableText", "spark.skins.mobile.StageTextInputSkin", "spark.skins.mobile.TextInputSkin", "spark.skins.spark.TextInputSkin", "TextArea"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.TileGroup",
  "description": "The TileGroup container is an instance of the Group container that uses the TileLayout class. Do not modify the <code>layout</code> property. Instead, use the properties of the TileGroup class to modify the characteristics of the TileLayout class.  <p>The TileGroup container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:TileGroup&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:TileGroup\\n <strong>Properties</strong>\\n columnAlign=&quot;left&quot;\\n columnCount=&quot;-1&quot;\\n columnWidth=&quot;0&quot;\\n horizontalAlign=&quot;justify&quot;\\n horizontalGap=&quot;6&quot;\\n orientation=&quot;rows&quot;\\n padding=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n requestedColumnCount&quot;-1&quot;\\n requestedRowCount=&quot;-1&quot;\\n rowAlign=&quot;top&quot;\\n rowCount=&quot;-1&quot;\\n rowHeight=&quot;0&quot;\\n verticalAlign=&quot;justify&quot;\\n verticalGap=&quot;6&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/TileGroupExample.mxml", "examples/TileGroupExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.layouts.TileLayout", "spark.layouts.TileLayout"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.TitleWindow",
  "description": "The TitleWindow class extends Panel to include a close button and move area.  <p>The TitleWindow is designed as a pop-up window. Do not create a TitleWindow in MXML as part of an application. Instead, you typically create a custom MXML component based on the TitleWindow class, and then use the <code>PopUpManager.createPopUp()</code> method to pop up the component, and the <code>PopUpManager.removePopUp()</code> method to remove the component.</p>  <p>The TitleWindow container has the following default sizing characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Height is large enough to hold all of the children in the content area at the default or explicit heights of the children, plus the title bar and border, plus any vertical gap between the children, plus the top and bottom padding of the container.<br/> Width is the larger of the default or explicit width of the widest child, plus the left and right container borders padding, or the width of the title text.</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.TitleWindowSkin</td> </tr> </table>   <p>The <code>&lt;s:TitleWindow&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:TitleWindow&gt;\\n <strong>Events</strong>\\n close=&quot;<i>No default</i>&quot;\\n windowMove=&quot;<i>No default</i>&quot;\\n windowMoveEnd=&quot;<i>No default</i>&quot;\\n windowMoveStart=&quot;<i>No default</i>&quot;\\n windowMoving=&quot;<i>No default</i>&quot;\\n &lt;/s:TitleWindow&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/SimpleTitleWindowExample.mxml -noswf", "examples/TitleWindowApp.mxml", "examples/SimpleTitleWindowExample.mxml -noswf", "examples/TitleWindowApp.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Panel", "spark.skins.spark.TitleWindowSkin", "spark.skins.spark.TitleWindowCloseButtonSkin", "mx.managers.PopUpManager", "spark.components.Panel", "spark.skins.spark.TitleWindowSkin", "spark.skins.spark.TitleWindowCloseButtonSkin", "mx.managers.PopUpManager"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.ToggleButton",
  "description": "The ToggleButton component defines a toggle button. Clicking the button toggles it between the up and an down states. If you click the button while it is in the up state, it toggles to the down state. You must click the button again to toggle it back to the up state.  <p>You can get or set this state programmatically by using the <code>selected</code> property.</p>  <p>To use this component in a list-based component, such as a List or DataGrid, create an item renderer. For information about creating an item renderer, see <a href=&quot;http://help.adobe.com/en_US/flex/using/WS4bebcd66a74275c3-fc6548e124e49b51c4-8000.html&quot;> Custom Spark item renderers</a>. </p>  <p>The ToggleButton control has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr> <th>Characteristic</th> <th>Description</th> </tr> <tr> <td>Default size</td> <td>Wide enough to display the text label of the control</td> </tr> <tr> <td>Minimum size</td> <td>21 pixels wide and 21 pixels high</td> </tr> <tr> <td>Maximum size</td> <td>10000 pixels wide and 10000 pixels high</td> </tr> <tr> <td>Default skin class</td> <td>spark.skins.spark.ToggleButtonSkin</td> </tr> </table>   <p>The <code>&lt;s:ToggleButton&gt;</code> tag inherits all of the tag attributes of its superclass and adds no tag attributes:</p>  <pre>\\n &lt;s:ToggleButton/&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ToggleButtonExample.mxml", "examples/ToggleButtonExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.ToggleButtonSkin", "spark.skins.spark.ToggleButtonSkin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.VGroup",
  "description": "The VGroup container is an instance of the Group container that uses the VerticalLayout class. Do not modify the <code>layout</code> property. Instead, use the properties of the VGroup class to modify the characteristics of the VerticalLayout class.  <p>The VGroup container has the following default characteristics:</p> <table class=&quot;innertable&quot;> <tr><th>Characteristic</th><th>Description</th></tr> <tr><td>Default size</td><td>Large enough to display its children</td></tr> <tr><td>Minimum size</td><td>0 pixels</td></tr> <tr><td>Maximum size</td><td>10000 pixels wide and 10000 pixels high</td></tr> </table>   <p>The <code>&lt;s:VGroup&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:VGroup\\n <strong>Properties</strong>\\n gap=&quot;6&quot;\\n horizontalAlign=&quot;left&quot;\\n padding=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n requestedMaxRowCount=&quot;-1&quot;\\n requestedMinRowCount=&quot;-1&quot;\\n requestedRowCount&quot;-1&quot;\\n rowHeight=&quot;no default&quot;\\n variableRowHeight=&quot;true&quot;\\n verticalAlign=&quot;top&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/VGroupExample.mxml", "examples/VGroupExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.layouts.VerticalLayout", "spark.layouts.VerticalLayout"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.beads.DropDownListView",
  "description": "The DropDownListView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.GroupView",
  "description": "The PanelView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.PanelView",
  "description": "The PanelView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.SkinnableContainerView",
  "description": "The SkinnableContainerView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.SparkContainerView",
  "description": "The SparkContainerView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.SparkSkinScrollingViewport",
  "description": "The viewport that loads a Spark Skin.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.SparkSkinViewport",
  "description": "The viewport that loads a Spark Skin.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.TabBarView",
  "description": "The SkinnableContainerView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.TitleWindowView",
  "description": "The PanelView for emulation.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.controllers.DropDownListController",
  "description": "The controller for Spark Dropdownlist.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.beads.controllers.TabBarController",
  "description": "The controller for Spark TabBar.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.gridClasses.CellPosition",
  "description": "The CellPosition class defines a data structure used by the Spark data grid classes to represent selected cells in the control. Each selected cell is represented by an instance of this class.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid#selectedCell", "spark.components.DataGrid#selectedCells", "spark.components.Grid#selectedCell", "spark.components.Grid#selectedCells", "spark.components.DataGrid#selectedCell", "spark.components.DataGrid#selectedCells", "spark.components.Grid#selectedCell", "spark.components.Grid#selectedCells"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.CellRegion",
  "description": "The CellRegion class defines a data structure used by the Spark data grid classes to represent a rectangular region of cells in the control. The origin of the region is specified by the <code>rowIndex</code> and <code>columnIndex</code> properties. The extent of the region is specified by the <code>rowCount</code> and the <code>columnCount</code> properties.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.Grid", "spark.components.DataGrid", "spark.components.Grid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.DataGridEditor",
  "description": "The DataGridEditor contains all the logic and event handling needed to manage the life cycle of an item editor. A DataGridEditor is owned by a specified DataGrid. The owning DataGrid is responsible for calling initialize() to enable editing and uninitialize() when editing is no longer needed.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridColumn",
  "description": "The GridColumn class defines a column of a Spark grid control, such as the Spark DataGrid or Grid control. Each data provider item for the control corresponds to one row of the grid. The GridColumn class specifies the field of the data provider item whose value is to be displayed in the column. It also specifies the item renderer used to display that value, the item editor used to change the value, and other properties of the column.  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:GridColumn\\n <strong>Properties</strong>\\n dataField=&quot;null&quot;\\n dataTipField=&quot;null&quot;\\n dataTipFormatter=&quot;null&quot;\\n dataTipFunction=&quot;null&quot;\\n editable=&quot;true&quot;\\n formatter=&quot;null&quot;\\n headerRenderer=&quot;null&quot;\\n headerText=&quot;<i>value of dataField</i>&quot;\\n imeMode=&quot;null&quot;\\n itemEditor=&quot;null&quot;\\n itemRenderer=&quot;null&quot;\\n itemRendererFunction=&quot;null&quot;\\n labelFunction=&quot;null&quot;\\n maxWidth=&quot;NaN&quot;\\n minWidth=&quot;20&quot;\\n rendererIsEditable=&quot;false&quot;\\n resizeable=&quot;true&quot;\\n showDataTips=&quot;undefined&quot;\\n sortable=&quot;true&quot;\\n sortCompareFunction=&quot;null&quot;\\n sortDescending=&quot;false&quot;\\n visible=&quot;true&quot;\\n width=&quot;NaN&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GridColumnExample.mxml", "examples/GridColumnVisibilityExample.mxml", "examples/GridColumnExample.mxml", "examples/GridColumnVisibilityExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Grid", "spark.components.DataGrid", "spark.components.Grid", "spark.components.DataGrid"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:GridColumn&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:GridColumn&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridDimensions",
  "description": "A sparse data structure that represents the widths and heights of a grid.  <p>Provides efficient support for finding the cumulative y distance to the start of a particular cell as well as finding the index of a particular cell at a certain y value. GridDimensions optimizes these operations by bookmarking the most recently visited rows.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridDimensionsView",
  "description": "A &quot;view&quot; of a rectangular region within a GridDimensions object.   The origin of the region is specified by viewRowIndex,viewColumnIndex and the size of the region by viewRowCount and viewColumnCount.  Unless otherwise specified, all of the methods defined here have GridDimensionsView-relative parameters and similarly return values relative to the GridView's viewRow,ColumnIndex origin.  All of the methods and properties defined here just delegate to GridDimensions methods with the same names and semantics.  This class is internal to the Grid implementation.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 11", "AIR 3", "Flash 11", "AIR 3"]},
    {  "tagName": "productversion",
       "values": ["Flex 5.0", "Flex 5.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.components.gridClasses.GridDoubleClickMode",
  "description": "The GridDoubleClickMode class defines the valid constant values for the <code>doubleClickMode</code> property of the Spark DataGrid and Grid controls.  <p>Use the constants in ActionsScript, as the following example shows: </p> <pre>\\n myDG.doubleClickMode = GridDoubleClickMode.ROW;\\n myDG.doubleClickEnabled = true;\\n </pre>  <p>In MXML, use the String value of the constants, as the following example shows:</p> <pre>\\n &lt;s:DataGrid id=&quot;myGrid&quot; width=&quot;350&quot; height=&quot;150&quot;\\n doubleClickMode=&quot;row&quot; doubleClickEnabled=&quot;true&quot;&gt;\\n ...\\n &lt;/s:DataGrid&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid#doubleClickMode", "spark.components.Grid#doubleClickMode", "spark.components.DataGrid#doubleClickMode", "spark.components.Grid#doubleClickMode"]},
    {  "tagName": "playerversion",
       "values": ["Flash 11.1", "AIR 3.4", "Flash 11.1", "AIR 3.4"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.10", "Flex 4.10"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridItemEditorActivationMouseEvent",
  "description": "The EditorActivationMouseEvent class defines the possible values for the the kinds of mouse events that cause an editor to be opened on a Spark DataGrid component.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.DataGrid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 11", "AIR 3.0", "Flash 11", "AIR 3.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 5.0", "Flex 5.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridItemRenderer",
  "description": "The GridItemRenderer class defines the base class for custom item renderers for the Spark grid controls, such as DataGrid and Grid. Item renderers are only required to display column-specific aspects of their data. They are not responsible for displaying the selection or hover indicators, the alternating background color (if any), or row or column separators.  <p>Item renderers are associated with each column of a grid. Set the item renderer for a column by using the <code>GridColumn.itemRenderer property</code>.</p>  <p>By default, an item renderer does not clip to the boundaries of the cell. If your renderer extends past the bounds of the cell, you can set <code>clipAndEnableScrolling</code> to <code>true</code> to clip the renderer to the bounds of the cell.</p>  <p>Transitions in DataGrid item renderers aren't supported. The GridItemRenderer class has disabled its <code>transitions</code> property so setting it will have no effect.</p>  <p><b>Efficiency Considerations</b></p>  <p>DataGrid scrolling and startup performance are directly linked to item renderer complexity and the number of item renderers that are visible within the DataGrid's scroller.  Custom GridItemRenderer instances are used and reused repeatedly so it's important to define them as simply and efficiently as  possible.</p>  <p>If an item renderer's responsibility is limited to displaying one or more lines of text, then developers should seriously consider using the DefaultItemRenderer class which does so very economically (an application that's only going to be deployed on Windows one can gain some additional performance by using the UITextFieldGridItemRenderer class instead).  The most efficient way to use GridItemRenderer to display the GridColumn's dataField as text is to identify the GridItemRenderer's text displaying element with <code>id=&quot;labelDisplay&quot;</code>.  The labelDisplay component must be a <code>TextBase</code> subclass like <code>Label</code> or <code>RichText</code>.  You might take this approach, instead of just using DefaultGridItemRenderer, if your item renderer included some additional elements that did not depend on the item renderer's data, like borders or other graphic elements.</p>  <p>An item renderer that contains more than one visual element whose properties depend on the item renderer's data can use data binding to define the values of those properties.  This approach yields MXML code that's straightforward to read and maintain and its performance may be adequate if the number of visible item renderers is limited (see the DataGrid <code>requestedRowCount</code> and <code>requestedColumnCount</code> properties).  The most efficient way to configure this kind of item renderer is to override its <code>prepare()</code> method and do the work there.  The renderer's <code>prepare()</code> method is called each time the renderer is redisplayed and so it's important that it's coded efficiently.  If your item renderer is stateful, for example if it caches internal values, you can clear its state in its <code>discard()</code> method.  The <code>discard()</code> method is called each time the renderer is moved to the DataGrid's internal free list, where it's available for reuse.</p>  <p>GridItemRenderers should be as simple as possible.  To gain the best possible performance, minimize the number of components, and the depth of the hierarchy.  If it's practical, use explicit positions and sizes rather than constraints to define the layout. DataGrid's with <code>variableRowHeight=&quot;false&quot;</code> (the default) tend to perform better, likewise for <code>showDataTips=&quot;false&quot;</code> (the default) and <code>clipAndEnableScrolling=&quot;false&quot;</code> (the default).</p>  <p>Examples of the various GridItemRenderer configurations described here are available in the examples section.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/GridItemRendererExample.mxml", "examples/GridItemRendererCustomBindingExample.mxml", "examples/GridItemRendererCustomPrepareExample.mxml", "examples/GridItemRendererExample.mxml", "examples/GridItemRendererCustomBindingExample.mxml", "examples/GridItemRendererCustomPrepareExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.Grid", "spark.components.gridClasses.GridColumn", "spark.components.gridClasses.GridColumn#itemRenderer", "spark.skins.spark.DefaultGridItemRenderer", "spark.components.DataGrid", "spark.components.Grid", "spark.components.gridClasses.GridColumn", "spark.components.gridClasses.GridColumn#itemRenderer", "spark.skins.spark.DefaultGridItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridLayer",
  "description": "The GridLayer class defines a container used for the layers of the Grid control's visual elements. The Grid control creates and adds visual elements to its layers as needed, and is responsible for their layout.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.Grid", "spark.components.Grid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridLayout",
  "description": "The internal layout class used by the Grid class.   Responsible for laying out the target Grid's 1-4 GridViews: centerGridView, leftGridView, topGridView, topLeftGridView. The GridViews are created/removed as needed by the Grid.  The layout arranges the GridViews within the available space.  There are no gaps between the GridViews, and no space between the GridViews and the edges (no leftPadding, rightPadding, etc..).  This class is private to the DataGrid implementation.  It's only used by the DataGrid's Grid skin part (see Grid/configureGridViews()).",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.gridClasses.GridRowList",
  "description": "Open LinkedList implementation for representing row heights in a Grid where each GridRowNode represents a row in the Grid.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridRowNode",
  "description": "A GridRowNode represents the heights of each cell for the row at rowIndex, and keeps track of the maximum cell height.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridSelection",
  "description": "Use the GridSelection class to track a Grid control's <code>selectionMode</code> property and its set of selected rows, columns, or cells. The selected elements are defined by integer indices.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.Grid", "spark.components.Grid#columns", "spark.components.Grid#dataProvider", "spark.components.gridClasses.GridSelectionMode", "spark.components.Grid", "spark.components.Grid#columns", "spark.components.Grid#dataProvider", "spark.components.gridClasses.GridSelectionMode"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridSelectionMode",
  "description": "The GridSelectionMode class defines the valid constant values for the <code>selectionMode</code> property of the Spark DataGrid and Grid controls.  <p>Use the constants in ActionsScript, as the following example shows: </p> <pre>\\n myDG.selectionMode = GridSelectionMode.MULTIPLE_CELLS;\\n </pre>  <p>In MXML, use the String value of the constants, as the following example shows:</p> <pre>\\n &lt;s:DataGrid id=&quot;myGrid&quot; width=&quot;350&quot; height=&quot;150&quot;\\n selectionMode=&quot;multipleCells&quot;&gt;\\n ...\\n &lt;/s:DataGrid&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid#selectionMode", "spark.components.Grid#selectionMode", "spark.components.DataGrid#selectionMode", "spark.components.Grid#selectionMode"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridSortFieldComplex",
  "description": "A subclass of SortField used by DataGrid and GridColumn to keep track of complex dataFields when trying to reverse the sort.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.GridSortFieldSimple",
  "description": ""},
{ "name": "spark.components.gridClasses.GridView",
  "description": "This class is internal to the DataGrid implementation.  A Grid element (child) that displays a rectangular region within the Grid. The GridView's region is defined by four GridViewLayout properties: viewRowIndex and viewColumnIndex - the origin of the region, viewRowCount and viewColumnCount - the size of the region.  The GridView contains GridLayers which contain all of the Grid's visual elements, the renderers, indicators, separators, etc.  GridViews are created automatically by the Grid class, based on the values of the lockedRowCount and lockedColumnCount Grid properties."},
{ "name": "spark.components.gridClasses.GridViewLayout",
  "description": "A virtual two dimensional layout for the Grid class.   This is not a general purpose layout, it's only intended to be use with GridView.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.components.gridClasses.IDataGridElement",
  "description": "Visual elements of the Spark DataGrid control that must remain in sync with the grid's layout and scroll position must implement this interface. When the DataGrid control's <code>grid</code> skin part is added, it sets the <code>IDataGridElement.dataGrid</code> property. The IDataGridElements object can respond by adding event listeners for scroll position changes. When the DataGrid control is changed in a way that affects its row or column layout, all IDataGridElements object are invalidated.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.IGridItemEditor",
  "description": "The IGridItemEditor interface defines the interface that item editors for the Spark DataGrid and Spark Grid controls must implement. The DataGrid and Grid controls are referred to as the item renderer owner, or as the host component of the item editor.  <p>All of the item editor's properties are set by the owner during the start of the editor session. The <code>data</code> property is the last property set. When the <code>data</code> property is set, an item editor should set the value of the editor's controls. Next, the editor's <code>prepare()</code> method is called. IGridItemEditor implementations should override the <code>prepare()</code> method to make any final adjustments to its properties or any aspect of its visual elements. When the editor is closing, the <code>discard()</code> method is called.</p>  <p>When the editor is closed, the input value can be saved or canceled. If saving, the <code>save()</code> function is called by the editor to write new values to the data provider element corresponding to the row of the edited cell. </p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.Grid", "spark.components.DataGrid", "spark.components.Grid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.IGridItemRenderer",
  "description": "The IGridItemRenderer interface must be implemented by DataGrid item renderers.  The DataGrid uses this API to provide the item renderer with the information needed to render one grid or header <i>cell</i>.  <p>All of the renderer's properties are set during the execution of its parent's <code>updateDisplayList()</code> method.  After the properties have been set, the item renderer's <code>prepare()</code> method is called. An IGridItemRenderer implementation should override the <code>prepare()</code> method to make any final adjustments to its properties or any aspect of its visual elements. Typically, the <code>prepare()</code> is used to configure the renderer's visual elements based on the <code>data</code> property.</p>  <p>When an item renderer is no longer needed, either because it's going to be added to an internal reusable renderer &quot;free&quot; list, or because it's never going to be used again, the IGridItemRenderer <code>discard()</code> method is called.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.Grid", "spark.components.DataGrid", "spark.components.Grid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.gridClasses.IGridVisualElement",
  "description": "This interface provides a method that dynamically created visual elements can use to configure themselves before they're displayed. It's called as needed when a factory generated visual element is created or reused.  It is not intended to be called directly.  <p>This is an optional interface for all of the factory-generated visual elements except itemRenderers: <code>caretIndicator</code>, <code>hoverIndicator</code>, <code>editorIndicator</code>, <code>selectionIndicator</code>, <code>columnSeparator</code>, <code>rowSeparator</code>, <code>alternatingRowColorsBackground</code> (see DataGrid), <code>sortIndicator</code> (see GridColumnHeaderGroup).  It's typically used to configure generated visual elements with DataGrid's style values.  For example, to use the value of the DataGrid's &quot;symbolColor&quot; style for the caret's fill color, one would define the <code>prepareGridVisualElement()</code> method like this:</p>  <p> <pre>\\n public function prepareGridVisualElement(grid:Grid, rowIndex:int, columnIndex:int):void\\n {\\n caretStroke.color = grid.dataGrid.getStyle(&quot;caretColor&quot;);\\n }\\n </pre> </p>  <p>The <code>rowIndex</code> and <code>columnIndex</code> parameters specify the the cell the visual element will occupy.  If <code>columnIndex</code> = -1 then the visual element occupies a Grid row. If <code>rowIndex</code> = -1 then the visual element occupies a Grid column.</p>  <p>There are many more examples like this in DataGridSkin.mxml.  Note that custom DataGrid skin visual elements can choose not to implement this interface if the the added flexibility isn't needed.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.ButtonBarBase",
  "description": "The ButtonBarBase class defines the common behavior for the ButtonBar, TabBar and similar subclasses. This class does not add any new API however it refines selection, keyboard focus and keyboard navigation behavior for the control's ItemRenderer elements. This base class is not intended to be instantiated directly.  <p>Clicking on an ItemRenderer selects it by setting the <code>selectedIndex</code> and the <code>caretIndex</code> properties.  If <code>requireSelection</code> is <code>false</code>, then clicking again deselects it.  If the data provider is an <code>ISelectableList</code> object, then its <code>selectedIndex</code> is set as well.</p>  <p>Arrow key events are handled by adjusting the <code>caretIndex</code>. If <code>arrowKeysWrapFocus</code> is <code>true</code>, then the <code>caretIndex</code> wraps. Pressing the Space key selects the ItemRenderer at the <code>caretIndex</code>.</p>  <p>The <code>showsCaret</code> property of the ItemRenderer at <code>caretIndex</code> is set to <code>true</code> when the ButtonBarBase object has focus and the <code>caretIndex</code> was reached as a consequence of a keyboard gesture. If the <code>caretIndex</code> was set as a side effect of responding to a mouse click, then <code>showsCaret</code> is not set.</p>  <p>The <code>allowDeselection</code> property of <code>ButtonBarButton</code> ItemRenderers is set to <code>!requireSelection</code>.</p>   <p>The <code>&lt;s:ButtonBarBase&gt;</code> tag inherits all of the tag attributes of its superclass and adds no new tag attributes:</p>  <pre>\\n &lt;s:ButtonBarBase/&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.ButtonBase",
  "description": "The ButtonBase class is the base class for the all Spark button components. The Button and ToggleButtonBase classes are subclasses of ButtonBase. ToggleButton. The CheckBox and RadioButton classes are subclasses of ToggleButtonBase.   <p>The <code>&lt;s:ButtonBase&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:ButtonBase\\n <strong>Properties</strong>\\n autoRepeat=&quot;false&quot;\\n content=&quot;null&quot;\\n label=&quot;&quot;\\n stickyHighlighting=&quot;false&quot;\\n \\n <strong>Events</strong>\\n buttonDown=&quot;<i>No default</i>&quot;\\n \\n <strong>Styles</strong>\\n alignmentBaseline=&quot;USE_DOMINANT_BASELINE&quot;\\n cffHinting=&quot;HORIZONTAL_STEM&quot;\\n color=&quot;0&quot;\\n cornerRadius=&quot;4&quot;\\n digitCase=&quot;DEFAULT&quot;\\n digitWidth=&quot;DEFAULT&quot;\\n direction=&quot;LTR&quot;\\n dominantBaseline=&quot;AUTO&quot;\\n focusAlpha=&quot;0.5&quot;\\n focusColor=&quot;0x70B2EE&quot;\\n fontFamily=&quot;Arial&quot;\\n fontLookup=&quot;DEVICE&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;NORMAL&quot;\\n fontWeight=&quot;NORMAL&quot;\\n justificationRule=&quot;AUTO&quot;\\n justificationStyle=&quot;AUTO&quot;\\n kerning=&quot;AUTO&quot;\\n ligatureLevel=&quot;COMMON&quot;\\n lineHeight=&quot;120%&quot;\\n lineThrough=&quot;false&quot;\\n locale=&quot;en&quot;\\n renderingMode=&quot;CFF&quot;\\n repeatDelay=&quot;500&quot;\\n repeatInterval=&quot;35&quot;\\n textAlign=&quot;START&quot;\\n textAlignLast=&quot;START&quot;\\n textAlpha=&quot;1&quot;\\n textDecoration=&quot;NONE&quot;\\n textJustify=&quot;INTER_WORD&quot;\\n trackingLeft=&quot;0&quot;\\n trackingRight=&quot;0&quot;\\n typographicCase=&quot;DEFAULT&quot;\\n wordSpacing=&quot;100%&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.Button", "spark.components.supportClasses.ToggleButtonBase", "spark.components.ToggleButton", "spark.components.CheckBox", "spark.components.RadioButton", "spark.components.Button", "spark.components.supportClasses.ToggleButtonBase", "spark.components.ToggleButton", "spark.components.CheckBox", "spark.components.RadioButton"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.DropDownListBase",
  "description": "The DropDownListBase control contains a drop-down list from which the user can select a single value. Its functionality is very similar to that of the SELECT form element in HTML.  <p>The DropDownListBase control consists of the anchor button, and drop-down-list. Use the anchor button to open and close the drop-down-list. </p>  <p>When the drop-down list is open:</p> <ul> <li>Clicking the anchor button closes the drop-down list and commits the currently selected data item.</li> <li>Clicking outside of the drop-down list closes the drop-down list and commits the currently selected data item.</li> <li>Clicking on a data item selects that item and closes the drop-down list.</li> <li>If the <code>requireSelection</code> property is <code>false</code>, clicking on a data item while pressing the Control key deselects the item and closes the drop-down list.</li> </ul>  attributes of its superclass and adds the following attributes:</p>  <pre>\\n &lt;s:DropDownListBase\\n <strong>Styles</strong>\\n cornerRadius=&quot;4&quot;\\n dropShadowVisible=&quot;true&quot;\\n \\n <strong>Events</strong>\\n closed=&quot;<i>No default</i>&quot;\\n open=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/DropDownListExample.mxml", "examples/DropDownListExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.skins.spark.DropDownListSkin", "spark.components.supportClasses.DropDownController", "spark.skins.spark.DropDownListSkin", "spark.components.supportClasses.DropDownController"]},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:DropDownListBase&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:DropDownListBase&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.DropDownListButton",
  "description": ""},
{ "name": "spark.components.supportClasses.GroupBase",
  "description": "The GroupBase class defines the base class for components that display visual elements. A group component does not control the layout of the visual items that it contains. Instead, the layout is handled by a separate layout component.   <p>The <code>&lt;s:GroupBase&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:GroupBase\\n <strong>Properties</strong>\\n autoLayout=&quot;true&quot;\\n clipAndEnableScrolling=&quot;false&quot;\\n horizontalScrollPosition=&quot;null&quot;\\n luminosityClip=&quot;false&quot;\\n luminosityInvert=&quot;false&quot;\\n layout=&quot;BasicLayout&quot;\\n mask=&quot;&quot;\\n maskType=&quot;clip&quot;\\n mouseEnabledWhereTransparent=&quot;true&quot;\\n resizeMode=&quot;noScale&quot;\\n verticalScrollPosition=&quot;no default&quot;\\n \\n <strong>Styles</strong>\\n accentColor=&quot;0x0099FF&quot;\\n alignmentBaseline=&quot;useDominantBaseline&quot;\\n alternatingItemColors=&quot;undefined&quot;\\n baselineShift=&quot;0&quot;\\n blockProgression=&quot;tb&quot;\\n breakOpportunity=&quot;auto&quot;\\n cffHinting=&quot;horizontalStem&quot;\\n chromeColor=&quot;0xCCCCCC&quot;\\n color=&quot;0x000000&quot;\\n contentBackgroundAlpha=&quot;1.0&quot;\\n contentBackgroundColor=&quot;0xFFFFFF&quot;\\n clearFloats=&quot;none&quot;\\n digitCase=&quot;default&quot;\\n digitWidth=&quot;default&quot;\\n direction=&quot;ltr&quot;\\n disabledAlpha=&quot;0.5&quot;\\n dominantBaseline=&quot;auto&quot;\\n firstBaselineOffset=&quot;auto&quot;\\n focusColor=&quot;0x70B2EE&quot;\\n focusedTextSelectionColor=&quot;A8C6EE&quot;\\n fontFamily=&quot;Arial&quot;\\n fontLookup=&quot;device&quot;\\n fontSize=&quot;12&quot;\\n fontStyle=&quot;normal&quot;\\n fontWeight=&quot;normal&quot;\\n inactiveTextSelectionColor=&quot;E8E8E8&quot;\\n justificationRule=&quot;auto&quot;\\n justificationStyle=&quot;auto&quot;\\n kerning=&quot;auto&quot;\\n leadingModel=&quot;auto&quot;\\n ligatureLevel=&quot;common&quot;\\n lineHeight=&quot;120%&quot;\\n lineThrough=&quot;false&quot;\\n listAutoPadding=&quot;40&quot;\\n listStylePosition=&quot;outside&quot;\\n listStyleType=&quot;disc&quot;\\n locale=&quot;en&quot;\\n paragraphEndIndent=&quot;0&quot;\\n paragraphSpaceAfter=&quot;0&quot;\\n paragraphSpaceBefore=&quot;0&quot;\\n paragraphStartIndent=&quot;0&quot;\\n renderingMode=&quot;cff&quot;\\n rollOverColor=&quot;0xCEDBEF&quot;\\n symbolColor=&quot;0x000000&quot;\\n tabStops=&quot;null&quot;\\n textAlign=&quot;start&quot;\\n textAlignLast=&quot;start&quot;\\n textAlpha=&quot;1&quot;\\n textDecoration=&quot;none&quot;\\n textIndent=&quot;0&quot;\\n textJustify=&quot;interWord&quot;\\n textRotation=&quot;auto&quot;\\n trackingLeft=&quot;0&quot;\\n trackingRight=&quot;0&quot;\\n typographicCase=&quot;default&quot;\\n unfocusedTextSelectionColor=&quot;0xE8E8E8&quot;\\n whiteSpaceCollapse=&quot;collapse&quot;\\n wordSpacing=&quot;100%,50%,150%&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.layouts.supportClasses.LayoutBase", "spark.components.ResizeMode", "spark.layouts.supportClasses.LayoutBase", "spark.components.ResizeMode"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.IDataProviderEnhance",
  "description": "Adds functionality to list driven components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 11.1", "AIR 3.4", "Flash 11.1", "AIR 3.4"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.10", "Flex 4.10"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.ItemRenderer",
  "description": "The ItemRenderer class is the base class for Spark item renderers.  <p>Item renderers support optional view states. You typically use view states in MXML item renderers to control the appearance of a data item based on user interaction with the item. The ItemRenderer class supports all views states so that you can use those item renderers with list-based classes.</p>  <p>Flex defines the following view states that you can support in your item renderers: </p> <ul> <li>normal - The data item has no user interaction.</li> <li>hovered - The mouse is over the data item.</li> <li>selected - The data item is selected.</li> <li>dragging - The data item is being dragged.</li> <li>normalAndShowCaret - The data item is in the normal state, and it has focus in the item list. </li> <li>hoveredAndShowCaret - The data item is in the hovered state, and it has focus in the item list.</li> <li>selectedAndShowCaret - The data item is in the normal state, and it has focus in the item list.</li> </ul>  <p>When the user interacts with a control in a way that changes the view state of the item renderer, Flex first determines if the renderer defines that view state. If the item renderer supports the view state, Flex sets the item renderer to use that view state. If the item renderer does not supports the view state, Flex does nothing.</p>   <p>The <code>&lt;s:ItemRenderer&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:ItemRenderer\\n <strong>Properties</strong>\\n autoDrawBackground=&quot;true&quot;\\n selected=&quot;false&quot;\\n showsCaret=&quot;false&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.ListBase",
  "description": "The ListBase class is the base class for all components that support selection.  <p><b>Note: </b>The Spark list-based controls (the Spark ListBase class and its subclasses such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class as the value of the <code>layout</code> property. Do not use BasicLayout with the Spark list-based controls.</p>  attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:ListBase\\n \\n <strong>Properties</strong>\\n arrowKeysWrapFocus=&quot;false&quot;\\n labelField=&quot;label&quot;\\n labelFunction=&quot;null&quot;\\n requireSelection=&quot;false&quot;\\n selectedIndex=&quot;-1&quot;\\n selectedItem=&quot;undefined&quot;\\n useVirtualLayout=&quot;false&quot;\\n \\n <strong>Events</strong>\\n caretChange=&quot;<i>No default</i>&quot;\\n change=&quot;<i>No default</i>&quot;\\n changing=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "mxml",
       "values": ["<p>The <code>&lt;s:ListBase&gt;</code> tag inherits all of the tag", "<p>The <code>&lt;s:ListBase&gt;</code> tag inherits all of the tag"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.Range",
  "description": "The Range class holds a value and an allowed range for that value, defined by <code>minimum</code> and <code>maximum</code> properties. The <code>value</code> property is always constrained to be between the current <code>minimum</code> and <code>maximum</code>, and the <code>minimum</code>, and <code>maximum</code> are always constrained to be in the proper numerical order, such that <code>(minimum &lt;= value &lt;= maximum)</code> is <code>true</code>. If the value of the <code>snapInterval</code> property is not 0, then the <code>value</code> property is also constrained to be a multiple of <code>snapInterval</code>.  <p>Range is a base class for various controls that require range functionality, including TrackBase and Spinner.</p>   <p>The <code>&lt;s:Range&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:Range\\n <strong>Properties</strong>\\n maximum=&quot;100&quot;\\n minimum=&quot;0&quot;\\n snapInterval=&quot;1&quot;\\n stepSize=&quot;1&quot;\\n value=&quot;0&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.supportClasses.TrackBase", "spark.components.Spinner", "spark.components.supportClasses.TrackBase", "spark.components.Spinner"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.RegExPatterns",
  "description": "This provides a means to standardize certain common regex patterns and functionality.  <p>Use the constants in ActionsScript, as the following example shows: </p> <pre>\\n createRegExp(&quot;my search value&quot;, RegExPatterns.CONTAINS):RegExp\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 11.1", "AIR 3.4", "Flash 11.1", "AIR 3.4"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.10", "Flex 4.10"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.RichEditableTextContainerManager",
  "description": "A subclass of TextContainerManager that manages the text in a RichEditableText component.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.Skin",
  "description": "The Skin class defines the base class for all skins used by skinnable components. The SkinnableComponent class defines the base class for skinnable components.  <p>You typically write the skin classes in MXML, as the followiong example shows:</p>  <pre>  &lt;?xml version=&quot;1.0&quot;?&gt;\\n &lt;Skin xmlns=&quot;http://ns.adobe.com/mxml/2009&quot;&gt;\\n \\n &lt;Metadata&gt;\\n &lt;!-- Specify the component that uses this skin class. --&gt;\\n [HostComponent(&quot;my.component.MyComponent&quot;)]\\n &lt;/Metadata&gt;\\n \\n &lt;states&gt;\\n &lt;!-- Specify the states controlled by this skin. --&gt;\\n &lt;/states&gt;\\n \\n &lt;!-- Define skin. --&gt;\\n \\n &lt;/Skin&gt;</pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.core.SkinnableComponent", "mx.core.SkinnableComponent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.SkinnableComponent",
  "description": "The SkinnableComponent class defines the base class for skinnable components. The skins used by a SkinnableComponent class are typically child classes of the Skin class.  <p>Associate a skin class with a component class by setting the <code>skinClass</code> style property of the component class. You can set the <code>skinClass</code> property in CSS, as the following example shows:</p>  <pre>MyComponent\\n {\\n skinClass: ClassReference(&quot;my.skins.MyComponentSkin&quot;)\\n }</pre>  <p>The following example sets the <code>skinClass</code> property in MXML:</p>  <pre>\\n &lt;MyComponent skinClass=&quot;my.skins.MyComponentSkin&quot;/&gt;</pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.supportClasses.Skin", "spark.components.supportClasses.Skin"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.SkinnableContainerBase",
  "description": "Base class for skinnable container components.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.SkinnableTextBase",
  "description": "The base class for skinnable components, such as the Spark TextInput and TextArea, that include an instance of IEditableText in their skin to provide text display, scrolling, selection, and editing. By default, IEditableText is RichEditableText for the Spark theme and StyleableStageText for the Mobile theme. StyleableTextField is also available for the Mobile theme.   <p>The <code>&lt;s:SkinnableTextBase&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:SkinnableTextBase\\n autoCapitalize=&quot;none&quot;  <b>[Mobile theme only]</b>\\n autoCorrect=&quot;true&quot;  <b>[Mobile theme only]</b>\\n displayAsPassword=&quot;false&quot;\\n editable=&quot;true&quot;\\n imeMode=&quot;null&quot;  <b>[Spark theme only]</b>\\n maxChars=&quot;0&quot;\\n prompt=&quot;null&quot;\\n restrict=&quot;null&quot;\\n returnLabelKey=&quot;default&quot;  <b>[Mobile theme only]</b>\\n selectable=&quot;true&quot;\\n selectionHighlighting=&quot;whenFocused&quot;  <b>[Spark theme only]</b>\\n softKeyBoardType=&quot;default&quot;  <b>[Mobile theme only]</b>\\n text=&quot;&quot;\\n typicalText=&quot;null&quot;  <b>[Spark theme only]</b>\\n \\n <strong>Styles</strong>\\n borderAlpha=&quot;1.0&quot;\\n borderColor=&quot;0x696969&quot;\\n borderVisible=&quot;true&quot;\\n contentBackgroundAlpha=&quot;1.0&quot;\\n contentBackgroundColor=&quot;0xFFFFFF&quot;\\n focusAlpha=&quot;0.55&quot;\\n focusColor=&quot;0x70B2EE&quot;\\n showPromptWhenFocused=&quot;true&quot;\\n \\n <strong>Events</strong>\\n change=&quot;<i>No default</i>&quot;\\n changing=&quot;<i>No default</i>&quot;  <b>[Spark theme only]</b>\\n selectionChange=&quot;<i>No default</i>&quot;  <b>[Spark theme only]</b>\\n textInput=&quot;<i>No default</i>&quot;  <b>[Spark theme only]</b>\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.SparkTextButtonItemRenderer",
  "description": "The TextButtonItemRenderer is the default renderer for TabBar",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 9", "AIR 1.1", "Flash 9", "AIR 1.1"]},
    {  "tagName": "productversion",
       "values": ["Flex 3", "Flex 3"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.components.supportClasses.TextBase",
  "description": "The base class for Spark text controls such as Label and RichText which display text using CSS styles for the default format.  <p>In addition to adding a <code>text</code> property, this class also adds the <code>maxDisplayedLines</code> and <code>isTruncated</code> properties to support truncation.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.components.supportClasses.ToggleButtonBase",
  "description": "The ToggleButtonBase component is the base class for the Spark button components that support the <code>selected</code> property. ToggleButton, CheckBox and RadioButton are subclasses of ToggleButtonBase.   <p>The <code>&lt;s:ToggleButtonBase&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:ToggleButtonBase\\n <strong>Properties</strong>\\n selected=&quot;false&quot;\\n \\n <strong>events</strong>\\n change=&quot;<i>No default</i>&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.ToggleButton", "spark.components.CheckBox", "spark.components.RadioButton", "spark.components.ToggleButton", "spark.components.CheckBox", "spark.components.RadioButton"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.controls.advancedDataGridClasses.MXAdvancedDataGridItemRenderer",
  "description": "The MXAdvancedDataGridItemRenderer class defines the Spark item renderer class for use with the MX AdvancedDataGrid control. This class lets you use the Spark item renderer architecture with the MX AdvancedDataGrid control.   <p>The <code>&lt;s:MXAdvancedDataGridItemRenderer&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:MXAdvancedDataGridItemRenderer\\n <strong>Properties</strong>\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.controls.AdvancedDataGrid", "mx.controls.AdvancedDataGrid"]},
    {  "tagName": "mxml",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.core.CSSTextLayoutFormat",
  "description": "This class is used by components such as RichText and RichEditableText which use TLF to display their text. The default formatting for their text is determined by the component's CSS styles.  TLF recognizes the copy that is done in this constructor and does not do another one. If TLF adds formats to TextLayoutFormats this should continue to work as long as Flex doesn't want some alterate behavior.  The only extra functionality supported here, beyond what TLF has, is the ability for the fontLookup style to have the value &quot;auto&quot;; in this case, the client object's embeddedFontContext is used to determine whether the the fontLookup format in TLF should be &quot;embeddedCFF&quot; or &quot;device&quot;.",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.core.IDisplayText",
  "description": "The IDisplayText interface defines the properties and methods for simple text display.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.1", "AIR 2.0", "Flash 10.1", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.core.IEditableText",
  "description": "The IEditableText interface defines the properties and methods for editable text.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.1", "AIR 2.0", "Flash 10.1", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.core.IGapLayout",
  "description": "IGapLayout layouts have a fixed gap between layout items",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.core.IGraphicElement",
  "description": "The IGraphicElement is implemented by IVisualElements that take advantage of the parent <code>IGraphicElementContainer</code> DisplayObject management.  <p>One typical use case is DisplayObject sharing. the Group class, which implements <code>IGraphicElementContainer</code>, organizes its IGraphicElement children in sequences that share and draw to the same DisplayObject. The DisplayObject is created by the first element in the sequence.</p>  <p>Another use case is when an element does not derive from DisplayObject but instead maintains, creates and/or destroys its own DisplayObject. The <code>IGraphicElementContainer</code> will call the element to create the DisplayObject, add the DisplayObject as its child at the correct index, and handle its removal.</p>  <p>Typically, you extend the GraphicElement class instead of directly implementing the IGraphciElement interface. The GraphicElement class already provides most of the required functionality.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.core.IGraphicElementContainer", "spark.core.IGraphicElementContainer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.core.IGraphicElementContainer",
  "description": "The IGraphicElementContainer is the minimal contract for a container class to support <code>IGraphicElement</code> children.  <p>Typically instead of directly implementing this interface, a developer would sub-class Group which already implements the IGraphicElementContainer interface.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.core.IGraphicElement", "spark.core.IGraphicElement"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.core.IViewport",
  "description": "The IViewport interface is implemented by components that support a viewport. If a component's children are larger than the component, and you want to clip the children to the component boundaries, you can define a viewport and scroll bars. A viewport is a rectangular subset of the area of a component that you want to display, rather than displaying the entire component.  <p>A viewport on its own is not movable by the application user. However, you can combine a viewport with scroll bars so the user can scroll the viewport to see the entire content of the component. Use the Scroller component to add scrolbars to the component.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/IViewportExample.mxml", "examples/IViewportExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.components.Scroller", "spark.components.Scroller"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.core.NavigationUnit",
  "description": "The NavigationUnit class defines the possible values for the <code>getVerticalScrollPositionDelta()</code> and <code>getHorizontalScrollPositionDelta()</code> methods of the IViewport class.  <p>All of these constants have the same values as their flash.ui.Keyboard counterparts, except PAGE_LEFT and PAGE_RIGHT, for which no keyboard key equivalents exist.</p>",
"tags": [
{  "tagName": "see",
       "values": ["flash.ui.Keyboard", "IViewport#getVerticalScrollPositionDelta", "IViewport#getHorizontalScrollPositionDelta", "flash.ui.Keyboard", "IViewport#getVerticalScrollPositionDelta", "IViewport#getHorizontalScrollPositionDelta"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.events.DropDownEvent",
  "description": "The DropDownEvent class represents the event object passed to the event listener for the <code>open</code> and <code>close</code> events.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.events.GridCaretEvent",
  "description": "The GridCaretEvent class represents events that are dispatched when the caret changes in a Spark DataGrid control as the result of user interaction.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.Grid", "spark.components.gridClasses.GridSelectionMode", "spark.components.DataGrid", "spark.components.Grid", "spark.components.gridClasses.GridSelectionMode"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.events.GridEvent",
  "description": "The GridEvent class extends the MouseEvent class to includes additional grid specific information based on the event's location relative to a grid cell. This information includes the following:  <ul> <li>The row and column index of the cell.</li> <li>The GridColumn object of the cell.</li> <li>The data provider item that corresponds to the row of the cell.</li> <li>The item renderer.</li> </ul>  <p>Grid events have a one-to-one correspondence with mouse events. They are dispatched in response to mouse events that have &quot;bubbled&quot; from some Grid descendant to the Grid itself. One significant difference is that event listeners for grid events are guaranteed to see an entire down-drag-up mouse gesture, even if the drag and up parts of the gesture do not occur over the grid. The <code>gridMouseDrag</code> event corresponds to a mouse move event with the button held down.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.Grid", "spark.components.gridClasses.GridSelectionMode", "spark.components.DataGrid", "spark.components.Grid", "spark.components.gridClasses.GridSelectionMode"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.events.GridItemEditorEvent",
  "description": "The GridItemEditorEvent class represents events that are dispatched over the life cycle of an item editor.  <p>The life cycle starts with the dispatch of an <code> GRID_ITEM_EDITOR_SESSION_STARTING</code> event. You can cancel the event to stop the editing session by calling the <code>preventDefault()</code> method in the event listener.</p>  <p>After the item editor opens, the <code>GRID_ITEM_EDITOR_SESSION_START</code> is dispatched to notify listeners that the editor has been opened.</p>  <p>The editing session can be saved or canceled. If the session is saved, then the <code>GRID_ITEM_EDITOR_SESSION_SAVE</code> event is dispatched. If the editor is canceled, a <code>GRID_ITEM_EDITOR_SESSION_CANCEL</code> event is dispatched. </p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.gridClasses.IGridItemEditor", "spark.components.gridClasses.GridColumn", "spark.components.gridClasses.GridColumn#itemEditor", "spark.components.DataGrid", "spark.components.gridClasses.IGridItemEditor", "spark.components.gridClasses.GridColumn", "spark.components.gridClasses.GridColumn#itemEditor"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.events.GridSelectionEvent",
  "description": "The GridSelectionEvent class represents events that are dispatched when the selection changes in a Spark DataGrid control as the result of user interaction.",
"tags": [
{  "tagName": "see",
       "values": ["spark.events.GridSelectionEventKind", "spark.components.DataGrid", "spark.components.Grid", "spark.events.GridSelectionEventKind", "spark.components.DataGrid", "spark.components.Grid"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.events.GridSelectionEventKind",
  "description": "The GridSelectionEventKind class defines constants for the valid values of the spark.events.GridSelectionEvent class <code>kind</code> property. These constants indicate the kind of change that was made to the selection.",
"tags": [
{  "tagName": "see",
       "values": ["spark.events.GridSelectionEvent#kind", "spark.events.GridSelectionEvent", "spark.events.GridSelectionEvent#kind", "spark.events.GridSelectionEvent"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.events.GridSortEvent",
  "description": "The GridSortEvent class represents events that are dispatched when the data provider of a Spark DataGrid control is sorted as the result of the user clicking on the header of a column in the DataGrid.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.DataGrid", "spark.components.gridClasses.GridColumn", "spark.components.GridColumnHeaderGroup", "spark.components.DataGrid", "spark.components.gridClasses.GridColumn", "spark.components.GridColumnHeaderGroup"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.events.IndexChangeEvent",
  "description": "The IndexChangeEvent class represents events that are dispatched when an index changes in a Spark component.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.supportClasses.ListBase", "spark.components.List", "spark.components.ButtonBar", "spark.components.supportClasses.ListBase", "spark.components.List", "spark.components.ButtonBar"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.events.PopUpEvent",
  "description": "The PopUpEvent class represents an event dispatched by the SkinnablePopUpContainer.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.events.TextOperationEvent",
  "description": "The TextOperationEvent class represents events that are dispatched when text content changes due to user operations such as inserting characters, backspacing, pasting, or changing text attributes.  <p>This event is dispatched by subclasses of the SkinnableTextBase class. This includes RichEditableText and classes that use RichEditableText such as ComboBox and TextInput, as well as TextArea. Text controls that have no user interaction, such as RichText and Label, do not dispatch events of this type.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.RichEditableText", "spark.components.TextArea", "spark.components.ComboBox", "spark.components.TextInput", "spark.components.supportClasses.SkinnableTextBase", "spark.components.RichEditableText", "spark.components.TextArea", "spark.components.ComboBox", "spark.components.TextInput", "spark.components.supportClasses.SkinnableTextBase"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.BasicLayout",
  "description": "The BasicLayout class arranges the layout elements according to their individual settings, independent of each-other. BasicLayout, also called absolute layout, requires that you explicitly position each container child. You can use the <code>x</code> and <code>y</code> properties of the child, or constraints to position each child.  <p><b>Note: </b>The Spark list-based controls (the Spark List control and its subclasses such as ButtonBar, ComboBox, DropDownList, and TabBar) do not support the BasicLayout class. Do not use BasicLayout with the Spark list-based controls.</p>  <p>Per-element supported constraints are <code>left</code>, <code>right</code>, <code>top</code>, <code>bottom</code>, <code>horizontalCenter</code>, <code>verticalCenter</code>, <code>baseline</code>, <code>percentWidth</code>, and <code>percentHeight</code>. Element's minimum and maximum sizes will always be respected.</p>  <p>The measured size of the container is calculated from the elements, their constraints and their preferred sizes. The measured size of the container is big enough to fit in all of the elements at their preferred sizes with their constraints satisfied. </p>  <p>Here are some examples of how measured size is calculated: <ul> <li>If the container has a single element with <code>left</code> constraint specified, then the container's measured width will be equal to the element's preferred width plus the value of the <code>left</code> constraint.</li>  <li>If the container has a single element with <code>percentWidth</code> specified, then the container's measured width will be equal to the element's preferred width. Even though the element's <code>percentWidth</code> is not directly factored in the calculations, it will be respected during a call to the <code>updateDisplayList()</code> method.</li>  <li>If the container has a single element with <code>baseline</code> constraint specified, then the container's measured height will be equal to the element's preferred height plus the <code>baseline</code> and minus the value of the element's <code>baselinePosition</code> property.</li>  <li>If the container has a single element with <code>verticalCenter</code> constraint specified, then the container's measured height will be equal to the element's preferred height plus double the value of the <code>verticalCenter</code> constraint.</li> </ul> </p>  <p>During a call to the <code>updateDisplayList()</code> method, the element's size is determined according to the rules in the following order of precedence (the element's minimum and maximum sizes are always respected):</p> <ul> <li>If the element has <code>percentWidth</code> or <code>percentHeight</code> set, then its size is calculated as a percentage of the available size, where the available size is the container size minus any <code>left</code>, <code>right</code>, <code>top</code>, or <code>bottom</code> constraints.</li>  <li>If the element has both left and right constraints, it's width is set to be the container's width minus the <code>left</code> and <code>right</code> constraints.</li>  <li>If the element has both <code>top</code> and <code>bottom</code> constraints, it's height is set to be the container's height minus the <code>top</code> and <code>bottom</code> constraints.</li>  <li>The element is set to its preferred width and/or height.</li> </ul>  <p>The BasicLayout class calculates its minimum size as the maximum of the minimum child sizes:</p>  <ol> <li>For each child in the container, determine the minimum size to which the child could shrink: <ul> <li>If the child is constrained to its parent's width or height, then the child could shrink to its minimum width or height. Use the minimum size of the child.</li> <li>If the child is not constrained to the parent, then it remains at its preferred size. Use the preferred size of the child.  </li> </ul></li> <li>Find the maximum of the sizes from step 1. </li> </ol>  <p>Therefore, if a child is constrained to its parent, then the layout uses the child's minimum size. Otherwise, it uses its preferred size of the child to calculate the minimum size for the container.</p>  <p>The element's position is determined according to the rules in the following order of precedence:</p> <ul> <li>The <code>horizontalCenter</code> or <code>verticalCenter</code> constraints specify the distance between the container's center and the element's center. Set the <code>horizontalCenter</code> or <code>verticalCenter</code> constraints to zero to center the element within the container in the horizontal or vertical direction.</li>  <li>If element's baseline is specified, then the element is positioned in the vertical direction such that its <code>baselinePosition</code> (usually the base line of its first line of text) is aligned with <code>baseline</code> constraint.</li>  <li>If element's <code>top</code> or <code>left</code> constraints are specified, then the element is positioned such that the top-left corner of the element's layout bounds is offset from the top-left corner of the container by the specified values.</li>  <li>If element's <code>bottom</code> or <code>right</code> constraints are specified, then the element is positioned such that the bottom-right corner of the element's layout bounds is offset from the bottom-right corner of the container by the specified values.</li>  <li>When no constraints determine the position in the horizontal or vertical direction, the element is positioned according to its x and y coordinates.</li> </ul>  <p>The content size of the container is calculated as the maximum of the coordinates of the bottom-right corner of all the layout elements.</p>  <p>The <code>&lt;s:BasicLayout&gt;</code> tag inherits all of the tag attributes of its superclass and adds no additional tag attributes:</p>  <pre>\\n &lt;s:BasicLayout/&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": ["", ""]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.ColumnAlign",
  "description": "The ColumnAlign class defines the possible values for the <code>columnAlign</code> property of the TileLayout class.",
"tags": [
{  "tagName": "see",
       "values": ["TileLayout#columnAlign", "TileLayout#columnAlign"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.ConstraintLayout",
  "description": "The ConstraintLayout class arranges the layout elements based on their individual settings and a set of constraint regions defined by constraint columns and constraint rows. Although you can use all of the properties and constraints from BasicLayout to position and size elements, ConstraintLayout gives you the ability to create sibling-relative layouts by constraining elements to the specified columns and rows.  <p><b>Note: </b>The Spark list-based controls (the Spark List control and its subclasses such as ButtonBar, ComboBox, DropDownList, and TabBar) do not support the ConstraintLayout class. Do not use ConstraintLayout with the Spark list-based controls.</p>  <p>Per-element supported constraints are <code>left</code>, <code>right</code>, <code>top</code>, <code>bottom</code>, <code>baseline</code>, <code>percentWidth</code>, and <code>percentHeight</code>. Element's minimum and maximum sizes will always be respected.</p>  <p>Columns and rows may have an explicit size or content size (no explicit size). Explicit size regions will be fixed at their specified size, while content size regions will stretch to fit only the elements constrained to them. If multiple content size regions are spanned by an element, the space will be divided equally among the content size regions.</p>  <p>The measured size of the container is calculated from the elements, their constraints, their preferred sizes, and the sizes of the rows and columns. The size of each row and column is just big enough to hold all of the elements constrained to it at their preferred sizes with constraints satisfied. The measured size of the container is big enough to hold all of the columns and rows as well as any other elements left at their preferred sizes with constraints satisfied. </p>  <p>During a call to the <code>updateDisplayList()</code> method, the element's size is determined according to the rules in the following order of precedence (the element's minimum and maximum sizes are always respected):</p> <ul> <li>If the element has <code>percentWidth</code> or <code>percentHeight</code> set, then its size is calculated as a percentage of the available size, where the available size is the region or container size minus any <code>left</code>, <code>right</code>, <code>top</code>, or <code>bottom</code> constraints.</li>  <li>If the element has both left and right constraints, it's width is set to be the region's or container's width minus the <code>left</code> and <code>right</code> constraints.</li>  <li>If the element has both <code>top</code> and <code>bottom</code> constraints, it's height is set to be the container's height minus the <code>top</code> and <code>bottom</code> constraints.</li>  <li>The element is set to its preferred width and/or height.</li> </ul>  <p>The element's position is determined according to the rules in the following order of precedence:</p> <ul> <li>If element's baseline is specified, then the element is positioned in the vertical direction such that its <code>baselinePosition</code> (usually the base line of its first line of text) is aligned with <code>baseline</code> constraint.</li>  <li>If element's <code>top</code> or <code>left</code> constraints are specified, then the element is positioned such that the top-left corner of the element's layout bounds is offset from the top-left corner of the container by the specified values.</li>  <li>If element's <code>bottom</code> or <code>right</code> constraints are specified, then the element is positioned such that the bottom-right corner of the element's layout bounds is offset from the bottom-right corner of the container by the specified values.</li>  <li>When no constraints determine the position in the horizontal or vertical direction, the element is positioned according to its x and y coordinates.</li> </ul>  <p>The content size of the container is calculated as the maximum of the coordinates of the bottom-right corner of all the layout elements and constraint regions.</p>",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.FormItemLayout",
  "description": "The FormItemLayout is used by FormItems to provide a constraint based layout. Elements using FormItemLayout within a FormLayout are aligned along columns.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.FormLayout",
  "description": "The FormLayout class defines the default layout for Spark Form skins. FormLayout provides a vertical layout for the child FormItem containers in the Form.  If any of the child containers uses a FormItemLayout, FormLayout will align the ConstraintColumns of each child. The number of columns across children should be the same, and the columns should have the same type of width setting. For example, if the first child's second column has a percent width, then the second child's second column should also be a percent width.  <p><b>Note</b>: Only use the FormLayout class with the Spark Form container. Do not use it to lay out the contents of any other container.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.Form", "spark.components.FormHeading", "spark.components.FormItem", "spark.layouts.FormItemLayout", "spark.components.Form", "spark.components.FormHeading", "spark.components.FormItem", "spark.layouts.FormItemLayout"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.5", "Flash 10", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.HorizontalAlign",
  "description": "The HorizontalAlign class defines the possible values for the <code>horizontalAlign</code> property of the VerticalLayout class.",
"tags": [
{  "tagName": "see",
       "values": ["VerticalLayout#horizontalAlign", "VerticalLayout#horizontalAlign"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.HorizontalLayout",
  "description": "The HorizontalLayout class arranges the layout elements in a horizontal sequence, left to right, with optional gaps between the elements and optional padding around the elements.  <p>The horizontal position of the elements is determined by arranging them in a horizontal sequence, left to right, taking into account the padding before the first element and the gaps between the elements.</p>  <p>The vertical position of the elements is determined by the layout's <code>verticalAlign</code> property.</p>  <p>During the execution of the <code>measure()</code> method, the default size of the container is calculated by accumulating the preferred sizes of the elements, including gaps and padding. When the <code>requestedColumnCount</code> property is set to a value other than -1, only the space for that many elements is measured, starting from the first element.</p>  <p>During the execution of the <code>updateDisplayList()</code> method, the width of each element is calculated according to the following rules, listed in their respective order of precedence (element's minimum width and maximum width are always respected):</p> <ul> <li>If <code>variableColumnWidth</code> is <code>false</code>, then set the element's width to the value of the <code>columnWidth</code> property.</li>  <li>If the element's <code>percentWidth</code> is set, then calculate the element's width by distributing the available container width between all elements with <code>percentWidth</code> setting. The available container width is equal to the container width minus the gaps, the padding and the space occupied by the rest of the elements. The element's <code>precentWidth</code> property is ignored when the layout is virtualized.</li>  <li>Set the element's width to its preferred width.</li> </ul>  <p>The height of each element is calculated according to the following rules, listed in their respective order of precedence (element's minimum height and maximum height are always respected):</p> <ul> <li>If the <code>verticalAlign</code> property is <code>&quot;justify&quot;</code>, then set the element's height to the container height.</li>  <li>If the <code>verticalAlign</code> property is <code>&quot;contentJustify&quot;</code>, then set the element's height to the maximum between the container's height and all elements' preferred height.</li>  <li>If the element's <code>percentHeight</code> property is set, then calculate the element's height as a percentage of the container's height.</li>  <li>Set the element's height to its preferred height.</li> </ul>  <p>The <code>&lt;s:HorizontalLayout&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:HorizontalLayout\\n <strong>Properties</strong>\\n columnWidth=&quot;<i>calculated</i>&quot;\\n gap=&quot;6&quot;\\n padding=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n requestedColumnCount=&quot;-1&quot;\\n requestedMaxColumnCount=&quot;-1&quot;\\n requestedMinColumnCount=&quot;-1&quot;\\n variableColumnWidth=&quot;true&quot;\\n verticalAlign=&quot;top&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": ["", ""]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.RowAlign",
  "description": "The RowAlign class defines the possible values for the <code>rowAlign</code> property of the TileLayout class.",
"tags": [
{  "tagName": "see",
       "values": ["TileLayout#rowAlign", "TileLayout#rowAlign"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.TileLayout",
  "description": "The TileLayout class arranges layout elements in columns and rows of equally-sized cells. The TileLayout class uses a number of properties that control orientation, count, size, gap and justification of the columns and the rows as well as element alignment within the cells.  <p>Per-element supported constraints are <code>percentWidth</code> and <code>percentHeight</code>. Element's minimum and maximum sizes are always be respected and where possible, an element's size is limited to less then or equal of the cell size.</p>  <p>When not explicitly set, the <code>columnWidth</code> property is calculated as the maximum preferred bounds width of all elements and the <code>columnHeight</code> property is calculated as the maximum preferred bounds height of all elements.</p>  <p>When not explicitly set, the <code>columnCount</code> and <code>rowCount</code> properties are calculated from any explicit width and height settings for the layout target, and <code>columnWidth</code> and <code>columnHeight</code>. In case none is specified, the <code>columnCount</code> and <code>rowCount</code> values are picked so that the resulting pixel area is as square as possible.</p>  <p> The measured size is calculated from the <code>columnCount</code>, <code>rowCount</code>, <code>columnWidth</code>, <code>rowHeight</code> properties and the gap sizes.</p>  <p>The default measured size, when no properties were explicitly set, is as square as possible area and is large enough to fit all elements.</p>  <p>In other cases the measured size may not be big enough to fit all elements. For example, when both <code>columnCount</code> and <code>rowCount</code> are explicitly set to values such that <code>columnCount</code> &#42; <code>rowCount</code> &lt; element count.</p>  <p>The minimum measured size is calculated the same way as the measured size but it's guaranteed to encompass enough rows and columns along the minor axis to fit all elements.</p>  <p>The <code>&lt;s:TileLayout&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:TileLayout\\n <strong>Properties</strong>\\n columnAlign=&quot;left&quot;\\n columnWidth=&quot;NaN&quot;\\n horizontalAlign=&quot;justify&quot;\\n horizontalGap=&quot;6&quot;\\n orientation=&quot;rows&quot;\\n requestedColumnCount=&quot;-1&quot;\\n requestedRowCount=&quot;-1&quot;\\n rowAlign=&quot;top&quot;\\n rowCount=&quot;-1&quot;\\n rowHeight=&quot;NaN&quot;\\n verticalAlign=&quot;justify&quot;\\n verticalGap=&quot;6&quot;\\n padding=&quot;0&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": ["", ""]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.TileOrientation",
  "description": "The TileOrientation class defines the possible values for the <code>orientation</code> property of the TileLayout class.",
"tags": [
{  "tagName": "see",
       "values": ["TileLayout#orientation", "TileLayout#orientation"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.VerticalAlign",
  "description": "The VerticalAlign class defines the possible values for the <code>verticalAlign</code> property of the HorizontalLayout class.",
"tags": [
{  "tagName": "see",
       "values": ["HorizontalLayout#verticalAlign", "HorizontalLayout#verticalAlign"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.VerticalLayout",
  "description": "The VerticalLayout class arranges the layout elements in a vertical sequence, top to bottom, with optional gaps between the elements and optional padding around the sequence of elements.  <p>The vertical position of the elements is determined by arranging them in a vertical sequence, top to bottom, taking into account the padding before the first element and the gaps between the elements.</p>  <p>The horizontal position of the elements is determined by the layout's <code>horizontalAlign</code> property.</p>  <p>During the execution of the <code>measure()</code> method, the default size of the container is calculated by accumulating the preferred sizes of the elements, including gaps and padding. When <code>requestedRowCount</code> is set, only the space for that many elements is measured, starting from the first element.</p>  <p>During the execution of the <code>updateDisplayList()</code> method, the height of each element is calculated according to the following rules, listed in their respective order of precedence (element's minimum height and maximum height are always respected):</p> <ul> <li>If <code>variableRowHeight</code> is <code>false</code>, then set the element's height to the value of the <code>rowHeight</code> property.</li>  <li>If the element's <code>percentHeight</code> is set, then calculate the element's height by distributing the available container height between all elements with a <code>percentHeight</code> setting. The available container height is equal to the container height minus the gaps, the padding and the space occupied by the rest of the elements. The element's <code>precentHeight</code> property is ignored when the layout is virtualized.</li>  <li>Set the element's height to its preferred height.</li> </ul>  <p>The width of each element is calculated according to the following rules, listed in their respective order of precedence (element's minimum width and maximum width are always respected):</p> <ul> <li>If <code>horizontalAlign</code> is <code>&quot;justify&quot;</code>, then set the element's width to the container width.</li>  <li>If <code>horizontalAlign</code> is <code>&quot;contentJustify&quot;</code>, then set the element's width to the maximum between the container's width and all elements' preferred width.</li>  <li>If the element's <code>percentWidth</code> is set, then calculate the element's width as a percentage of the container's width.</li>  <li>Set the element's width to its preferred width.</li> </ul>  <p>The <code>&lt;s:VerticalLayout&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:VerticalLayout\\n <strong>Properties</strong>\\n gap=&quot;6&quot;\\n horizontalAlign=&quot;left&quot;\\n padding=&quot;0&quot;\\n paddingBottom=&quot;0&quot;\\n paddingLeft=&quot;0&quot;\\n paddingRight=&quot;0&quot;\\n paddingTop=&quot;0&quot;\\n requestedMaxRowCount=&quot;-1&quot;\\n requestedMinRowCount=&quot;-1&quot;\\n requestedRowCount=&quot;-1&quot;\\n rowHeight=&quot;<i>calculated</i>&quot;\\n variableRowHeight=&quot;true&quot;\\n verticalAlign=&quot;top&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": ["", ""]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.supportClasses.Block",
  "description": "A LinearLayoutVector block of layout element heights or widths.  Total &quot;distance&quot; for a Block is: sizesSum + (defaultCount * distanceVector.default).  This class is essentially a C-struct.   If it was possible to make it a private static inner class of LinearyLayoutVector (as in Java), then it would be.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.supportClasses.DropLocation",
  "description": "The DropLocation class contains information describing the drop location for the dragged data in a drag-and-drop operation.  <p>The <code>DropLocation</code> is created by the <code>LayoutBase</code> class when the <code>List</code> calls the layout's <code>calculateDropLocation()</code> method in response to a <code>dragOver</code>.</p>  <p>The DropLocation class is used by the layout for operations such as calculating the drop indicator bounds and drag-scroll deltas.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.layouts.supportClasses.LayoutBase#calculateDropLocation()", "spark.layouts.supportClasses.LayoutBase#calculateDropIndicatorBounds()", "spark.layouts.supportClasses.LayoutBase#calculateDropLocation()", "spark.layouts.supportClasses.LayoutBase#calculateDropIndicatorBounds()"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "spark.layouts.supportClasses.LayoutBase",
  "description": "The LayoutBase class defines the base class for all Spark layouts. To create a custom layout that works with the Spark containers, you must extend <code>LayoutBase</code> or one of its subclasses.  <p>At minimum, subclasses must implement the <code>updateDisplayList()</code> method, which positions and sizes the <code>target</code> GroupBase's elements, and the <code>measure()</code> method, which calculates the default size of the <code>target</code>.</p>  <p>Subclasses may override methods like <code>getElementBoundsAboveScrollRect()</code> and <code>getElementBoundsBelowScrollRect()</code> to customize the way the target behaves when it's connected to scrollbars.</p>  <p>Subclasses that support virtualization must respect the <code>useVirtualLayout</code> property and should only retrieve layout elements within the scrollRect (the value of <code>getScrollRect()</code>) using <code>getVirtualElementAt()</code> from within <code>updateDisplayList()</code>.</p>  <p>The <code>&lt;s:LayoutBase&gt;</code> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:</p>  <pre>\\n &lt;s:LayoutBase\\n <strong>Properties</strong>\\n clipAndEnableScrolling=&quot;false&quot;\\n dropIndicator=&quot;<i>defined by the skin class</i>&quot;\\n horizontalScrollPosition=&quot;0&quot;\\n target=&quot;null&quot;\\n typicalLayoutElement=&quot;null&quot;\\n useVirtualLayout=&quot;false&quot;\\n verticalScrollPosition=&quot;0&quot;\\n /&gt;\\n </pre>",
"tags": [
{  "tagName": "mxml",
       "values": ["", ""]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.supportClasses.LayoutElementHelper",
  "description": "The LayoutElementHelper class is for internal use only. TODO (egeorgie): move to a more general place, this is not specific to the LayoutElementHelper",
"tags": [
{  "tagName": "private",
       "values": []}  ]},
{ "name": "spark.layouts.supportClasses.LinearLayoutVector",
  "description": "A sparse array of &quot;major dimension&quot; sizes that represent VerticalLayout item heights or HorizontalLayout item widths, and the current &quot;minor dimension&quot; maximum size.  Provides efficient support for finding the cumulative distance to the start/end of an item along the major axis, and similarly for finding the index of the item at a particular distance.  Default major/minor sizes is used for items whose size hasn't been specified.",
"tags": [
{  "tagName": "private",
       "values": []},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.layouts.supportClasses.SparkLayoutBead",
  "description": "The SparkLayoutBead class is a layout bead that pumps the Spark LayoutBase subclasses.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.modules.Module",
  "description": "The base class for MXML-based dynamically-loadable modules. You extend this class in MXML by using the <code>&lt;s:Module&gt;</code> tag in an MXML file, as the following example shows:  <pre>\\n &lt;?xml version=&quot;1.0&quot;?&gt;\\n &lt;!-- This module loads an image. --&gt;\\n &lt;s:Module  width=&quot;100%&quot; height=&quot;100%&quot; xmlns:s=&quot;library://ns.adobe.com/flex/spark&quot;&gt;\\n \\n &lt;s:Image source=&quot;trinity.gif&quot;/&gt;\\n \\n &lt;/s:Module&gt;\\n </pre>",
"tags": [
{  "tagName": "see",
       "values": ["mx.modules.ModuleManager", "spark.modules.ModuleLoader", "mx.modules.ModuleManager", "spark.modules.ModuleLoader"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.5", "Flash 10.2", "AIR 2.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4.5", "Flex 4.5"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.primitives.BitmapImage",
  "description": "A BitmapImage element defines a rectangular region in its parent element's coordinate space, filled with bitmap data drawn from a source file or source URL.",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/BitmapImageExample.mxml", "examples/BitmapImageExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 2.0", "Flash 10", "AIR 2.0"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.primitives.Line",
  "description": "The Line class is a graphic element that draws a line between two points.  <p>The default stroke for a line is undefined; therefore, if you do not specify the stroke, the line is invisible.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/LineExample.mxml", "examples/LineExample.mxml"]},
    {  "tagName": "see",
       "values": ["mx.graphics.Stroke", "mx.graphics.Stroke"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.primitives.Path",
  "description": "The Path class is a filled graphic element that draws a series of path segments. In vector graphics, a path is a series of points connected by straight or curved line segments. Together the lines form an image. In Flex, you use the Path class to define a complex vector shape constructed from a set of line segments.  <p>Typically, the first element of a path definition is a Move segment to specify the starting pen position of the graphic. You then use the Line, CubicBezier and QuadraticBezier segments to draw the lines of the graphic. When using these classes, you only specify the x and y coordinates of the end point of the line; the x and y coordinate of the starting point is defined by the current pen position.</p>  <p>After drawing a line segment, the current pen position becomes the x and y coordinates of the end point of the line. You can use multiple Move segments in the path definition to reposition the pen.</p>  <p>The syntax used by the Path class to define the shape is the same as the SVG path syntax, which makes it easy to convert SVG paths to Flex paths.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/ArrowExample.mxml", "examples/ArrowExample.mxml"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.primitives.Rect",
  "description": "The Rect class is a filled graphic element that draws a rectangle. The corners of the rectangle can be rounded. The <code>drawElement()</code> method calls the <code>Graphics.drawRect()</code> and <code>Graphics.drawRoundRect()</code> methods.  <p><b>Note: </b>By default, the stroke of the border is rounded. If you do not want rounded corners, set the <code>joints</code> property of the stroke to <code>JointStyle.MITER</code>. </p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RectExample.mxml", "examples/RectExample.mxml"]},
    {  "tagName": "see",
       "values": ["flash.display.Graphics", "flash.display.Graphics"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.primitives.RectangularDropShadow",
  "description": "<p>This class optimizes drop shadows for the common case. If you are applying a drop shadow to a rectangularly-shaped object whose edges fall on pixel boundaries, then this class should be used instead of using a DropShadowFilter directly.</p>  <p>This class accepts the first four parameters that are passed to DropShadowFilter: <code>alpha</code>, <code>angle</code>, <code>color</code>, and <code>distance</code>. In addition, this class accepts the corner radii for each of the four corners of the rectangularly-shaped object that is casting a shadow.</p>  <p>Once those 8 values have been set, this class pre-computes the drop shadow in an offscreen Bitmap. When the <code>drawShadow()</code> method is called, pieces of the precomputed drop shadow are copied onto the passed-in Graphics object.</p>",
"tags": [
{  "tagName": "includeExample",
       "values": ["examples/RectangularDropShadowExample.mxml", "examples/RectangularDropShadowExample.mxml"]},
    {  "tagName": "see",
       "values": ["spark.filters.DropShadowFilter", "flash.display.DisplayObject", "spark.filters.DropShadowFilter", "flash.display.DisplayObject"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.skins.SparkSkin",
  "description": "Base class for Spark skins.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.skins.spark.BorderContainerSkin",
  "description": "The default skin class for a Spark BorderContainer component.",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.BorderContainer", "spark.components.BorderContainer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "spark.skins.spark.DefaultItemRenderer",
  "description": "The DefaultItemRenderer class defines the default item renderer for a List control. The default item renderer just draws the text associated with each item in the list.  <p>You can override the default item renderer by creating a custom item renderer.</p>",
"tags": [
{  "tagName": "see",
       "values": ["spark.components.List", "mx.core.IDataRenderer", "spark.components.IItemRenderer", "spark.components.supportClasses.ItemRenderer", "spark.components.List", "mx.core.IDataRenderer", "spark.components.IItemRenderer", "spark.components.supportClasses.ItemRenderer"]},
    {  "tagName": "playerversion",
       "values": ["Flash 10", "AIR 1.5", "Flash 10", "AIR 1.5"]},
    {  "tagName": "productversion",
       "values": ["Flex 4", "Flex 4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]}]}