User Guide

22 Chapter 1: Introduction
Summary of the DOM structure
The following list displays the DOM structure in outline format. Numbers at the beginning of
each line represent the level of an object. For example, an object preceded by “03” is a child of
next highest “02” object, which, in turn, is a child of the next highest “01” object.
In some cases, an object is available by specifying a property of its parent object. For example, the
document.timelines property contains an array of Timeline objects. These properties are
noted in the following outline.
Finally, some objects are subclasses of other objects, rather than being children of other objects.
An object that is a subclass of another object has methods and/or properties of its own in addition
to the methods and properties of the other object (the superclass). Subclasses share the same level
in the hierarchy as their superclass. For example, Item is a superclass of BitmapItem. These
relationships are illustrated in the following outline:
01 Top-level functions
01 flash object
02 componentsPanel object
02 Document object (fl.documents array)
03 Matrix object
03 Fill object
03 Stroke object
03 library object
04 Item object (library.items array)
04 BitmapItem object (subclass of Item object)
04 folderItem object (subclass of Item object)
04 fontItem object (subclass of Item object)
04 SoundItem object (subclass of Item object)
04 SymbolItem object (subclass of Item object)
04 VideoItem object (subclass of Item object)
03 Timeline object (document.timelines array)
04 Layer object (timeline.layers array)
05 Frame object (layer.frames array)
06 Element object (frame.elements array)
07 Matrix object (Element.matrix)
06 Instance object (abstract class, subclass of Element object)
06 BitmapInstance object (subclass of Instance object)
06 CompiledClipInstance object (subclass of Instance object)
06 ComponentInstance object (subclass of SymbolInstance object)
07 Parameter object (ComponentInstance.parameters)
06 EmbeddedVideoInstance object (subclass of Instance object)
06 LinkedVideoInstance object (subclass of Instance object)
06 SymbolInstance object (subclass of Instance object)
06 Text object (subclass of Element object)
07 TextRun object (text.textRuns array)
08 TextAttrs object (textRun.textAttrs array)
06 Shape object (subclass of Element object)
07 Contour object (shape.contours array)
08 HalfEdge object
09 Vertex object
09 Edge object
07 Edge object (shape.edges array)
08 HalfEdge object