      */
     override public function get baselinePosition():Number
     {
-        if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)
-            return super.baselinePosition;
-        
         if (!validateBaselinePosition())
             return NaN;
 

    //----------------------------------
    //  viewMetrics
    //----------------------------------

    /**
     *  @private  
     *
     *  Returns the thickness of the edges of the object, including  
     *  the border, title bar, and scroll bars, if visible.
     *  @return Object with left, right, top, and bottom properties
     *  containing the edge thickness, in pixels.
     */
    override public function get viewMetrics():EdgeMetrics
    {
        var vm:EdgeMetrics = super.viewMetrics;
        
        // The getViewMetrics function needs to return its own object.
        // Rather than allocating a new one each time, we'll allocate
        // one once and then hold a pointer to it.
        if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)
        {
            if (!panelViewMetrics)
                panelViewMetrics = new EdgeMetrics(0, 0, 0, 0);
            vm = panelViewMetrics;
    
            var o:EdgeMetrics = super.viewMetrics;
            var bt:Number = getStyle("borderThickness");
            var btl:Number = getStyle("borderThicknessLeft");
            var btt:Number = getStyle("borderThicknessTop");
            var btr:Number = getStyle("borderThicknessRight");
            var btb:Number = getStyle("borderThicknessBottom");
    
            // Add extra space to edges (was margins).
            vm.left = o.left + (isNaN(btl) ? bt : btl);
            vm.top = o.top + (isNaN(btt) ? bt : btt);
            vm.right = o.right + (isNaN(btr) ? bt : btr);
            // Bottom is a special case. If borderThicknessBottom is NaN,
            // use btl if we don't have a control bar or btt if we do.
            vm.bottom = o.bottom + (isNaN(btb) ? 
                (controlBar && !isNaN(btt) ? btt : isNaN(btl) ? bt : btl) : 
                btb);
                    
            // Since the header covers the solid portion of the border,  
            // we need to use the larger of borderThickness or headerHeight
            var hHeight:Number = getHeaderHeight();
            if (!isNaN(hHeight))
                vm.top += hHeight;
    
            if (controlBar && controlBar.includeInLayout)
                vm.bottom += controlBar.getExplicitOrMeasuredHeight();
        }
        return vm;
    }

    //--------------------------------------------------------------------------
    //

import mx.core.ContainerLayout;
import mx.core.EdgeMetrics;
import mx.core.EventPriority;
import mx.core.IFlexDisplayObject;
import mx.core.IFlexModuleFactory;
import mx.core.IFontContextComponent;
