-// The default implementation for the close window event.
-void wxFrame::OnCloseWindow(wxCloseEvent& event)
-{
- Destroy();
-}
-
-// Destroy the window (delayed, if a managed window)
-bool wxFrame::Destroy()
-{
- if (!wxPendingDelete.Member(this))
- wxPendingDelete.Append(this);
- return TRUE;
-}
-
-// Default menu selection behaviour - display a help string
-void wxFrame::OnMenuHighlight(wxMenuEvent& event)
-{
- if (GetStatusBar())
- {
- wxString help;
- int menuId = event.GetMenuId();
- if ( menuId != -1 )
- {
- wxMenuBar *menuBar = GetMenuBar();
- if (menuBar && menuBar->FindItem(menuId))
- {
- help = menuBar->GetHelpString(menuId);
- }
- }
-
- // set status text even if the string is empty - this will at
- // least remove the string from the item which was previously
- // selected
- SetStatusText(help);
- }
-}
-
-wxMenuBar *wxFrame::GetMenuBar() const
-{
- return m_frameMenuBar;
-}
-
-bool wxFrame::ProcessCommand(int id)
-{
- wxMenuBar *bar = GetMenuBar() ;
- if ( !bar )
- return FALSE;
-
- wxMenuItem *item = bar->FindItemForId(id);
-
- if ( item && item->IsCheckable() )
- {
- bar->Check(id, !bar->IsChecked(id)) ;
- }
-
- wxCommandEvent commandEvent(wxEVT_COMMAND_MENU_SELECTED, id);
- commandEvent.SetInt( id );
- commandEvent.SetEventObject( this );
-
- return GetEventHandler()->ProcessEvent(commandEvent);
-}
+// ----------------------------------------------------------------------------
+// wxFrame size management: we exclude the areas taken by menu/status/toolbars
+// from the client area, so the client area is what's really available for the
+// frame contents
+// ----------------------------------------------------------------------------