      */
     private var flexibleWidth:Number;
     
+    /**
+     *  @private
+     */
+    private var lastEstimatedHeight:Number;
+    
+    /**
+     *  @private
+     */
+    private var inUpdateDisplayListVirtual:Boolean;
+    
     //--------------------------------------------------------------------------
     //
     //  Class methods

     */
    override public function estimateSizesOfElements():void
    {
        if (llv)
        {
            llv.minorSize = 0;
            llv.minMinorSize = 0;
        }
        
        var size:SizesAndLimit = new SizesAndLimit();
        var spaceToDistribute:Number = !isNaN(target.explicitWidth) ? target.explicitWidth : target.estimatedWidth;

            return;
        
        if (_target)
        {
            if (useVirtualLayout)
                _target.removeEventListener(FlexEvent.MEASURED_SIZE_PRELIMINARY, measuredSizePreliminaryHandler);
        }
        _target = value;
        super.target = value;
        if (value)
        {
            if (useVirtualLayout)
                value.addEventListener(FlexEvent.MEASURED_SIZE_PRELIMINARY, measuredSizePreliminaryHandler, false, 0, true);
        }
    }
    
    //----------------------------------
    //  useVirtualLayout
    //----------------------------------
    
    /**
     * @private
     */
    override public function set useVirtualLayout(value:Boolean):void
    {
        if (_useVirtualLayout == value)
            return;

        if (_target)
        {
            if (value)
                _target.addEventListener(FlexEvent.MEASURED_SIZE_PRELIMINARY, measuredSizePreliminaryHandler, false, 0, true);
            else
                _target.removeEventListener(FlexEvent.MEASURED_SIZE_PRELIMINARY, measuredSizePreliminaryHandler);
        }
        super.useVirtualLayout = value;
    }

    //--------------------------------------------------------------------------
    //
    //  Methods
