  *  @playerversion AIR 2.0
  *  @productversion Flex 4.5
  */
-public class StyleableTextField extends TextField implements IEditableText
+public class StyleableTextField extends TextField 
+    implements IEditableText, ISimpleStyleClient
 {        
     
     //--------------------------------------------------------------------------

// To use:
//   in createChildren():
//       var tf:StyleableTextField = createInFontContext(StyleableTextField);
//       tf.styleProvider = this;
//       tf.editable = true|false;   // for editable text
//       tf.multiline = true|false;  // for multiline text
//       tf.wordWrap = true|false;   // for word wrapping

    
    //--------------------------------------------------------------------------
    //
    //  Properties
    //
    //--------------------------------------------------------------------------
    
    //----------------------------------
    //  styleDeclaration
    //----------------------------------
    
    /**
     *  @private
     *  Storage for the styleDeclaration property.
     */
    private var _styleDeclaration:CSSStyleDeclaration;
    
    [Inspectable(environment="none")]
    
    /**
     *  Storage for the inline inheriting styles on this object.
     *  This CSSStyleDeclaration is created the first time that
     *  the <code>setStyle()</code> method
     *  is called on this component to set an inheriting style.
     *  Developers typically never need to access this property directly.
     *  
     *  @langversion 3.0
     *  @playerversion Flash 10.1
     *  @playerversion AIR 2.0
     *  @productversion Flex 4.5
     */
    public function get styleDeclaration():CSSStyleDeclaration
    {
        return _styleDeclaration;
    }
    
    /**
     *  @private
     */
    public function set styleDeclaration(value:CSSStyleDeclaration):void
    {
        _styleDeclaration = value;
    }
    
    //----------------------------------
    //  styleName
    //----------------------------------
    
    /**
     *  @private
     *  Storage for the styleName property.
     */
    private var _styleName:Object /* UIComponent */;
    
    /**
     *  The class style used by this component. This should be an IStyleClient.
     *  
     *  @langversion 3.0
     *  @playerversion Flash 10.1
     *  @playerversion AIR 2.0
     *  @productversion Flex 4.5
     */
    public function get styleName():Object /* UIComponent */
    {
        return _styleName;
    }
    
    /**
     *  @private
     */
    public function set styleName(value:Object /* UIComponent */):void
    {
        if (_styleName === value)
            return;
        
        _styleName = value;
        
        styleChanged("styleName");
    }
    
    //--------------------------------------------------------------------------
    //
    //  IDisplayText implementation
    //
    //--------------------------------------------------------------------------
