{ "type": "class",
  "qname": "org.apache.royale.textLayout.elements.ListItemElement",
  "baseClassname": "org.apache.royale.textLayout.elements.ContainerFormattedElement"
  ,
    "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"]},
      {  "tagName": "playerversion",
         "values": ["Flash 10", "AIR 1.5"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "accessor",
        "access": "read-only",
        "return": "Boolean",
        "qname": "abstract",
        "namespace": "protected",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "description": "@private"},
      { "type": "accessor",
        "access": "read-only",
        "return": "String",
        "qname": "defaultTypeName",
        "namespace": "public",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "description": "@private"},
      { "type": "accessor",
        "access": "read-only",
        "return": "String",
        "qname": "className",
        "namespace": "public",
        "bindable": [],
        "details": ["override"],
        "deprecated": {}}]
  }
