         invalidateProperties();                    
     }
 
-    /**
+	/**
+	 *  @see RichEditableText#typicalText
+	 *
+	 *  @private
+	 */
+	mx_internal function getTypicalText():String
+	{
+		var richEditableText:RichEditableText = textDisplay as RichEditableText;
+		
+		if (richEditableText)
+			return richEditableText.typicalText;
+		
+		// want the default to be NaN
+		var v:* = textDisplayProperties.typicalText;
+		return (v === undefined) ? null : v;
+	}
+	
+	/**
+	 *  @private
+	 */
+	mx_internal function setTypicalText(value:String):void
+	{
+		if (textDisplay)
+		{
+			var richEditableText:RichEditableText = textDisplay as RichEditableText;
+			
+			if (richEditableText)
+				richEditableText.typicalText = value;
+			textDisplayProperties = BitFlagUtil.update(
+				uint(textDisplayProperties), 
+				TYPICAL_TEXT_PROPERTY_FLAG, true);
+		}
+		else
+		{
+			textDisplayProperties.typicalText = value;
+		}
+		
+		// Generate an UPDATE_COMPLETE event.
+		invalidateProperties();                    
+	}
+
+	/**
      *  The default width for the Text components, measured in characters.
      *  The width of the "M" character is used for the calculation.
      *  So if you set this property to 5, it will be wide enough

        }

        if (BitFlagUtil.isSet(uint(textDisplayProperties), 
                              WIDTH_IN_CHARS_PROPERTY_FLAG) && richEditableText)
        {
            newTextDisplayProperties.widthInChars = richEditableText.widthInChars;
        }
            
        // Switch from storing bit mask to storing properties.
        textDisplayProperties = newTextDisplayProperties;
    }

     */
    private static const WIDTH_IN_CHARS_PROPERTY_FLAG:uint = 1 << 13;
        
	/**
	 *  @private
	 */
	private static const TYPICAL_TEXT_PROPERTY_FLAG:uint = 1 << 14;
	
    //--------------------------------------------------------------------------
    //
    //  Constructor
