]> git.saurik.com Git - wxWidgets.git/commitdiff
Corrected tree ctrl behaviour.
authorRobert Roebling <robert@roebling.de>
Wed, 19 May 1999 10:27:11 +0000 (10:27 +0000)
committerRobert Roebling <robert@roebling.de>
Wed, 19 May 1999 10:27:11 +0000 (10:27 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/generic/scrolwin.cpp
src/generic/treectrl.cpp
src/gtk/window.cpp
src/gtk1/window.cpp

index de7ed95ef1b826883082036d12e1723ce626f94d..6786900ccd456d2c742adb7c7d36e7829c42a2d5 100644 (file)
@@ -94,9 +94,9 @@ void wxScrolledWindow::SetScrollbars (int pixelsPerUnitX, int pixelsPerUnitY,
     bool do_refresh =
     (
       (noUnitsX != 0 && m_xScrollLines == 0) ||
-      (noUnitsX < m_xScrollPosition) ||
+      (noUnitsX < m_xScrollLines) ||
       (noUnitsY != 0 && m_yScrollLines == 0) ||
-      (noUnitsY < m_yScrollPosition) ||
+      (noUnitsY < m_yScrollLines) ||
       (xPos != m_xScrollPosition) ||
       (yPos != m_yScrollPosition) ||
       (pixelsPerUnitX != m_xScrollPixelsPerLine) ||
@@ -145,7 +145,8 @@ void wxScrolledWindow::SetScrollbars (int pixelsPerUnitX, int pixelsPerUnitY,
       
     AdjustScrollbars();
    
-   if (do_refresh && !noRefresh) Refresh();
+    if (do_refresh && !noRefresh) 
+       Refresh(); 
    
 #ifdef __WXMSW__
    // Necessary?
@@ -456,7 +457,7 @@ void wxScrolledWindow::Scroll( int x_pos, int y_pos )
         SetScrollPos( wxVERTICAL, m_yScrollPosition, TRUE );
     }
     
-    // BAD, BAD, can cause event loops if called from OnPaint(). (KB)
+    // BAD, BAD, can cause event loops if called from OnPaint(). KB.
     // Refresh();
     
 #ifdef __WXMSW__
index 698488be069eb30c0ca9660ef35d8a000cae31ec..e81bbabc664b0eca5635bef3920d5c2d36bb0597 100644 (file)
@@ -950,7 +950,7 @@ void wxTreeCtrl::EnsureVisible(const wxTreeItemId& item)
         int x_pos = GetScrollPos( wxHORIZONTAL );
         SetScrollbars( 10, 10, x/10, y/10, x_pos, (item_y-client_h/2)/10 );
     }
-    else if (item_y > start_y+client_h-16)
+    else if (item_y > start_y+client_h-20)
     {
        int x = 0;
        int y = 0;
index 8a4523630a316eb27429db5f5c753f34b1fb8156..73262734014ce7139085a95f5b3fec93647880b5 100644 (file)
@@ -2857,6 +2857,14 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
         m_scrollGC = gdk_gc_new( m_wxwindow->window );
         gdk_gc_set_exposures( m_scrollGC, TRUE );
     }
+    
+    wxNode *node = m_children.First();
+    while (node)
+    {
+        wxWindow *child = (wxWindow*) node->Data();
+       child->Move( child->m_x + dx, child->m_y + dy );
+       node = node->Next();
+    }
 
     int cw = 0;
     int ch = 0;
@@ -2890,14 +2898,6 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
 
         Refresh( TRUE, &rect );
     }
-    
-    wxNode *node = m_children.First();
-    while (node)
-    {
-        wxWindow *child = (wxWindow*) node->Data();
-       child->Move( child->m_x + dx, child->m_y + dy );
-       node = node->Next();
-    }
 }
 
 void wxWindow::SetScrolling(bool scroll)
index 8a4523630a316eb27429db5f5c753f34b1fb8156..73262734014ce7139085a95f5b3fec93647880b5 100644 (file)
@@ -2857,6 +2857,14 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
         m_scrollGC = gdk_gc_new( m_wxwindow->window );
         gdk_gc_set_exposures( m_scrollGC, TRUE );
     }
+    
+    wxNode *node = m_children.First();
+    while (node)
+    {
+        wxWindow *child = (wxWindow*) node->Data();
+       child->Move( child->m_x + dx, child->m_y + dy );
+       node = node->Next();
+    }
 
     int cw = 0;
     int ch = 0;
@@ -2890,14 +2898,6 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) )
 
         Refresh( TRUE, &rect );
     }
-    
-    wxNode *node = m_children.First();
-    while (node)
-    {
-        wxWindow *child = (wxWindow*) node->Data();
-       child->Move( child->m_x + dx, child->m_y + dy );
-       node = node->Next();
-    }
 }
 
 void wxWindow::SetScrolling(bool scroll)