{ "type": "class",
  "qname": "org.apache.royale.textLayout.operations.CompositeOperation",
  "baseClassname": "org.apache.royale.textLayout.operations.FlowOperation"
  ,
    "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"]},
      {  "tagName": "playerversion",
         "values": ["Flash 10", "AIR 1.5"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "method",
        "qname": "org.apache.royale.textLayout.operations.CompositeOperation",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Creates a CompositeOperation object.",
        "tags": [
        {  "tagName": "param",
               "values": ["operations The operations to group."]},
            {  "tagName": "playerversion",
               "values": ["Flash 10", "AIR 1.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": [{ "name": "operations", "type": "Array"}]}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "org.apache.royale.textLayout.elements.ITextFlow",
        "qname": "textFlow",
        "namespace": "public",
        "bindable": [],
        "details": ["override"],
        "deprecated": {}},
      { "type": "accessor",
        "access": "read-write",
        "return": "Array",
        "qname": "operations",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "An array containing the operations grouped by this composite operation.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 10", "AIR 1.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "method",
        "qname": "addOperation",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Adds an additional operation to the end of the list.  <p>The new operation must operate on the same TextFlow object as the other operations in the list.</p>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 10", "AIR 1.5"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "void",
          "params": [{ "name": "operation", "type": "org.apache.royale.textLayout.operations.FlowOperation"}]}
      ]
  }
