 import mx.controls.listClasses.*;
 import mx.core.IFlexDisplayObject;
 import mx.core.IVisualElement;
+import mx.core.UIComponentGlobals;
 import mx.core.UITextField;
 import mx.core.UITextFormat;
 import mx.core.mx_internal;

                positionElement(messageDisplay, labelComponentsX, labelComponentsY + labelHeight + verticalGap);
        }
        
        
        // see if we have an icon that needs to be validated
        if (iconDisplay && 
            iconDisplay.displayObject is ISharedDisplayObject && 

        var myMeasuredMinHeight:Number = 0;
        
        // Icon is on left
		var myIconWidth:Number = 0;
		var myIconHeight:Number = 0;
        if (iconDisplay)
        {
			myIconWidth = (isNaN(iconWidth) ? getElementPreferredWidth(iconDisplay) : iconWidth);
			myIconHeight = (isNaN(iconHeight) ? getElementPreferredHeight(iconDisplay) : iconHeight);
            
            myMeasuredWidth += myIconWidth;
            myMeasuredMinWidth += myIconWidth;
			myMeasuredHeight = Math.max(myMeasuredHeight, myIconHeight);
            myMeasuredMinHeight = Math.max(myMeasuredMinHeight, myIconHeight);
        }
		
		// Decorator is up next
		var decoratorWidth:Number = 0;
		var decoratorHeight:Number = 0;
		
		if (decoratorDisplay)
		{
			decoratorWidth = getElementPreferredWidth(decoratorDisplay);
			decoratorHeight = getElementPreferredHeight(decoratorDisplay);
			
			myMeasuredWidth += decoratorWidth;
			myMeasuredMinWidth += decoratorWidth;
			myMeasuredHeight = Math.max(myMeasuredHeight, decoratorHeight);
			myMeasuredMinHeight = Math.max(myMeasuredHeight, decoratorHeight);
		}
		
        // Text is aligned next to icon
        var labelWidth:Number = 0;
        var labelHeight:Number = 0;
