 [DefaultProperty("content")]
 
 /**
- *  Documentation is not currently avilable.
+ *  Defines text in FXG.
+ *  
+ *  <p>This class can display richly-formatted text, with multiple character and paragraph formats. 
+ *  However, it is non-interactive: it doesn't support scrolling, selection, or editing.</p>
+ *  
+ *  <p>A TextGraphic element defines a text box, specified in the parent Group element's coordinate space, 
+ *  to contain the provided text. The text box is specified using the x/y and width/height attributes on the TextGraphic element.</p>
+ *  
+ *  <p>Text is rendered as a graphic element similar to paths and shapes, but with a restricted subset of rendering options. 
+ *  TextGraphic elements are always rendered using a solid fill color, modified by any opacity, blend mode, and color transformation 
+ *  defined by parent elements, and clipped to any clipping content defined on its parent elements. TextGraphic content is only filled, 
+ *  not stroked.</p>
+ *  
+ *  <p>The TextGraphic element automatically clips the text rendering to the bounds of the text box.</p>
+ *  
+ *  <p>If you do not specify the value of the <code>width</code> or <code>height</code> properties, or if the specified value
+ *  of these properties is 0, the width and height are calculated based on the text content.</p>
  */
 public class TextGraphic extends TextGraphicElement
 {
-	include "../core/Version.as";
-
-	//--------------------------------------------------------------------------
-	//
-	//  Class variables
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
+    include "../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Class variables
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
      *  Since this static var gets initialized by calling a method
      *  in another class, we initialize it in the constructor to avoid
      *  any class-initialization-order problems.
-	 */
+     */
     private static var textImporter:ITextImporter;
 
-	//--------------------------------------------------------------------------
-	//
-	//  Constructor
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  Constructor. 
-	 */
-	public function TextGraphic()
-	{
-		super();
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Constructor. 
+     */
+    public function TextGraphic()
+    {
+        super();
 
         if (!textImporter)
             textImporter = TextFilter.getImporter(TextFilter.TCAL_FORMAT);
 
-		_content = textFlow = createEmptyTextFlow();
-	}
-	
-	//--------------------------------------------------------------------------
+        _content = textFlow = createEmptyTextFlow();
+    }
+    
+    //--------------------------------------------------------------------------
     //
     //  Variables
     //
     //--------------------------------------------------------------------------
-	
-	/**
-	 *  @private
-	 */
-	private var textFlow:TextFlow;
+    
+    /**
+     *  @private
+     */
+    private var textFlow:TextFlow;
 
     /**
      *  @private

        textFlow.hostParagraphFormat = hostParagraphFormat;
        textFlow.hostContainerFormat = hostContainerFormat;

		return textFlow;
	}

	/**
	 *  @private
	 */
	private function compose(width:Number = NaN,
							 height:Number = NaN):void
	{
		textFlow = createTextFlow();
		_content = textFlow;

		textFlowComposer.removeTextLines(DisplayObjectContainer(displayObject));
		
		var bounds:Rectangle = textFlowComposer.bounds;
		bounds.x = 0;
		bounds.y = 0;
		bounds.width = width;
		bounds.height = height;

		textFlowComposer.composeTextFlow(textFlow);
		
		textFlowComposer.addTextLines(DisplayObjectContainer(displayObject));

        displayObject.scrollRect = textFlowComposer.isOverset ? bounds : null;
	}
}

}

        return mx_internal::_text;
    }

    /**
     *  @private
     */
    override public function set text(value:String):void
    {
        // If 'text' is being set after 'content', ignore it
        // because 'content' has precedence.
        if (contentChanged)
            return;
