{ "type": "class",
  "qname": "spark.events.GridCaretEvent",
  "baseClassname": "org.apache.royale.events.Event"
  ,
    "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"]},
      {  "tagName": "playerversion",
         "values": ["Flash 10", "AIR 2.5"]},
      {  "tagName": "productversion",
         "values": ["Flex 4.5"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "field",
        "qname": "CARET_CHANGE",
        "return": "String",
        "namespace": "public",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "The <code>GridSelectionEvent.CARET_CHANGE</code> constant defines the value of the <code>type</code> property of the event object for a <code>caretChange</code> event, which indicates that the current caret position has just been changed.  <p>The properties of the event object have the following values:</p> <table class=&quot;innertable&quot;> <tr><th>Property</th><th>Value</th></tr> <tr><td><code>bubbles</code></td><td>false</td></tr> <tr><td><code>cancelable</code></td><td>false</td></tr> <tr><td><code>currentTarget</code></td><td>The Object that defines the event listener that handles the event. For example, if you use <code>myButton.addEventListener()</code> to register an event listener, myButton is the value of the <code>currentTarget</code>. </td></tr> <tr><td><code>newColumnIndex</code></td><td>The zero-based column index of the caret position after it was changed.  It is -1 if the <code>selectionMode</code> is row-based.</td></tr> <tr><td><code>newRowIndex</code></td><td>The zero-based row index of the caret position after it was changed.</td></tr> <tr><td><code>oldColumnIndex</code></td><td>The zero-based column index of the caret position before it was changed.  It is -1 if the <code>selectionMode</code> is row-based.</td></tr> <tr><td><code>oldRowIndex</code></td><td>The zero-based row index of the caret position before it was changed.</td></tr> <tr><td><code>target</code></td><td>The Object that dispatched the event; it is not always the Object listening for the event. Use the <code>currentTarget</code> property to always access the Object listening for the event.</td></tr> <tr><td><code>type</code></td><td>GirdCaretEvent.CARET_CHANGE</td></tr> </table>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 10", "AIR 2.5"]},
            {  "tagName": "eventType",
               "values": ["caretChange"]},
            {  "tagName": "productversion",
               "values": ["Flex 4.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "method",
        "qname": "spark.events.GridCaretEvent",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Constructor.   up the display list hierarchy.  associated with the event can be prevented.  before the change.  If the <code>selectionMode</code> is either <code>SelectionMode.SINGLE_ROW</code> or <code>SelectionMode.MULTIPLE_ROWS</code>, this is -1.  the change.  after the change.  If the <code>selectionMode</code> is either <code>SelectionMode.SINGLE_ROW</code> or <code>SelectionMode.MULTIPLE_ROWS</code>, this is -1.  the change.",
        "tags": [
        {  "tagName": "see",
               "values": ["spark.components.DataGrid#columns", "spark.components.DataGrid#dataProvider"]},
            {  "tagName": "param",
               "values": ["type The event type; indicates the action that caused the event.", "bubbles Specifies whether the event can bubble", "cancelable Specifies whether the behavior", "oldColumnIndex The zero-based column index of the caret position", "oldRowIndex The zero-based row index of the caret position before", "newColumnIndex The zero-based column index of the caret position", "newRowIndex The zero-based row index of the caret position after"]},
            {  "tagName": "playerversion",
               "values": ["Flash 10", "AIR 2.5"]},
            {  "tagName": "productversion",
               "values": ["Flex 4.5"]},
            {  "tagName": "spark.events.GridSelectionEventKind",
               "values": []},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": [{ "name": "type", "type": "String"},
        { "name": "bubbles", "type": "Boolean"},
        { "name": "cancelable", "type": "Boolean"},
        { "name": "oldRowIndex", "type": "int"},
        { "name": "oldColumnIndex", "type": "int"},
        { "name": "newRowIndex", "type": "int"},
        { "name": "newColumnIndex", "type": "int"}]}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "int",
        "qname": "oldRowIndex",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "accessor",
        "access": "read-write",
        "return": "int",
        "qname": "oldColumnIndex",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "accessor",
        "access": "read-write",
        "return": "int",
        "qname": "newRowIndex",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "accessor",
        "access": "read-write",
        "return": "int",
        "qname": "newColumnIndex",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {}}]
  }
