From f96ac56ad3cc1961e41a6130335d7b89a21a76e4 Mon Sep 17 00:00:00 2001 From: Robert Roebling Date: Sun, 24 Oct 1999 19:09:50 +0000 Subject: [PATCH] wxFrame::Set/GetClientSize() uses toolbar area again, wxWindow no longer reroutes mouse events to invisble windows, Compile fix. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/gtk/frame.cpp | 4 ---- src/gtk/radiobox.cpp | 6 +++++- src/gtk/window.cpp | 15 ++++++++++++--- src/gtk1/frame.cpp | 4 ---- src/gtk1/radiobox.cpp | 6 +++++- src/gtk1/window.cpp | 15 ++++++++++++--- src/zlib/zutil.h | 4 +++- 7 files changed, 37 insertions(+), 17 deletions(-) diff --git a/src/gtk/frame.cpp b/src/gtk/frame.cpp index 7cbd3ec7d2..3098d050c0 100644 --- a/src/gtk/frame.cpp +++ b/src/gtk/frame.cpp @@ -615,7 +615,6 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const #if wxUSE_TOOLBAR /* tool bar */ -/* if (m_frameToolBar) { if (!m_toolBarDetached) @@ -627,7 +626,6 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const else (*height) -= wxPLACE_HOLDER; } -*/ #endif /* mini edge */ @@ -661,7 +659,6 @@ void wxFrame::DoSetClientSize( int width, int height ) #if wxUSE_TOOLBAR /* tool bar */ -/* if (m_frameToolBar) { if (!m_toolBarDetached) @@ -673,7 +670,6 @@ void wxFrame::DoSetClientSize( int width, int height ) else height += wxPLACE_HOLDER; } -*/ #endif DoSetSize( -1, -1, width + m_miniEdge*2, height + m_miniEdge*2 + m_miniTitle, 0 ); diff --git a/src/gtk/radiobox.cpp b/src/gtk/radiobox.cpp index d96aff1a1d..53796108d5 100644 --- a/src/gtk/radiobox.cpp +++ b/src/gtk/radiobox.cpp @@ -277,7 +277,11 @@ bool wxRadioBox::Show( bool show ) { wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobox") ); - wxWindow::Show( show ); + if (!wxControl::Show(show)) + { + // nothing to do + return FALSE; + } if ((m_windowStyle & wxNO_BORDER) != 0) gtk_widget_hide( m_widget ); diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index bc543f7d51..c6b827a1e4 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -1122,6 +1122,10 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton while (node) { wxWindow *child = (wxWindow*)node->Data(); + + node = node->Next(); + if (!child->IsShown()) + continue; if (child->m_isStaticBox) { @@ -1161,7 +1165,6 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton break; } } - node = node->Next(); } } @@ -1247,6 +1250,10 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto { wxWindow *child = (wxWindow*)node->Data(); + node = node->Next(); + if (!child->IsShown()) + continue; + if (child->m_isStaticBox) { // wxStaticBox is transparent in the box itself @@ -1285,7 +1292,6 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto break; } } - node = node->Next(); } } @@ -1364,6 +1370,10 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion { wxWindow *child = (wxWindow*)node->Data(); + node = node->Next(); + if (!child->IsShown()) + continue; + if (child->m_isStaticBox) { // wxStaticBox is transparent in the box itself @@ -1402,7 +1412,6 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion break; } } - node = node->Next(); } } diff --git a/src/gtk1/frame.cpp b/src/gtk1/frame.cpp index 7cbd3ec7d2..3098d050c0 100644 --- a/src/gtk1/frame.cpp +++ b/src/gtk1/frame.cpp @@ -615,7 +615,6 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const #if wxUSE_TOOLBAR /* tool bar */ -/* if (m_frameToolBar) { if (!m_toolBarDetached) @@ -627,7 +626,6 @@ void wxFrame::DoGetClientSize( int *width, int *height ) const else (*height) -= wxPLACE_HOLDER; } -*/ #endif /* mini edge */ @@ -661,7 +659,6 @@ void wxFrame::DoSetClientSize( int width, int height ) #if wxUSE_TOOLBAR /* tool bar */ -/* if (m_frameToolBar) { if (!m_toolBarDetached) @@ -673,7 +670,6 @@ void wxFrame::DoSetClientSize( int width, int height ) else height += wxPLACE_HOLDER; } -*/ #endif DoSetSize( -1, -1, width + m_miniEdge*2, height + m_miniEdge*2 + m_miniTitle, 0 ); diff --git a/src/gtk1/radiobox.cpp b/src/gtk1/radiobox.cpp index d96aff1a1d..53796108d5 100644 --- a/src/gtk1/radiobox.cpp +++ b/src/gtk1/radiobox.cpp @@ -277,7 +277,11 @@ bool wxRadioBox::Show( bool show ) { wxCHECK_MSG( m_widget != NULL, FALSE, wxT("invalid radiobox") ); - wxWindow::Show( show ); + if (!wxControl::Show(show)) + { + // nothing to do + return FALSE; + } if ((m_windowStyle & wxNO_BORDER) != 0) gtk_widget_hide( m_widget ); diff --git a/src/gtk1/window.cpp b/src/gtk1/window.cpp index bc543f7d51..c6b827a1e4 100644 --- a/src/gtk1/window.cpp +++ b/src/gtk1/window.cpp @@ -1122,6 +1122,10 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton while (node) { wxWindow *child = (wxWindow*)node->Data(); + + node = node->Next(); + if (!child->IsShown()) + continue; if (child->m_isStaticBox) { @@ -1161,7 +1165,6 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton break; } } - node = node->Next(); } } @@ -1247,6 +1250,10 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto { wxWindow *child = (wxWindow*)node->Data(); + node = node->Next(); + if (!child->IsShown()) + continue; + if (child->m_isStaticBox) { // wxStaticBox is transparent in the box itself @@ -1285,7 +1292,6 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto break; } } - node = node->Next(); } } @@ -1364,6 +1370,10 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion { wxWindow *child = (wxWindow*)node->Data(); + node = node->Next(); + if (!child->IsShown()) + continue; + if (child->m_isStaticBox) { // wxStaticBox is transparent in the box itself @@ -1402,7 +1412,6 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion break; } } - node = node->Next(); } } diff --git a/src/zlib/zutil.h b/src/zlib/zutil.h index f6a0751046..1415c44225 100644 --- a/src/zlib/zutil.h +++ b/src/zlib/zutil.h @@ -208,12 +208,14 @@ extern const char *z_errmsg[10]; /* indexed by 2-zlib_error */ #endif +#if defined(__VISAGECPP__) typedef uLong (ZEXPORT _Optlink *check_func) OF((uLong check, const Bytef *buf, uInt len)); -#if defined(__VISAGECPP__) voidpf _Optlink zcalloc OF((voidpf opaque, unsigned items, unsigned size)); void _Optlink zcfree OF((voidpf opaque, voidpf ptr)); #else +typedef uLong (ZEXPORT *check_func) OF((uLong check, const Bytef *buf, + uInt len)); voidpf zcalloc OF((voidpf opaque, unsigned items, unsigned size)); void zcfree OF((voidpf opaque, voidpf ptr)); #endif