{  "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": "Namespace",
  "description": ""},
{ "name": "Promise",
  "description": ""},
{ "name": "QName",
  "description": ""},
{ "name": "google.maps.Animation",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.ControlPosition",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.DirectionsStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.DistanceMatrixElementStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.DistanceMatrixStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.ElevationStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.Geocoder",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.GeocoderLocationType",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.GeocoderStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.KmlLayerStatus",
  "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.LatLngBounds",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.MVCArray",
  "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.Map",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.MapTypeControlStyle",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.MapTypeId",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.MapTypeRegistry",
  "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": "google.maps.MaxZoomStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.Polygon",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.ScaleControlStyle",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.StreetViewPanorama",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.StreetViewPov",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.StreetViewStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.StrokePosition",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.SymbolPath",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.TravelMode",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.UnitSystem",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.ZoomControlStyle",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.adsense",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.adsense.AdFormat",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.drawing",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.drawing.OverlayType",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.event",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.geometry",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.geometry.encoding",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.geometry.poly",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.geometry.spherical",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.panoramio",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.places",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.places.PlacesService",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.places.PlacesServiceStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.places.RankBy",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.visualization",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.visualization.MapsEngineStatus",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.weather",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.weather.LabelColor",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.weather.TemperatureUnit",
  "description": "",
"tags": [
{  "tagName": "see",
       "values": ["[google_maps_api_v3_11]", "[google_maps_api_v3_11]"]}  ]},
{ "name": "google.maps.weather.WindSpeedUnit",
  "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": ""},
{ "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.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.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": "The ScrollingViewport extends the Viewport class by adding horizontal and vertical scroll bars, if needed, to the content area of a Container. In addition, the content of the Container is clipped so that items extending outside the Container are hidden and reachable only by scrolling.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.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.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": "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.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": "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.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": "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.IOErrorEvent",
  "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.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": "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.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": "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.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": ""},
{ "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": ""},
{ "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": ""},
{ "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.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.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.ace.ACEEditor",
  "description": ""},
{ "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": "The Camera class implements the Cordova Camera",
"tags": [
{  "tagName": "royalecordovaplugin",
       "values": ["cordova-plugin-camera", "cordova-plugin-camera"]},
    {  "tagName": "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.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": ""},
{ "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.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.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.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.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.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.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.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.UIElement",
  "description": "The UIElement class is an HTML-only class which creates a UIBase wrapper around an HTML element. The constructor accepts an HTMLElement and swallows the standard createElement call.",
"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.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.WrappedHTMLElement",
  "description": "A compile-time class to resolve the royale_wrapper reference added to HTMLElements.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 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.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": ""},
{ "name": "org.apache.royale.createjs.CheckBox",
  "description": ""},
{ "name": "org.apache.royale.createjs.Container",
  "description": "CreateJS Container"},
{ "name": "org.apache.royale.createjs.Label",
  "description": ""},
{ "name": "org.apache.royale.createjs.TextButton",
  "description": ""},
{ "name": "org.apache.royale.createjs.core.CreateJSBase",
  "description": ""},
{ "name": "org.apache.royale.createjs.core.UIBase",
  "description": ""},
{ "name": "org.apache.royale.createjs.core.View",
  "description": ""},
{ "name": "org.apache.royale.createjs.graphics.Circle",
  "description": ""},
{ "name": "org.apache.royale.createjs.graphics.GraphicShape",
  "description": ""},
{ "name": "org.apache.royale.createjs.graphics.Rect",
  "description": ""},
{ "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.BitmapData",
  "description": ""},
{ "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.display.js.JSRuntimeGraphicsStore",
  "description": "Intended for internal emulation use only. non-reflectable  This is an internal class for storing graphics content that is referenced elsewhere. It is not intended for direct display, but must be part of the DOM. Contents can be referenced elsewhere for actual display (such as svg 'use', for example).",
"tags": [
{  "tagName": "royalesuppressexport",
       "values": []}  ]},
{ "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.BrowserEvent",
  "description": "<pre>\\n The patched event object contains the following members:\\n - type           {string}    Event type, e.g. 'click'\\n - timestamp      {Date}      A date object for when the event was fired\\n - target         {Object}    The element that actually triggered the event\\n - currentTarget  {Object}    The element the listener is attached to\\n - relatedTarget  {Object}    For mouseover and mouseout, the previous object\\n - offsetX        {number}    X-coordinate relative to target\\n - offsetY        {number}    Y-coordinate relative to target\\n - clientX        {number}    X-coordinate relative to viewport\\n - clientY        {number}    Y-coordinate relative to viewport\\n - screenX        {number}    X-coordinate relative to the edge of the screen\\n - screenY        {number}    Y-coordinate relative to the edge of the screen\\n - button         {number}    Mouse button. Use isButton() to test.\\n - keyCode        {number}    Key-code\\n - ctrlKey        {boolean}   Was ctrl key depressed\\n - altKey         {boolean}   Was alt key depressed\\n - shiftKey       {boolean}   Was shift key depressed\\n - metaKey        {boolean}   Was meta key depressed\\n - defaultPrevented {boolean} Whether the default action has been prevented\\n - state          {Object}    History state object\\n \\n NOTE: The keyCode member contains the raw browser keyCode. For normalized\\n </pre>",
"tags": [
{  "tagName": "link",
       "values": ["goog.events.KeyHandler}.", "goog.events.KeyHandler}."]},
    {  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "fileoverview",
       "values": ["A patched, standardized event object for browser events.", "A patched, standardized event object for browser events."]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "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"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "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"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.EventDispatcher",
  "description": ""},
{ "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",
"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"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "name": "org.apache.royale.events.IBrowserEvent",
  "description": ""},
{ "name": "org.apache.royale.events.IEventDispatcher",
  "description": ""},
{ "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"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "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.EventUtils",
  "description": "Provides static methods for creating custom events 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.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": ""},
{ "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"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "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"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "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.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": ""},
{ "name": "org.apache.royale.html.CSSCheckBox",
  "description": ""},
{ "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": ""},
{ "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": ""},
{ "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": ""},
{ "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.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.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.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": "Whenever children are added, listeners are added to detect changes in their size.",
"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.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.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": "DragDropListView is the view to use for Lists when you want to use drag and drop beads. This view provides a drawing layer in which the the drop indicator can be displayed when the list is the target for drag and drop operations.",
"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.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.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.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.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.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.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": "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.9", "Royale 0.9"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "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": "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.9.7", "Royale 0.9.7"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "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.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.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.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.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.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.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.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.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.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": ""},
{ "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.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.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.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.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.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.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.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.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.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.HScrollViewport",
  "description": "The HScrollViewport extends the ScrollingViewport class and limts scrolling to only vertical scroll bars.",
"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.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.ScrollingViewport",
  "description": "The ScrollingViewport extends the Viewport class by adding horizontal and vertical scroll bars, if needed, to the content area of a Container. In addition, the content of the Container is clipped so that items extending outside the Container are hidden and reachable only by scrolling.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "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.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.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.VScrollViewport",
  "description": "The VScrollViewport extends the ScrollingViewport class and limts scrolling to only vertical scroll bars.",
"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.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.html.util.DialogPolyfill",
  "description": ""},
{ "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": "The HTML5:DateField displays a date input selector when run on an HTML5-compatible browser. On non-compatible browsers, a single input field is displayed. On the SWF platform, the basic:DateField is used.  As of Oct 30, 2017, Safari and Internet Explorer do not support the HTML5 input '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.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.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.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": "The ListView class creates the visual elements of the org.apache.royale.jewel.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.9.4", "Royale 0.9.4"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "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.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.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.ScrollingViewport",
  "description": "The ScrollingViewport extends the Viewport class by adding horizontal and vertical scroll bars, if needed, to the content area of a Container. In addition, the content of the Container is clipped so that items extending outside the Container are hidden and reachable only by scrolling.",
"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": "",
"tags": [
{  "tagName": "royaleignorecoercion",
       "values": ["HTMLInputElement", "HTMLInputElement"]}  ]},
{ "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 MapView bead class displays a Google Map using HTMLLoader.",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.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.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.mdl.Application",
  "description": "MDL Application holds specific MDL need in a Royale Application.  This class extends the standard Application and sets up the SimpleCSSValuesImpl (implementation) for convenience.",
"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.mdl.Button",
  "description": "The Button class provides a Material Design Library UI-like appearance for a Button.",
"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.mdl.ButtonChip",
  "description": "ButtonChip class represents a MDL button chip variant Chips are complex entities in small blocks.  The Material Design Lite (MDL) chip component is a small, interactive element. Chips are commonly used for contacts, text, rules, icons, and photos.",
"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.mdl.Card",
  "description": "The Card class is a self-contained pieces of paper with data. The Material Design Lite (MDL) card component is a user interface element representing a virtual piece of paper that contains related data — such as a photo, some text, and a link — that are all about a single subject.",
"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.mdl.CardActions",
  "description": "The CardActions class is a inner card container component. Its mission is to hold buttons or other ways to present actions for the user.",
"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.mdl.CardMedia",
  "description": "The CardMedia class is a inner card container component. Its mission is to hold media like photos, images or video content.",
"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.mdl.CardMenu",
  "description": "The CardMenu class is a inner card container component. Its mission is to hold menu options for the user to interact.",
"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.mdl.CardSupportingText",
  "description": "The CardSupportingText class is a inner card container component. Its mission is to hold text info for the user.",
"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.mdl.CardTitle",
  "description": "The CardTitle class is a inner card container component. Its mission is to hold the title of the card",
"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.mdl.CardTitleText",
  "description": "The CardTitleText class is an extended H2 heading used in MDL CardTitle.  (This is implemented as a class H4 and not as a bead that decorates other html text classes since MDL generate the same visuals for all of them)",
"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.mdl.CheckBox",
  "description": "The CheckBox class provides a MDL UI-like appearance for a CheckBox.  The Material Design Lite (MDL) checkbox component is an enhanced version of the standard HTML <input type=&quot;checkbox&quot;> element. A checkbox consists of a small square and, typically, text that clearly communicates a binary condition that will be set or unset when the user clicks or touches it. Checkboxes typically, but not necessarily, appear in groups, and can be selected and deselected individually. The MDL checkbox component allows you to add display and click effects.",
"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.mdl.Chip",
  "description": "Chip class represents a MDL basic Chip Chips are complex entities in small blocks.  The Material Design Lite (MDL) chip component is a small, interactive element. Chips are commonly used for contacts, text, rules, icons, and photos.",
"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.mdl.Dialog",
  "description": "The MDL Dialog class creates modal windows for dedicated user input. The Material Design Lite (MDL) dialog component allows for verification of user actions, simple data input, and alerts to provide extra information to users.  Note: Dialogs 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. There is no polyfill included with MDL.  Use DialogContent to insert content and DialogActions for the buttons to allow user interaction",
"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.mdl.DialogActions",
  "description": "The DialogActions class is a container to use inside Dialog class that holds buttons or other components to perform user actions",
"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.mdl.DialogContent",
  "description": "The DialogContent class is a container to use inside Dialog class that holds content and information so the user gets notified and could take some action.",
"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.mdl.DialogTitle",
  "description": "The DialogTitle class is an extended H4 heading used in Dialog. (This is implemented as a class H4 and not as a bead that decorates other html text classes since MDL generate the same visuals for all of them)",
"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.mdl.Drawer",
  "description": "The Drawer class is a container component used for navigation in smaller screens. Can appear automatically in smaller screens and may be opened with the menu icon on any screen size. If fixed could serve as sidebar navigation on larger screens.",
"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.mdl.DropDownList",
  "description": "The DropDownList class is a component that displays label field and Select with Options. Selecting an item from the pop-up list places that item into the label field of the DropDownList.",
"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.mdl.Footer",
  "description": "The Footer class is a Container component capable of parenting other components",
"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.mdl.FooterBottomSection",
  "description": "The FooterBottomSection class is a footer bottom container section capable of parenting other components",
"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.mdl.FooterDropDownSection",
  "description": "The FooterDropDownSection class is a footer drop-down container (vertical) content 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.mdl.FooterHeading",
  "description": "The FooterHeading class is an extended H1 heading used in MDL footer drop down section.  (This is implemented as a class H4 and not as a bead that decorates other html text classes since MDL generate the same visuals for all of them)",
"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.mdl.FooterLeftSection",
  "description": "The FooterLeftSection class is a footer left container section capable of parenting other components",
"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.mdl.FooterLinkList",
  "description": "FooterLinkList class defines an footer unordered list as a drop-down (vertical) list and relies on an itemRenderer factory to produce its children components and on a layout to arrange them. This is the only UI element aside from the itemRenderers.",
"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.mdl.FooterLogo",
  "description": "The FooterLogo class defines a container as a styled section heading This is used in footer bottom or left sections",
"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.mdl.FooterMiddleSection",
  "description": "The FooterMiddleSection class is a footer middle container section capable of parenting other components",
"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.mdl.FooterRightSection",
  "description": "The FooterRightSection class is a footer right container section capable of parenting other components",
"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.mdl.FooterSocialButton",
  "description": "The FooterSocialButton class defines a footer decorative square within a footer",
"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.mdl.FooterTopSection",
  "description": "The FooterTopSection class is a footer top container section capable of parenting other components",
"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.mdl.Grid",
  "description": "The Material Design Lite (MDL) grid component is a simplified method for laying out content for multiple screen sizes. It reduces the usual coding burden required to correctly display blocks of content in a variety of display conditions.  The MDL grid is defined and enclosed by a container element. A grid has 12 columns in the desktop screen size, 8 in the tablet size, and 4 in the phone size, each size having predefined margins and gutters. Cells are laid out sequentially in a row, in the order they are defined, with some exceptions:  If a cell doesn't fit in the row in one of the screen sizes, it flows into the following line. If a cell has a specified column size equal to or larger than the number of columns for the current screen size, it takes up the entirety of its row.  You can set a maximum grid width, after which the grid stays centered with padding on either side, by setting its max-width CSS property.",
"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.mdl.GridCell",
  "description": "The GridCell class represents a cell in MDL component. This cell is a container component capable of parenting other components. It has several properties to allow multiple layouts configurations",
"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.mdl.Header",
  "description": "The Header class is a Container component mainly used in NavigationLayout and Tabs components. It used to hold a HeaderRow and/or a TabBar components to layout a Title, a navigation link or a tab bar navigation.",
"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.mdl.HeaderRow",
  "description": "The HeaderRow class is a Container component used normaly inside a Header to layout things like a title, a navigation 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.mdl.IconToggle",
  "description": "The Material Design Lite (MDL) icon-toggle component is an enhanced version of the standard HTML <input type=&quot;checkbox&quot;> element. An icon-toggle consists of a user defined icon that indicates, by visual highlighting, a binary condition that will be set or unset when the user clicks or touches it. Like checkboxes, icon-toggles may appear individually or in groups, and can be selected and deselected individually.  Icon toggles, particularly as a replacement for certain checkboxes, can be a valuable feature in user interfaces, regardless of a site's content or function.  The icon-toggle component can have a more customized visual look than a standard checkbox, and may be initially or programmatically disabled.",
"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.mdl.LayoutTitle",
  "description": "The LayoutTitle class is an extended Span used in MDL Layout Header inside a HeaderRow in a Drawer to style the title.  (This is implemented as a class H4 and not as a bead that decorates other html text classes since MDL generate the same visuals for all of them)",
"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.mdl.List",
  "description": "List in MDL are customizable scrollable lists. Lists present multiple line items vertically as a single continuous element.  In Royale MDL relies on an itemRenderer factory to produce its children components and on a layout to arrange them. This is the only UI element aside from the 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.mdl.Menu",
  "description": "The Menu class creates a MDL menu. A menu in MDL is a lists of clickable actions.  The Material Design Lite (MDL) menu component is a user interface element that allows users to select one of a number of options. The selection typically results in an action initiation, a setting change, or other observable effect. Menu options are always presented in sets of two or more, and options may be programmatically enabled or disabled as required. The menu appears when the user is asked to choose among a series of options, and is usually dismissed after the choice is made.",
"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.mdl.Navigation",
  "description": "The Navigation class is a <nav> tag in HTML. It parents a list of links In Royale Navigation is implemented as a List component and 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.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.NavigationLayout",
  "description": "The NavigationLayout class is a Container component capable of parenting other components. It normaly can host a Header, a Drawer and a NavigationLaoutContent",
"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.mdl.NavigationLayoutContent",
  "description": "The NavigationLayoutContent class is a Container component capable of parenting the content of the NavigationLayout parent. If the navigation uses a TabBar component for navigation, each piece of content will be a TabBarPanel.",
"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.mdl.NavigationLink",
  "description": "The NavigationLink class is a link component used in some components and is created for convenience or to use alone as a component. Notice that Navigation does not use this component (as a List compomemt, it uses NavigationLinkItemRenderer).",
"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.mdl.ProgressBar",
  "description": "The ProgressBar indicate loading and progress states. The Material Design Lite (MDL) progress component is a visual indicator of background activity in a web page or application. A progress indicator consists of a (typically) horizontal bar containing some animation that conveys a sense of motion. While some progress devices indicate an approximate or specific percentage of completion, the MDL progress component simply communicates the fact that an activity is ongoing and is not yet complete.",
"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.mdl.RadioButton",
  "description": ""},
{ "name": "org.apache.royale.mdl.Slider",
  "description": "The Slider class is used for selecting a value out of a range. The Material Design Lite (MDL) slider component is an enhanced version of the new HTML5 <input type=&quot;range&quot;> element. A slider consists of a horizontal line upon which sits a small, movable disc (the thumb) and, typically, text that clearly communicates a value that will be set when the user moves it.  In Royale the MDL 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.",
"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.mdl.Snackbar",
  "description": "Snackbar are transient popup notifications without actions.  The Material Design Lite (MDL) snackbar component is a container used to notify a user of an operation's status. It displays at the bottom of the screen. A snackbar may contain an action button to execute a command for the user. Actions should undo the committed action or retry it if it failed for example. Actions should not be to close the snackbar. By not providing an action, the snackbar becomes a toast component (see Toast class)",
"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.mdl.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.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.Spinner",
  "description": "The Material Design Lite (MDL) spinner component is an enhanced replacement for the classic &quot;wait cursor&quot; (which varies significantly among hardware and software versions) and indicates that there is an ongoing process, the results of which are not yet available. A spinner consists of an open circle that changes colors as it animates in a clockwise direction, and clearly communicates that a process has been started but not completed.  A spinner performs no action itself, either by its display nor when the user clicks or touches it, and does not indicate a process's specific progress or degree of completion. The MDL spinner component provides various types of spinners, and allows you to add display effects.",
"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.mdl.Switch",
  "description": "The Material Design Lite (MDL) switch component is an enhanced version of the standard HTML <input type=&quot;checkbox&quot;> element. A switch consists of a short horizontal &quot;track&quot; with a prominent circular state indicator and, typically, text that clearly communicates a binary condition that will be set or unset when the user clicks or touches it. Like checkboxes, switches may appear individually or in groups, and can be selected and deselected individually. However, switches provide a more intuitive visual representation of their state: left/gray for off, right/colored for on. The MDL switch component allows you to add both display and click effects.",
"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.mdl.TabBar",
  "description": "The Material Design Lite (MDL) tab bar component is a user interface element that allows different content blocks to share the same screen space in a mutually exclusive manner. TabBars are always presented in sets of two or more, and they make it easy to explore and switch among different views or functional aspects of an app, or to browse categorized data sets individually. TabBars serve as &quot;headings&quot; for their respective content; the active tab bar panel — the one whose content is currently displayed — is always visually distinguished from the others so the user knows which heading the current content belongs to.  Notice that tab bars are not designed in MDL to be nested (and not recommended), and doing so will be cause mal function.  In Royale Tabs consume a dataprovider and uses item renderers to create each item (defaults to TabBarButtonTabsItemRenderer)",
"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.mdl.TabBarButton",
  "description": "The TabBarButton class is a link button component used in Tabs",
"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.mdl.TabBarPanel",
  "description": "The TabBarPanel class is a Container component capable of parenting other four 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.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.Table",
  "description": "The Material Design Lite (MDL) data-table component is an enhanced version of the standard HTML <table>. A data-table consists of rows and columns of well-formatted data, presented with appropriate user interaction capabilities.  The available row/column/cell types in a data-table are mostly self-formatting; that is, once the data-table is defined, the individual cells require very little specific attention. For example, the rows exhibit shading behavior on mouseover and selection, numeric values are automatically formatted by default, and the addition of a single class makes the table rows individually or collectively selectable. This makes the data-table component convenient and easy to code for the developer, as well as attractive and intuitive for the user.",
"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.mdl.TableCell",
  "description": "The TableCell class is a Cell for MDL Table used normaly in a TableRowItemRenderer",
"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.mdl.TableColumn",
  "description": "The TableColumn class represents an HTML <th> element that be inside a <thead> in a MLD Table Use instances of this class in columns Array property MDL Table",
"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": "toplevel",
       "values": []},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.Tabs",
  "description": "The Material Design Lite (MDL) tab component is a user interface element that allows different content blocks to share the same screen space in a mutually exclusive manner. Tabs are always presented in sets of two or more, and they make it easy to explore and switch among different views or functional aspects of an app, or to browse categorized data sets individually. Tabs serve as &quot;headings&quot; for their respective content; the active tab — the one whose content is currently displayed — is always visually distinguished from the others so the user knows which heading the current content belongs to.  In Royale Tabs consume a dataprovider and uses item renderers to create each item (defaults to TabBarPanelItemRenderer)",
"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.mdl.TextArea",
  "description": "The TextArea is a multiline input components.  The Material Design Lite (MDL) text area component is an enhanced version of the standard HTML <input type=&quot;textarea&quot;> elements. A text area consists of a horizontal line indicating where keyboard input can occur and, typically, text that clearly communicates the intended contents of the text area. The MDL text area component provides various types of text fields, and allows you to add both display and click effects.  To get more functionaluty in TextArea you can use beads to float a label or have a prompt for example.",
"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.mdl.TextField",
  "description": "The TextField is a input components.  The Material Design Lite (MDL) text field component is an enhanced version of the standard HTML <input type=&quot;text&quot;> elements. A text field consists of a horizontal line indicating where keyboard input can occur and, typically, text that clearly communicates the intended contents of the text field. The MDL text field component provides various types of text fields, and allows you to add both display and click effects.  To get more functionaluty in TextFields you can use beads to make the expandable, or have a prompt for example.",
"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.mdl.Toast",
  "description": "Toast are transient popup notifications without actions like Snackbar (see Snackbar class) without user actions implied.",
"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.mdl.beads.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.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.beads.ContactChip",
  "description": "The ContactChip bead class is a specialty bead that can be used to add additional button to Chip MDL control.",
"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.mdl.beads.ContactImageChip",
  "description": "The ContactImageChip bead class is a specialty bead that can be used to add additional button to Chip MDL control.",
"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.mdl.beads.DeletableChip",
  "description": "The DeletableChip bead class is a specialty bead that can be used to add additional button to Chip MDL control.",
"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.mdl.beads.DeletableLinkChip",
  "description": "The DeletableLinkChip bead class is a specialty bead that can be used to add additional link button to Chip MDL control.",
"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.mdl.beads.Disabled",
  "description": "The Disabled bead class is a specialty bead that can be used to disable a MDL control.",
"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.mdl.beads.DynamicTabsAddItemRendererForArrayListData",
  "description": "",
"tags": [
{  "tagName": "playerversion",
       "values": ["Flash 10.2", "AIR 2.6", "Flash 10.2", "AIR 2.6"]},
    {  "tagName": "copy",
       "values": ["org.apache.royale.html.beads.DynamicAddItemRendererForArrayListData", "org.apache.royale.html.beads.DynamicAddItemRendererForArrayListData"]},
    {  "tagName": "productversion",
       "values": ["Royale 0.0", "Royale 0.0"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.beads.ExpandableSearch",
  "description": "The ExpandableSearch bead class is a specialty bead that can be used to decorate a TextField MDL control. It makes the TextField to expand when user clicks the associated search icon.",
"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.mdl.beads.GridCellBehaviour",
  "description": "The GridCellBehaviour bead class is used in MDL Dialog to style other components to make it play nicely inside grids instead of use a GridCell 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.mdl.beads.ListItemPrimaryContent",
  "description": "The ListItemPrimaryContent class decorates a tag element in a list item renderer Defines the primary content sub-division",
"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.mdl.beads.ListItemSecondaryAction",
  "description": "The ListItemSecondaryAction class decorates a tag element in a list item renderer Defines the Action sub-division Requires the host ListItemrenderer to have &quot;twoLine&quot; or &quot;threeLine&quot; set to true",
"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.mdl.beads.ListItemSecondaryContent",
  "description": "The ListItemSecondaryContent class decorates a tag element in a list item renderer Defines the secondary content sub-division Requires the host ListItemrenderer to have &quot;twoLine&quot; or &quot;threeLine&quot; set to true",
"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.mdl.beads.ListItemSecondaryInfo",
  "description": "The ListItemSecondaryInfo class decorates a tag element in a list item renderer Defines the information sub-division Requires the host ListItemrenderer to have &quot;twoLine&quot; or &quot;threeLine&quot; set to true",
"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.mdl.beads.ListItemSubTitle",
  "description": "The ListItemSubTitle class decorates a tag element in a list item renderer Requires the host ListItemrenderer to have &quot;twoLine&quot; set to true",
"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.mdl.beads.ListItemTextBody",
  "description": "The ListItemTextBody class decorates a tag element in a list item renderer Requires the host ListItemrenderer to have &quot;threeLine&quot; set to true",
"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.mdl.beads.MdlColor",
  "description": "The MdlColor bead apply color and colorWeight provided by google style color.  https://material.google.com/style/color.html#color-color-palette https://gitlab.com/material/colors/blob/master/colors.html",
"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.mdl.beads.MdlTextColor",
  "description": "The MdlTextColor apply textColor and textColorWeight provided by google style color.  https://material.google.com/style/color.html#color-color-palette https://gitlab.com/material/colors/blob/master/colors.html",
"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.mdl.beads.NonEmptyTextField",
  "description": "The NonEmptyTextField bead should be used only with MDL TextField It checks whether TextField contains non empty string. If it is empty bead display message assigned to &quot;error&quot; 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.mdl.beads.RestrictTextField",
  "description": "The RestrictTextField bead class is a specialty bead that can be used with any MDL TextField control. The bead uses a reg exp pattern to validate input from user. A text property allows to configure error text.  use examples: Numeric pattern = -?[0-9]*(&#92;.[0-9]+)? error text = &quot;Input is not a number!&quot;  Letters and spaces only pattern = [A-Z,a-z, ]* error text = &quot;Letters and spaces only&quot;;  Digits only = [0-9]* error text = &quot;Digits only&quot;;",
"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.mdl.beads.TableNumericEnable",
  "description": "TableNumericEnable bead applies numeric formatting to header (TableColumn) or data cell (TableCell) It removes class &quot;mdl-data-table__cell--non-numeric&quot; from strand (content of column will be align to the right)",
"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.mdl.beads.TabsDataItemRendererFactoryForArrayListData",
  "description": "The TabsDataItemRendererFactoryForArrayListData class reads an array of data and creates an item renderer for every ITabItemRenderer in the array.",
"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.mdl.beads.TabsItemRendererFactoryForArrayData",
  "description": "The TabsItemRendererFactoryForArrayData class reads an array of data and creates an item renderer for every ITabItemRenderer in the array.",
"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.mdl.beads.TabsItemRendererInitializer",
  "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.mdl.beads.TextPrompt",
  "description": "The TextPrompt class is a specialty bead that can be used with any MDL TextField 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.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.beads.Tooltip",
  "description": "The Tooltip class provides useful information on hover.  The Material Design Lite (MDL) tooltip component is an enhanced version of the standard HTML tooltip as produced by the title attribute. A tooltip consists of text and/or an image that clearly communicates additional information about an element when the user hovers over or, in a touch-based UI, touches the element.  The MDL tooltip component is pre-styled (colors, fonts, and other settings) to provide a vivid, attractive visual element that displays related but typically non-essential content, e.g., a definition, clarification, or brief instruction.",
"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.mdl.beads.UpgradeChildren",
  "description": "UpgradeChildren bead will automatically register all the children for component in the case where you are creating DOM elements dynamically. Bead register new elements using the upgradeElement function from MDL library",
"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.mdl.beads.UpgradeElement",
  "description": "UpgradeElement bead will automatically register in the case where you are creating DOM elements dynamically. Bead register new elements using the upgradeElement function from MDL library",
"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.mdl.beads.controllers.DropDownListController",
  "description": "The DropDownListController class bead handles mouse events on the drop down list component parts and dispatches change event on behalf of the DropDownList",
"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.mdl.beads.controllers.SliderMouseController",
  "description": "The SliderMouseController class bead handles mouse events on the org.apache.royale.mdl.Slider's component parts (in swf thumb and track) and dispatches input and change events on behalf of the Slider (in swf, as well, co-ordinating visual changes (such as moving the thumb when the track has been tapped or clicked).",
"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.mdl.beads.models.DropDownListModel",
  "description": "The DropDownListModel class defines the data associated with an org.apache.royale.mdl.DropDownListModel component.",
"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.mdl.beads.models.IDropDownListModel",
  "description": "The IDropDownListModel interface describes the minimum set of properties available to DropDownList 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"]}  ]},
{ "name": "org.apache.royale.mdl.beads.models.ISnackbarModel",
  "description": "The ISnackbarModel interface describes the minimum set of properties available to Snackbar type of control",
"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.mdl.beads.models.ITabModel",
  "description": "The ITabModel interface describes the minimum set of properties available to Tabs control",
"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.mdl.beads.models.IToastModel",
  "description": "The IToastModel interface describes the minimum set of properties available to simple version of Snackbar - Toast",
"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.mdl.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.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.beads.models.SnackbarModel",
  "description": "The SnackbarModel class defines the data associated with an org.apache.royale.mdl.Snackbar 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.mdl.beads.models.TabArrayListModel",
  "description": "The TabArrayListModel class defines the data associated with an org.apache.royale.mdl.Tabs 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.mdl.beads.models.TabArrayModel",
  "description": "The TabArrayModel class defines the data associated with an org.apache.royale.mdl.Tabs 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.mdl.beads.models.ToastModel",
  "description": "The ToastModel class defines the data associated with an org.apache.royale.mdl.Toast 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.mdl.beads.views.DropDownListView",
  "description": "The DropDownListView class creates the visual elements of the org.apache.royale.mdl.DropDownList component. The job of the view bead is to put together the parts of the DropDownList such as the Select and Label",
"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.mdl.beads.views.ListView",
  "description": "ListView makes sure the itemRendererFactory and the layout beads are installed.",
"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.mdl.beads.views.SliderView",
  "description": "The SliderView class creates the visual elements of the org.apache.royale.mdl.Slider component. In swf the Slider has a track and a thumb control which are also created with view beads.",
"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.mdl.beads.views.TabBarView",
  "description": "The TabBarView class creates the visual elements of the org.apache.royale.mdl.TabBar 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.mdl.beads.views.TableView",
  "description": "TableView makes sure the itemRendererFactory and the layout beads are installed.",
"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.mdl.beads.views.TabsView",
  "description": "The TabsView class creates the visual elements of the org.apache.royale.mdl.Tabs 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.mdl.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.8", "Royale 0.8"]},
    {  "tagName": "langversion",
       "values": ["3.0", "3.0"]}  ]},
{ "name": "org.apache.royale.mdl.itemRenderers.FooterLinkItemMouseRenderer",
  "description": "The FooterLinkItemMouseRenderer defines the basic Item Renderer for a MDL NavigationLink List Component and handles mouse events, notifying about them host component.",
"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.mdl.itemRenderers.FooterLinkItemRenderer",
  "description": "The FooterLinkItemRenderer defines the basic Item Renderer for a MDL Footer Link List 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.mdl.itemRenderers.ListItemRenderer",
  "description": "The ListItemRenderer defines the basic Item Renderer for a MDL List 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.mdl.itemRenderers.MenuItemRenderer",
  "description": "The MenuItemRenderer class creates a MDL menu item",
"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.mdl.itemRenderers.NavigationLinkItemMouseRenderer",
  "description": "The NavigationLinkItemMouseRenderer defines the basic Item Renderer for a MDL NavigationLink List Component and handles mouse events, notifying about them host component.",
"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.mdl.itemRenderers.NavigationLinkItemRenderer",
  "description": "The NavigationLinkItemRenderer defines the basic Item Renderer for a MDL NavigationLink List 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.mdl.itemRenderers.TabBarButtonLayoutItemRenderer",
  "description": "Represents an item renderer for the TabBarButton Layout type item renderer. Creates MDL &quot;mdl-layout__tab&quot; conponent",
"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.mdl.itemRenderers.TabBarButtonTabsItemRenderer",
  "description": "Represents an item renderer for the TabBarButton It is default item renderer for TabBarButton Creates MDL &quot;mdl-tabs__tab&quot; conponent",
"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.mdl.itemRenderers.TabBarLayoutItemRenderer",
  "description": "Layout type content for Tabs Creates MDL &quot;mdl-layout__tab-panel&quot; conponent",
"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.mdl.itemRenderers.TabBarPanelItemRenderer",
  "description": "Represents content for a TabBarPanel Creates MDL &quot;mdl-tabs__panel&quot; conponent",
"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.mdl.itemRenderers.TableRowItemRenderer",
  "description": "The TableItemRenderer defines the basic Item Renderer for a MDL Table 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.mdl.itemRenderers.TableRowItemSingleSelectionMouseRenderer",
  "description": "The TableRowItemSingleSelectionMouseRenderer defines the basic Item Renderer for a MDL Table Component and handles mouse events, notifying about them host 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.mdl.materialIcons.IMaterialIcon",
  "description": "IMaterialIcon interface provides abstraction for easiest way to implements custom MaterialIcon class",
"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.mdl.materialIcons.MaterialIcon",
  "description": "Material icons are beautifully crafted, delightful, and easy to use in your web, Android, and iOS projects. Material Design Icons are listed here : https://material.io/icons/  This class could be used with is text property to use one of the mdl icons listed in the before mentioned url.",
"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.mdl.materialIcons.MaterialIconType",
  "description": "The MaterialIconType class list all possible icons found in https://material.io/icons/ to use in its own Material Icon 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.mdl.supportClasses.CardInner",
  "description": "The CardInner class is a base class for all Card inner containers.",
"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.mdl.supportClasses.ChipBase",
  "description": "ChipBase class is the base class for Chip and ButtonChip Chips are complex entities in small blocks.  The Material Design Lite (MDL) chip component is a small, interactive element. Chips are commonly used for contacts, text, rules, icons, and photos.",
"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.mdl.supportClasses.IFooterSection",
  "description": "Marker interface for all footer sections",
"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.mdl.supportClasses.IMaterialIconProvider",
  "description": "Implement if a class will need ability to display Material icon",
"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.mdl.supportClasses.IMdlColor",
  "description": "The IMdlColor interface must be implemented by any class that will apply color and colorWeight provided by google style color.  https://material.google.com/style/color.html#color-color-palette https://gitlab.com/material/colors/blob/master/colors.html",
"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.mdl.supportClasses.IMdlTextColor",
  "description": "The IMdlTextColor interface must be implemented by any class that will apply textColor and textColorWeight provided by google style color.  https://material.google.com/style/color.html#color-color-palette https://gitlab.com/material/colors/blob/master/colors.html",
"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.mdl.supportClasses.ITabItemRenderer",
  "description": "The ITabItemRenderer interface is the basic interface for MDL Tabs and TabBar 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.mdl.supportClasses.ITextField",
  "description": "ITextField is the interface that all TextField MDL classes implement It's used mainly in org.apache.royale.mdl.supportClasses.TextFieldBase",
"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.mdl.supportClasses.MaterialIconBase",
  "description": "Material icons are beautifully crafted, delightful, and easy to use in your web, Android, and iOS projects. Material Design Icons are listed here : https://material.io/icons/  This base class provide common features for all material icons type",
"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.mdl.supportClasses.TabBarButtonItemRendererBase",
  "description": "Base class for TabBarButton 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.mdl.supportClasses.TabItemRendererBase",
  "description": "Base class for Tabs 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.mdl.supportClasses.TextFieldBase",
  "description": "The TextFieldBase class is the base class for TextField and TextArea MDL controls",
"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.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": ""},
{ "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": ""},
{ "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.URLVariables",
  "description": ""},
{ "name": "org.apache.royale.net.beads.CORSCredentialsBead",
  "description": "Bead to allow passing on user authentication information in a XMLHttpRequest request.  If you don't use this bead any cross domain calls that require user authentication (via say basic authentication or cookies) will fail.",
"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.net.beads.URLLoaderCORSCredentialsBead",
  "description": "Bead to allow passing on user authentication information in a XMLHttpRequest request.  If you don't use this bead any cross domain calls that require user authentication (via say basic authentication or cookies) will fail.",
"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.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 required in JS to optionally support extra reflection data. This class itself is non-reflectable, and does not create dependencies from the org.apache.royale.reflection.nativejs package in js release output, unless they are 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": "royalesuppressexport",
       "values": []}  ]},
{ "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.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.SVGBase",
  "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.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": ""},
{ "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.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.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.Language",
  "description": "",
"tags": [
{  "tagName": "royaleignoreimport",
       "values": ["goog.bind", "goog.global", "goog.bind", "goog.global"]},
    {  "tagName": "royalesuppressexport",
       "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.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": ""},
{ "name": "org.apache.royale.utils.ResizeGenerator",
  "description": ""},
{ "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"]},
    {  "tagName": "royalesuppresspublicvarwarning",
       "values": []}  ]},
{ "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.net.IDataInput",
  "description": "initial work on replacement for flash.utils.IDataInput"},
{ "name": "org.apache.royale.utils.net.IDataOutput",
  "description": "initial work on replacement for flash.utils.IDataOutput"},
{ "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."},
{ "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": "replacement for flash.utils.IExternalizable"},
{ "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"]}  ]}]}