         
         // create any children you need in here
         
-        // iconDisplay, subTextDisplay, and decoratorDisplay are created in 
+        // since labelDisplay gets created in super.createChildren(), lets make 
+        // sure it's using the right styles
+        labelDisplay.getStyleFunction = headerGetStyleFunction;
+        headerFieldOrFunctionChanged = true;
+        invalidateProperties();
+        
+        // iconDisplay, messageDisplay, and decoratorDisplay are created in 
         // commitProperties() since they are dependent on 
         // other properties and we don't always create them
         // headerText just uses labelElement to display its data

        var myMeasuredMinWidth:Number = 0;
        var myMeasuredMinHeight:Number = 0;
        
        // FIXME (rfrishbe): use padding and gaps
        // Icon is on left
        if (iconDisplay)
        {
            // padding of 5 on the right...left will be accounted for in the label
            // padding of 10 for height (5 & 5)
            myMeasuredWidth += (isNaN(iconWidth) ? iconDisplay.getPreferredBoundsWidth() : iconWidth) + 5;
            myMeasuredHeight = Math.max(myMeasuredHeight, (isNaN(iconHeight) ? iconDisplay.getPreferredBoundsHeight() : iconHeight) + 10);
            myMeasuredMinWidth += (isNaN(iconWidth) ? iconDisplay.getMinBoundsWidth() : iconWidth) + 5;
            myMeasuredMinHeight = Math.max(myMeasuredMinHeight, (isNaN(iconHeight) ? iconDisplay.getMinBoundsHeight() : iconHeight) + 10);
        }
        
        // Text is aligned next to icon
        
        // FIXME (rfrishbe): will need to change this calculation
        // don't allow text to contribute to width for now
        myMeasuredWidth += labelDisplay.textWidth + 5 + 20; // 5 is the extra padding for text field, 20 is normal padding (10 & 10)
        myMeasuredHeight = Math.max(myMeasuredHeight, labelDisplay.textHeight + 4 + 10); // 4 is the extra padding for text field, 10 is normal padding (5 & 5)
        
        // don't do anything with regards to minimum for the textField
        
        // Decorator is up next
        if (decoratorDisplay)
        { 
            // padding of 5 on the left...the right is already accounted for in the label
            // padding of 10 for height (5 on top, 5 on bottom)
            if (decoratorDisplay is IVisualElement)
            {
                myMeasuredWidth += IVisualElement(decoratorDisplay).getPreferredBoundsWidth() + 5;
                myMeasuredHeight = Math.max(myMeasuredHeight, IVisualElement(decoratorDisplay).getPreferredBoundsHeight() + 10);
                myMeasuredMinWidth += IVisualElement(decoratorDisplay).getMinBoundsWidth() + 5;
                myMeasuredMinHeight = Math.max(myMeasuredMinHeight, IVisualElement(decoratorDisplay).getMinBoundsHeight() + 10);
            }
            else if (decoratorDisplay is IFlexDisplayObject)
            {
                myMeasuredWidth += IFlexDisplayObject(decoratorDisplay).measuredWidth + 5;
                myMeasuredHeight = Math.max(myMeasuredHeight, IFlexDisplayObject(decoratorDisplay).measuredHeight + 10);
                myMeasuredMinWidth += IFlexDisplayObject(decoratorDisplay).measuredWidth + 5;
                myMeasuredMinHeight = Math.max(myMeasuredMinHeight, IFlexDisplayObject(decoratorDisplay).measuredHeight + 10);
            }
        }
        
        // now set the local variables to the member variables.  Make sure it means our
        // minimum height of 80
        measuredWidth = myMeasuredWidth
        measuredHeight = Math.max(80, myMeasuredHeight);
        
        measuredMinWidth = myMeasuredMinWidth;
        measuredMinHeight = Math.max(80, myMeasuredMinHeight);
    }
    
    /**

            iconWidth = iconDisplay.getLayoutBoundsWidth();
            iconHeight = iconDisplay.getLayoutBoundsHeight();
            
            // paddingLeft for x, paddingTop for y
            iconDisplayHolder.setLayoutBoundsPosition(paddingLeft, paddingTop);
        }
        
        // decorator is aligned next to icon
