From 96d5ab4d29e72d9d272dd6ada7d07318e9d2607e Mon Sep 17 00:00:00 2001 From: Robert Roebling Date: Mon, 12 Apr 1999 13:47:34 +0000 Subject: [PATCH] added moving subwindow when scrolling (tested in image.cpp ) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- samples/image/image.cpp | 2 ++ src/gtk/window.cpp | 8 ++++++++ src/gtk1/window.cpp | 8 ++++++++ 3 files changed, 18 insertions(+) diff --git a/samples/image/image.cpp b/samples/image/image.cpp index 5f215657ad..16c2120ba9 100644 --- a/samples/image/image.cpp +++ b/samples/image/image.cpp @@ -113,6 +113,8 @@ MyCanvas::MyCanvas( wxWindow *parent, wxWindowID id, image.LoadFile( dir + wxString("test.png"), wxBITMAP_TYPE_PNG ); my_square = new wxBitmap( image.ConvertToBitmap() ); + + (void)new wxTextCtrl( this, -1, "", wxPoint(10,200), wxSize(120,-1) ); CreateAntiAliasedBitmap(); } diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 5adc32e77e..ecc4c6101f 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -3133,6 +3133,14 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) ) wxCHECK_RET( m_wxwindow != NULL, "window needs client area for scrolling" ); + 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; GetClientSize( &cw, &ch ); diff --git a/src/gtk1/window.cpp b/src/gtk1/window.cpp index 5adc32e77e..ecc4c6101f 100644 --- a/src/gtk1/window.cpp +++ b/src/gtk1/window.cpp @@ -3133,6 +3133,14 @@ void wxWindow::ScrollWindow( int dx, int dy, const wxRect* WXUNUSED(rect) ) wxCHECK_RET( m_wxwindow != NULL, "window needs client area for scrolling" ); + 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; GetClientSize( &cw, &ch ); -- 2.45.2