From 75c9da25626693f445e362f62439416524ba179f Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 14 Aug 2001 12:57:32 +0000 Subject: [PATCH] unsuccessful attempts to fix wxMenuBar positioning under wxGTK git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/gtk/frame.cpp | 20 ++++++++++---------- src/gtk1/frame.cpp | 20 ++++++++++---------- src/univ/framuniv.cpp | 13 +++++++++++-- 3 files changed, 31 insertions(+), 22 deletions(-) diff --git a/src/gtk/frame.cpp b/src/gtk/frame.cpp index fb364d258e..b1987a0b8d 100644 --- a/src/gtk/frame.cpp +++ b/src/gtk/frame.cpp @@ -749,7 +749,7 @@ void wxFrameGTK::DoGetClientSize( int *width, int *height ) const wxWindow::DoGetClientSize( width, height ); if (height) { -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE /* menu bar */ if (m_frameMenuBar) { @@ -758,7 +758,7 @@ void wxFrameGTK::DoGetClientSize( int *width, int *height ) const else (*height) -= wxPLACE_HOLDER; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_STATUSBAR /* status bar */ @@ -802,7 +802,7 @@ void wxFrameGTK::DoSetClientSize( int width, int height ) { wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE /* menu bar */ if (m_frameMenuBar) { @@ -811,7 +811,7 @@ void wxFrameGTK::DoSetClientSize( int width, int height ) else height += wxPLACE_HOLDER; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_STATUSBAR /* status bar */ @@ -900,7 +900,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), * this hurts in the eye, but I don't want to call SetSize() * because I don't want to call any non-native functions here. */ -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE if (m_frameMenuBar) { int xx = m_miniEdge; @@ -917,7 +917,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), xx, yy, ww, hh ); client_area_y_offset += hh; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_TOOLBAR if ((m_frameToolBar) && m_frameToolBar->IsShown() && @@ -925,7 +925,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), { int xx = m_miniEdge; int yy = m_miniEdge + m_miniTitle; -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE if (m_frameMenuBar) { if (!m_menuBarDetached) @@ -933,7 +933,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), else yy += wxPLACE_HOLDER; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE m_frameToolBar->m_x = xx; m_frameToolBar->m_y = yy; @@ -1035,9 +1035,9 @@ void wxFrameGTK::OnInternalIdle() return; } -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE if (m_frameMenuBar) m_frameMenuBar->OnInternalIdle(); -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_TOOLBAR if (m_frameToolBar) m_frameToolBar->OnInternalIdle(); #endif diff --git a/src/gtk1/frame.cpp b/src/gtk1/frame.cpp index fb364d258e..b1987a0b8d 100644 --- a/src/gtk1/frame.cpp +++ b/src/gtk1/frame.cpp @@ -749,7 +749,7 @@ void wxFrameGTK::DoGetClientSize( int *width, int *height ) const wxWindow::DoGetClientSize( width, height ); if (height) { -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE /* menu bar */ if (m_frameMenuBar) { @@ -758,7 +758,7 @@ void wxFrameGTK::DoGetClientSize( int *width, int *height ) const else (*height) -= wxPLACE_HOLDER; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_STATUSBAR /* status bar */ @@ -802,7 +802,7 @@ void wxFrameGTK::DoSetClientSize( int width, int height ) { wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE /* menu bar */ if (m_frameMenuBar) { @@ -811,7 +811,7 @@ void wxFrameGTK::DoSetClientSize( int width, int height ) else height += wxPLACE_HOLDER; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_STATUSBAR /* status bar */ @@ -900,7 +900,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), * this hurts in the eye, but I don't want to call SetSize() * because I don't want to call any non-native functions here. */ -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE if (m_frameMenuBar) { int xx = m_miniEdge; @@ -917,7 +917,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), xx, yy, ww, hh ); client_area_y_offset += hh; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_TOOLBAR if ((m_frameToolBar) && m_frameToolBar->IsShown() && @@ -925,7 +925,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), { int xx = m_miniEdge; int yy = m_miniEdge + m_miniTitle; -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE if (m_frameMenuBar) { if (!m_menuBarDetached) @@ -933,7 +933,7 @@ void wxFrameGTK::GtkOnSize( int WXUNUSED(x), int WXUNUSED(y), else yy += wxPLACE_HOLDER; } -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE m_frameToolBar->m_x = xx; m_frameToolBar->m_y = yy; @@ -1035,9 +1035,9 @@ void wxFrameGTK::OnInternalIdle() return; } -#if wxUSE_MENUS +#if wxUSE_MENUS_NATIVE if (m_frameMenuBar) m_frameMenuBar->OnInternalIdle(); -#endif // wxUSE_MENUS +#endif // wxUSE_MENUS_NATIVE #if wxUSE_TOOLBAR if (m_frameToolBar) m_frameToolBar->OnInternalIdle(); #endif diff --git a/src/univ/framuniv.cpp b/src/univ/framuniv.cpp index 951ab8630a..6347d6252e 100644 --- a/src/univ/framuniv.cpp +++ b/src/univ/framuniv.cpp @@ -84,10 +84,19 @@ void wxFrame::PositionMenuBar() { // the menubar is positioned above the client size, hence the negative // y coord - m_frameMenuBar->SetSize(0, -m_frameMenuBar->GetSize().y, - GetClientSize().x, -1); + wxCoord heightMbar = m_frameMenuBar->GetSize().y; + m_frameMenuBar->SetSize(0, + +// FIXME: why doesn't this work as expected in wxGTK?? +#ifdef __WXGTK__ + 0, +#else + -heightMbar, +#endif + GetClientSize().x, heightMbar); } } + #endif // wxUSE_MENUS wxPoint wxFrame::GetClientAreaOrigin() const -- 2.47.2