    override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
     {
         super.updateDisplayList(unscaledWidth, unscaledHeight);
-        
-        titleDisplay.width = unscaledWidth;
-        titleDisplay.height = unscaledHeight;
-        
+        		
         // reset text if it was truncated before.
         if (titleDisplay.isTruncated)
             titleDisplay.text = title;
         titleDisplay.commitStyles();
         
+		titleDisplay.setLayoutBoundsPosition(0, 0);
+		titleDisplay.setLayoutBoundsSize(unscaledWidth, unscaledHeight);
+
         // now truncate the text
         titleDisplay.truncateToFit();
         
         titleDisplayShadow.commitStyles();
-        titleDisplayShadow.y = titleDisplay.y + 1; // degree shadow down
-        titleDisplayShadow.width = unscaledWidth;
-        titleDisplayShadow.height = unscaledHeight;
+		titleDisplayShadow.setLayoutBoundsPosition(0, 1);
+		titleDisplayShadow.setLayoutBoundsSize(unscaledWidth, unscaledHeight);
+		
         titleDisplayShadow.alpha = getStyle("textShadowAlpha");
         
         // if labelDisplay is truncated, then push it down here as well.

            titleDisplay.text = title;
        titleDisplay.commitStyles();
        
        var textSize:Point = titleDisplay.measuredTextSize;
        textWidth = textSize.x;
        
        if (title != "")
        {
            textHeight = textSize.y;
            descent = titleDisplay.getLineMetrics(0).descent;
        }
        else
        {
            var lineMetrics:TextLineMetrics = measureText("Wj");
            textHeight = lineMetrics.height + StyleableTextField.TEXT_HEIGHT_PADDING;
            descent = lineMetrics.descent;
        }
        
        measuredWidth = textWidth;

    private var titleDisplayShadow:StyleableTextField;
    private var title:String;
    private var titleChanged:Boolean;
	
    public function TitleDisplayComponent()
    {
        super();
