             
             invalidateParentSizeAndDisplayList();
         }
-
-        if (scrollPositionChanged) {
-            scrollPositionChanged = false;
-            var r:Rectangle = scrollRect;
-            if (r == null) r = new Rectangle(0, 0, width, height);
-            r.x = _horizontalScrollPosition;
-            r.y = _verticalScrollPosition;
-            scrollRect = r; 
-        }
     }
     
     override protected function measure():void

        
        if (_layout)
            _layout.measure();
    }
    
    /**
     *  @private
     *  Conditionally sets the origin of the scrollRect to 
     *  verticalScrollPosition,horizontalScrollPosition and its width
     *  width,height to w,h (unscaledWidth,unscaledHeight).  We avoid setting
     *  the scrollRect (and therefore clipping) when scrolling isn't indicated:
     *  if the scrollRect is currently null and the scrollPosition properties
     *  are 0, and the Group's contentWidth,Height is &lt;= to
     *  unscaledWidth/Height, then the scrollRect is not set.
     */ 
    private function updateScrollRect(w:Number, h:Number):void
    {
        var r:Rectangle = scrollRect;
        if (r) 
        {
            r.width = w;
            r.height = h;
            scrollRect = r;
        }
        else // scrollRect wasn't set
        {
            var hsp:Number = horizontalScrollPosition;
            var vsp:Number = verticalScrollPosition;
            var cw:Number = contentWidth;
            var ch:Number = contentHeight;
            
            // Don't set the scrollRect needlessly.
            if ((hsp != 0) || (vsp != 0) || (cw > w) || (ch > h))
            {
                scrollRect = new Rectangle(hsp, vsp, w, h);
            }
        }
    }
    
    override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void


        if (_layout)
            _layout.updateDisplayList(unscaledWidth, unscaledHeight);
    }
    
    //----------------------------------
    //  horizontalScrollPosition
    //----------------------------------
        
    [Bindable]

    public function get horizontalScrollPosition():Number 
    {
        return (layout) ? layout.horizontalScrollPosition : 0;
    }

    public function set horizontalScrollPosition(value:Number):void 
    {
        if (layout)
            layout.horizontalScrollPosition = value;
    }
    
    //----------------------------------
    //  verticalScrollPosition
    //----------------------------------
    
    [Bindable]

    public function get verticalScrollPosition():Number 
    {
        return (layout) ? layout.verticalScrollPosition : 0;
    }

    public function set verticalScrollPosition(value:Number):void 
    {
        if (layout)
            layout.verticalScrollPosition = value;
    }
    
    
