X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1f0c8f31f407ecfce909060464c0ea655221cdab..e47859daebd15efcecb969e612295c868e944d79:/src/osx/carbon/frame.cpp diff --git a/src/osx/carbon/frame.cpp b/src/osx/carbon/frame.cpp index fb6b170ae8..5c2ada2de0 100644 --- a/src/osx/carbon/frame.cpp +++ b/src/osx/carbon/frame.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: src/mac/carbon/frame.cpp +// Name: src/osx/carbon/frame.cpp // Purpose: wxFrame // Author: Stefan Csomor // Modified by: @@ -24,14 +24,11 @@ #include "wx/menuitem.h" #endif // WX_PRECOMP -#include "wx/osx/uma.h" +#include "wx/osx/private.h" BEGIN_EVENT_TABLE(wxFrame, wxFrameBase) EVT_ACTIVATE(wxFrame::OnActivate) - // EVT_MENU_HIGHLIGHT_ALL(wxFrame::OnMenuHighlight) EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged) -// EVT_IDLE(wxFrame::OnIdle) -// EVT_CLOSE(wxFrame::OnCloseWindow) END_EVENT_TABLE() IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow) @@ -86,7 +83,7 @@ wxPoint wxFrame::GetClientAreaOrigin() const } else { -#if !wxMAC_USE_NATIVE_TOOLBAR +#if !wxOSX_USE_NATIVE_TOOLBAR pt.y += h; #endif } @@ -101,6 +98,7 @@ bool wxFrame::Enable(bool enable) if ( !wxWindow::Enable(enable) ) return false; +#if wxUSE_MENUS if ( m_frameMenuBar && m_frameMenuBar == wxMenuBar::MacGetInstalledMenuBar() ) { int iMaxMenu = m_frameMenuBar->GetMenuCount(); @@ -109,7 +107,7 @@ bool wxFrame::Enable(bool enable) m_frameMenuBar->EnableTop( i , enable ) ; } } - +#endif return true; } @@ -198,6 +196,7 @@ void wxFrame::OnActivate(wxActivateEvent& event) wxSetFocusToChild(parent, &m_winLastFocused); +#if wxUSE_MENUS if (m_frameMenuBar != NULL) { m_frameMenuBar->MacInstallMenuBar(); @@ -212,9 +211,21 @@ void wxFrame::OnActivate(wxActivateEvent& event) tlf->GetMenuBar()->MacInstallMenuBar(); } } +#endif } } +void wxFrame::HandleResized( double timestampsec ) +{ + // according to the other ports we handle this within the OS level + // resize event, not within a wxSizeEvent + + PositionBars(); + + wxNonOwnedWindow::HandleResized( timestampsec ); +} + +#if wxUSE_MENUS void wxFrame::DetachMenuBar() { if ( m_frameMenuBar ) @@ -225,7 +236,11 @@ void wxFrame::DetachMenuBar() void wxFrame::AttachMenuBar( wxMenuBar *menuBar ) { - wxFrame* tlf = wxDynamicCast( wxFindWinFromMacWindow( FrontNonFloatingWindow() ) , wxFrame ); +#if wxOSX_USE_CARBON + wxFrame* tlf = wxDynamicCast( wxNonOwnedWindow::GetFromWXWindow( (WXWindow) FrontNonFloatingWindow() ) , wxFrame ); +#else + wxFrame* tlf = (wxFrame*) wxTheApp->GetTopWindow(); +#endif bool makeCurrent = false; // if this is already the current menubar or we are the frontmost window @@ -244,6 +259,7 @@ void wxFrame::AttachMenuBar( wxMenuBar *menuBar ) m_frameMenuBar->MacInstallMenuBar(); } } +#endif void wxFrame::DoGetClientSize(int *x, int *y) const { @@ -268,7 +284,7 @@ void wxFrame::DoGetClientSize(int *x, int *y) const } else { -#if !wxMAC_USE_NATIVE_TOOLBAR +#if !wxOSX_USE_NATIVE_TOOLBAR if ( y ) *y -= h; #endif @@ -318,14 +334,14 @@ void wxFrame::SetToolBar(wxToolBar *toolbar) if ( m_frameToolBar == toolbar ) return ; -#if wxMAC_USE_NATIVE_TOOLBAR +#if wxOSX_USE_NATIVE_TOOLBAR if ( m_frameToolBar ) m_frameToolBar->MacInstallNativeToolbar( false ) ; #endif m_frameToolBar = toolbar ; -#if wxMAC_USE_NATIVE_TOOLBAR +#if wxOSX_USE_NATIVE_TOOLBAR if ( toolbar ) toolbar->MacInstallNativeToolbar( true ) ; #endif @@ -380,7 +396,7 @@ void wxFrame::PositionToolBar() } else { -#if !wxMAC_USE_NATIVE_TOOLBAR +#if !wxOSX_USE_NATIVE_TOOLBAR // Use the 'real' position GetToolBar()->SetSize(tx , ty , cw , th, wxSIZE_NO_ADJUSTMENTS ); #endif