 
 package flashx.textLayout.controls
 {
-	
+    
 import flash.display.DisplayObject;
 import flash.display.Graphics;
 import flash.display.Shape;

 */
class TLFTextFieldTextContainerManager extends TextContainerManager
{
	/**
	 *  @private
	 */
	public function TLFTextFieldTextContainerManager(container:Sprite, configuration:IConfiguration = null)
	{
		super(container, configuration);
	}
	
	/**
	 *  @private
	 */
	override public function drawBackgroundAndSetScrollRect(scrollX:Number, scrollY:Number):Boolean
	{
		return true;
	}
}

/**

 */
class TLFTextFieldHostFormat implements ITextLayoutFormat
{
    public function TLFTextFieldHostFormat(textField:TLFTextField)
    {
        super();
        
        this.textField = textField;
    }
    
    private var textField:TLFTextField;
    
    public function get alignmentBaseline():*
    {
        return undefined;
    }
    
    public function get backgroundAlpha():*
    {
        return undefined;
    }
    
    public function get backgroundColor():*
    {
        return undefined;
    }
    
    public function get baselineShift():*
    {
        return undefined;
    }
    
    public function get blockProgression():*
    {
        return undefined;
    }
    
    public function get breakOpportunity():*
    {
        return undefined;
    }
    
    public function get cffHinting():*
    {
        return undefined;
    }
    
    public function get color():*
    {
        textField._defaultTextFormat.color;
    }
    
    public function get columnCount():*
    {
        return undefined;
    }
    
    public function get columnGap():*
    {
        return undefined;
    }
    
    public function get columnWidth():*
    {
        return undefined;
    }
    
    public function get digitCase():*
    {
        return undefined;
    }
    
    public function get digitWidth():*
    {
        return undefined;
    }
    
    public function get direction():*
    {
        return textField.direction;
    }
    
    public function get dominantBaseline():*
    {
        return undefined;
    }
    
    public function get firstBaselineOffset():*
    {
        return undefined;
    }
    
    public function get fontFamily():*
    {
        return textField._defaultTextFormat.font;
    }
    
    public function get fontLookup():*
    {
        return textField.embedFonts ?
               FontLookup.EMBEDDED_CFF :
               FontLookup.DEVICE;
    }
    
    public function get fontSize():*
    {
        return textField._defaultTextFormat.size;
    }
    
    public function get fontStyle():*
    {
        return textField._defaultTextFormat.italic ?
               FontPosture.ITALIC :
               FontPosture.NORMAL;
    }
    
    public function get fontWeight():*
    {
        return textField._defaultTextFormat.bold ?
               FontWeight.BOLD :
               FontWeight.NORMAL;
    }
    
    public function get justificationRule():*
    {
        return undefined;
    }
    
    public function get justificationStyle():*
    {
        return undefined;
    }
    
    public function get kerning():*
    {
        return textField._defaultTextFormat.kerning ?
               Kerning.AUTO :
               Kerning.OFF;
    }
    
    public function get leadingModel():*
    {
        return LeadingModel.ASCENT_DESCENT_UP;
    }
    
    public function get ligatureLevel():*
    {
        return undefined;
    }
    
    public function get lineBreak():*
    {
        return textField.wordWrap ?
               LineBreak.TO_FIT :
               LineBreak.EXPLICIT;
    }
    
    public function get lineHeight():*
    {
        return textField._defaultTextFormat.leading + 2; // TODO
    }
    
    public function get lineThrough():*
    {
        return undefined;
    }
    
    public function get locale():*
    {
        return undefined;
    }
    
    public function get paddingBottom():*
    {
        return TLFTextField.PADDING_BOTTOM;
    }
    
    public function get paddingLeft():*
    {
        return TLFTextField.PADDING_LEFT;
    }
    
    public function get paddingRight():*
    {
        return TLFTextField.PADDING_RIGHT;
    }
    
    public function get paddingTop():*
    {
        return TLFTextField.PADDING_TOP;
    }
    
    public function get paragraphEndIndent():*
    {
        return textField._defaultTextFormat.rightMargin;
    }
    
    public function get paragraphSpaceAfter():*
    {
        return undefined;
    }
    
    public function get paragraphSpaceBefore():*
    {
        return undefined;
    }
    
    public function get paragraphStartIndent():*
    {
        return textField._defaultTextFormat.leftMargin;
    }
    
    public function get renderingMode():*
    {
        return undefined;
    }
    
    public function get tabStops():*
    {
        return textField._defaultTextFormat.tabStops; // TODO
    }
    
    public function get textAlign():*
    {
        return textField._defaultTextFormat.align;
    }
    
    public function get textAlignLast():*
    {
        return textField._defaultTextFormat.align;
    }
    
    public function get textAlpha():*
    {
        return undefined;
    }
    
    public function get textDecoration():*
    {
        return textField._defaultTextFormat.underline ?
               TextDecoration.UNDERLINE :
               TextDecoration.NONE;
    }
    
    public function get textIndent():*
    {
        return textField._defaultTextFormat.indent;
    }
    
    public function get textJustify():*
    {
        return undefined;
    }
    
    public function get textRotation():*
    {
        return undefined;
    }
    
    public function get trackingLeft():*
    {
        return undefined;
    }
    
    public function get trackingRight():*
    {
        return textField._defaultTextFormat.letterSpacing;
    }
    
    public function get typographicCase():*
    {
        return undefined;
    }
    
    public function get verticalAlign():*
    {
        return undefined;
    }
    
    public function get whiteSpaceCollapse():*
    {
        return undefined;
    }
}
