-    else
-#endif
-    {
-        wxPoint pos;
-        pos.x =
-        pos.y = 0;
-
-        Rect scrollrect;
-        RgnHandle updateRgn = NewRgn() ;
-
-        {
-            wxClientDC dc(this) ;
-            wxMacPortSetter helper(&dc) ;
-
-            m_peer->GetRectInWindowCoords( &scrollrect ) ;
-            //scrollrect.top += MacGetTopBorderSize() ;
-            //scrollrect.left += MacGetLeftBorderSize() ;
-            scrollrect.bottom = scrollrect.top + height ;
-            scrollrect.right = scrollrect.left + width ;
-
-            if ( rect )
-            {
-                Rect r = { dc.YLOG2DEVMAC(rect->y) , dc.XLOG2DEVMAC(rect->x) , dc.YLOG2DEVMAC(rect->y + rect->height) ,
-                    dc.XLOG2DEVMAC(rect->x + rect->width) } ;
-                SectRect( &scrollrect , &r , &scrollrect ) ;
-            }
-
-            ScrollRect( &scrollrect , dx , dy , updateRgn ) ;
-
-            // now scroll the former update region as well and add the new update region
-            WindowRef rootWindow = (WindowRef) MacGetTopLevelWindowRef() ;
-            RgnHandle formerUpdateRgn = NewRgn() ;
-            RgnHandle scrollRgn = NewRgn() ;
-            RectRgn( scrollRgn , &scrollrect ) ;
-            GetWindowUpdateRgn( rootWindow , formerUpdateRgn ) ;
-            Point pt = {0, 0} ;
-            LocalToGlobal( &pt ) ;
-            OffsetRgn( formerUpdateRgn , -pt.h , -pt.v ) ;
-            SectRgn( formerUpdateRgn , scrollRgn , formerUpdateRgn ) ;
-
-            if ( !EmptyRgn( formerUpdateRgn ) )
-            {
-                MacOffsetRgn( formerUpdateRgn , dx , dy ) ;
-                SectRgn( formerUpdateRgn , scrollRgn , formerUpdateRgn ) ;
-                InvalWindowRgn( rootWindow, formerUpdateRgn ) ;
-            }
-
-            InvalWindowRgn(rootWindow, updateRgn ) ;
-            DisposeRgn( updateRgn ) ;
-            DisposeRgn( formerUpdateRgn ) ;
-            DisposeRgn( scrollRgn ) ;
-        }
-
-        Update() ;
-    }