/////////////////////////////////////////////////////////////////////////////
-// Name: frame.cpp
+// Name: src/mac/carbon/frame.cpp
// Purpose: wxFrame
// Author: Stefan Csomor
// Modified by:
#include "wx/wxprec.h"
#include "wx/frame.h"
-#include "wx/statusbr.h"
-#include "wx/toolbar.h"
-#include "wx/menuitem.h"
-#include "wx/menu.h"
-#include "wx/dcclient.h"
-#include "wx/dialog.h"
-#include "wx/settings.h"
-#include "wx/app.h"
+
+#ifndef WX_PRECOMP
+ #include "wx/app.h"
+ #include "wx/dcclient.h"
+ #include "wx/menu.h"
+ #include "wx/dialog.h"
+ #include "wx/settings.h"
+ #include "wx/toolbar.h"
+ #include "wx/statusbr.h"
+ #include "wx/menuitem.h"
+#endif // WX_PRECOMP
#include "wx/mac/uma.h"
extern wxWindowList wxModelessWindows;
-//extern wxList wxPendingDelete;
BEGIN_EVENT_TABLE(wxFrame, wxFrameBase)
EVT_ACTIVATE(wxFrame::OnActivate)
void wxFrame::Init()
{
- m_frameMenuBar = NULL;
- m_frameStatusBar = NULL;
m_winLastFocused = NULL;
-
-#if wxUSE_TOOLBAR
- m_frameToolBar = NULL;
-#endif
-
-#if wxUSE_TOOLTIPS
- // NB: is this used anywhere?
- m_hwndToolTip = NULL;
-#endif
-
- m_iconized = false;
}
bool wxFrame::Create(wxWindow *parent,
int cw, ch;
GetSize( &cw , &ch ) ;
+
+ int statusX = 0 ;
+ int statusY = 0 ;
+#if wxUSE_STATUSBAR
if (GetStatusBar() && GetStatusBar()->IsShown())
{
- int statusX, statusY;
-
GetStatusBar()->GetClientSize(&statusX, &statusY);
ch -= statusY;
}
+#endif
+#if wxUSE_TOOLBAR
if (GetToolBar())
{
int tx, ty, tw, th;
// have the original client size.
GetToolBar()->SetSize(tx , ty , tw, ch , wxSIZE_NO_ADJUSTMENTS );
}
+ else if (GetToolBar()->GetWindowStyleFlag() & wxTB_BOTTOM)
+ {
+ //FIXME: this positions the tool bar almost correctly, but still it doesn't work right yet,
+ //as 1) the space for the 'old' top toolbar is still taken up, and 2) the toolbar
+ //doesn't extend it's width to the width of the frame.
+ tx = 0;
+ ty = ch - (th + statusY);
+ GetToolBar()->SetSize(tx, ty, cw, th, wxSIZE_NO_ADJUSTMENTS );
+ }
else
{
#if !wxMAC_USE_NATIVE_TOOLBAR
#endif
}
}
+#endif
}
void wxFrame::PositionBars()
}
#endif
-