{ "type": "class",
  "qname": "mx.charts.effects.effectClasses.SeriesZoomInstance",
  "baseClassname": "mx.charts.effects.effectClasses.SeriesEffectInstance"
  ,
    "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"]},
      {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "productversion",
         "values": ["Flex 3"]},
      {  "tagName": "langversion",
         "values": ["3.0"]},
      {  "tagName": "royalesuppresspublicvarwarning",
         "values": []}  ],
  "members": [
  { "type": "method",
        "qname": "mx.charts.effects.effectClasses.SeriesZoomInstance",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Constructor.",
        "tags": [
        {  "tagName": "param",
               "values": ["target The target of the effect."]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": [{ "name": "target", "type": "Object"}]}
      ,
      { "type": "field",
        "qname": "horizontalFocus",
        "return": "String",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Defines the location of the focul point of the zoom.  <p>Valid values of <code>horizontalFocus</code> are <code>&quot;left&quot;</code>, <code>&quot;center&quot;</code>, <code>&quot;right&quot;</code>, and <code>null</code>.</p> The default value is <code>&quot;center&quot;</code>.  <p>You combine the <code>horizontalFocus</code> and <code>verticalFocus</code> properties to define where the data series zooms in and out from. For example, set <code>horizontalFocus</code> to <code>&quot;left&quot;</code> and <code>verticalFocus</code> to <code>&quot;top&quot;</code> to zoom the series data to and from the top left corner of either the element or the chart (depending on the setting of the <code>relativeTo</code> property).</p>  <p>If you specify only one of these two properties, then the focus is a horizontal or vertical line rather than a point. For example, when you set <code>horizontalFocus</code> to <code>&quot;left&quot;</code> but <code>verticalFocus</code> to <code>null</code>, the element zooms to and from a vertical line along the left edge of its bounding box. Set <code>verticalFocus</code> to <code>&quot;center&quot;</code> to zoom chart elements to and from a horizontal line along the middle of the chart's bounding box.</p>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "relativeTo",
        "return": "String",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Controls the bounding box that Flex uses to calculate the focal point of the zooms.  <p>Valid values for <code>relativeTo</code> are <code>&quot;series&quot;</code> and <code>&quot;chart&quot;</code>. The default value is <code>&quot;series&quot;</code>.</p>  <p>Set to <code>&quot;series&quot;</code> to zoom each element relative to itself. For example, each column of a ColumnChart zooms from the top left of the column, the center of the column, and so on.</p>  <p>Set to <code>&quot;chart&quot;</code> to zoom each element relative to the chart area. For example, each column zooms from the top left of the axes, the center of the axes, and so on.</p>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "verticalFocus",
        "return": "String",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Defines the location of the focul point of the zoom.  <p>Valid values of <code>verticalFocus</code> are <code>&quot;top&quot;</code>, <code>&quot;center&quot;</code>, <code>&quot;bottom&quot;</code>, and <code>null</code>. The default value is <code>&quot;center&quot;</code>.</p>  <p>For more information, see the description of the <code>horizontalFocus</code> property.</p>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]}]
  }
