X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1248b41f9f71110347659db8c54c75786eba23c6..9f7e7edb78aa19d6aed53b113aa953c24d6335b1:/src/motif/mdi.cpp?ds=sidebyside diff --git a/src/motif/mdi.cpp b/src/motif/mdi.cpp index 22a20fb5e8..998bc5d107 100644 --- a/src/motif/mdi.cpp +++ b/src/motif/mdi.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: mdi.cpp +// Name: src/motif/mdi.cpp // Purpose: MDI classes // Author: Julian Smart // Modified by: @@ -9,22 +9,16 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "mdi.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#ifdef __VMS -#define XtDisplay XTDISPLAY -#define XtWindow XTWINDOW -#endif - #include "wx/mdi.h" -#include "wx/menu.h" -#include "wx/settings.h" -#include "wx/icon.h" + +#ifndef WX_PRECOMP + #include "wx/menu.h" + #include "wx/icon.h" + #include "wx/settings.h" +#endif #ifdef __VMS__ #pragma message disable nosimpint @@ -106,10 +100,10 @@ bool wxMDIParentFrame::Create(wxWindow *parent, int w, h; GetClientSize(& w, & h); m_clientWindow->SetSize(0, 0, w, h); - return TRUE; + return true; } else - return FALSE; + return false; } wxMDIParentFrame::~wxMDIParentFrame() @@ -232,14 +226,14 @@ bool wxMDIParentFrame::ProcessEvent(wxEvent& event) // Stops the same event being processed repeatedly static wxEventType inEvent = wxEVT_NULL; if (inEvent == event.GetEventType()) - return FALSE; + return false; inEvent = event.GetEventType(); - bool res = FALSE; + bool res = false; if (m_activeChild && event.IsKindOf(CLASSINFO(wxCommandEvent))) { - res = m_activeChild->GetEventHandler()->ProcessEvent(event); + res = m_activeChild->HandleWindowEvent(event); } if (!res) @@ -277,7 +271,7 @@ void wxMDIParentFrame::Cascade() // TODO } -void wxMDIParentFrame::Tile() +void wxMDIParentFrame::Tile(wxOrientation WXUNUSED(orient)) { // TODO } @@ -303,7 +297,7 @@ void wxMDIParentFrame::OnMenuHighlight(wxMenuEvent& event) if (GetStatusBar()) { if (event.GetMenuId() == -1) - SetStatusText(""); + SetStatusText(wxEmptyString); else { wxMenuBar *menuBar = (wxMenuBar*) NULL; @@ -314,7 +308,7 @@ void wxMDIParentFrame::OnMenuHighlight(wxMenuEvent& event) if (menuBar) { wxString helpString(menuBar->GetHelpString(event.GetMenuId())); - if (helpString != "") + if (!helpString.empty()) SetStatusText(helpString); } } @@ -339,10 +333,6 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent, SetName(name); SetWindowStyleFlag(style); - m_backgroundColour = wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE); - m_foregroundColour = *wxBLACK; - m_font = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT); - if ( id > -1 ) m_windowId = id; else @@ -350,11 +340,12 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent, wxMDIClientWindow* clientWindow = parent->GetClientWindow(); - wxASSERT_MSG( (clientWindow != (wxWindow*) NULL), "Missing MDI client window."); + wxCHECK_MSG( clientWindow, false, "Missing MDI client window." ); - if (clientWindow) clientWindow->AddChild(this); + clientWindow->AddChild(this); SetMDIParentFrame(parent); + PreCreation(); int width = size.x; int height = size.y; @@ -367,9 +358,9 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent, wxMDIChildFrame* oldActiveChild = parent->GetActiveChild(); if (oldActiveChild) { - wxActivateEvent event(wxEVT_ACTIVATE, FALSE, oldActiveChild->GetId()); + wxActivateEvent event(wxEVT_ACTIVATE, false, oldActiveChild->GetId()); event.SetEventObject( oldActiveChild ); - oldActiveChild->GetEventHandler()->ProcessEvent(event); + oldActiveChild->HandleWindowEvent(event); } // This is the currently active child @@ -391,32 +382,31 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent, XmNresizePolicy, XmRESIZE_NONE, NULL); - XtAddEventHandler((Widget) m_mainWidget, ExposureMask,FALSE, + XtAddEventHandler((Widget) m_mainWidget, ExposureMask,False, wxUniversalRepaintProc, (XtPointer) this); + PostCreation(); AttachWidget (parent, m_mainWidget, (WXWidget) NULL, pos.x, pos.y, size.x, size.y); - ChangeBackgroundColour(); - XtManageChild((Widget) m_mainWidget); SetTitle(title); - clientWindow->AddPage(this, title, TRUE); + clientWindow->AddPage(this, title, true); clientWindow->Refresh(); // Positions the toolbar and status bar -- but we don't have any. // PreResize(); wxModelessWindows.Append(this); - return TRUE; + return true; } wxMDIChildFrame::~wxMDIChildFrame() { if (m_mainWidget) - XtRemoveEventHandler((Widget) m_mainWidget, ExposureMask,FALSE, + XtRemoveEventHandler((Widget) m_mainWidget, ExposureMask,False, wxUniversalRepaintProc, (XtPointer) this); if (GetMDIParentFrame()) @@ -463,14 +453,14 @@ void wxMDIChildFrame::OnRaise() if (oldActiveChild) { - wxActivateEvent event(wxEVT_ACTIVATE, FALSE, oldActiveChild->GetId()); + wxActivateEvent event(wxEVT_ACTIVATE, false, oldActiveChild->GetId()); event.SetEventObject( oldActiveChild ); - oldActiveChild->GetEventHandler()->ProcessEvent(event); + oldActiveChild->HandleWindowEvent(event); } - wxActivateEvent event(wxEVT_ACTIVATE, TRUE, this->GetId()); + wxActivateEvent event(wxEVT_ACTIVATE, true, this->GetId()); event.SetEventObject( this ); - this->GetEventHandler()->ProcessEvent(event); + this->HandleWindowEvent(event); } void wxMDIChildFrame::OnLower() @@ -480,9 +470,9 @@ void wxMDIChildFrame::OnLower() if (oldActiveChild == this) { - wxActivateEvent event(wxEVT_ACTIVATE, FALSE, oldActiveChild->GetId()); + wxActivateEvent event(wxEVT_ACTIVATE, false, oldActiveChild->GetId()); event.SetEventObject( oldActiveChild ); - oldActiveChild->GetEventHandler()->ProcessEvent(event); + oldActiveChild->HandleWindowEvent(event); } // TODO: unfortunately we don't now know which is the top-most child, // so make the active child NULL. @@ -491,7 +481,7 @@ void wxMDIChildFrame::OnLower() #endif // Set the client size (i.e. leave the calculation of borders etc. -// to wxWindows) +// to wxWidgets) void wxMDIChildFrame::DoSetClientSize(int width, int height) { wxWindow::DoSetClientSize(width, height); @@ -578,14 +568,14 @@ void wxMDIChildFrame::Iconize(bool WXUNUSED(iconize)) bool wxMDIChildFrame::IsIconized() const { - return FALSE; + return false; } // Is it maximized? Always maximized under Motif, using the // tabbed MDI implementation. bool wxMDIChildFrame::IsMaximized(void) const { - return TRUE; + return true; } void wxMDIChildFrame::Restore() @@ -618,7 +608,7 @@ void wxMDIChildFrame::Lower(void) wxWindow::Raise(); } -void wxMDIChildFrame::SetSizeHints(int WXUNUSED(minW), int WXUNUSED(minH), int WXUNUSED(maxW), int WXUNUSED(maxH), int WXUNUSED(incW), int WXUNUSED(incH)) +void wxMDIChildFrame::DoSetSizeHints(int WXUNUSED(minW), int WXUNUSED(minH), int WXUNUSED(maxW), int WXUNUSED(maxH), int WXUNUSED(incW), int WXUNUSED(incH)) { } @@ -641,18 +631,13 @@ bool wxMDIClientWindow::CreateClient(wxMDIParentFrame *parent, long style) { SetWindowStyleFlag(style); - // m_windowParent = parent; - // m_backgroundColour = wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE); - bool success = wxNotebook::Create(parent, wxID_NOTEBOOK_CLIENT_AREA, wxPoint(0, 0), wxSize(100, 100), 0); if (success) { - wxFont font(10, wxSWISS, wxNORMAL, wxNORMAL); - SetFont(font); - return TRUE; + return true; } else - return FALSE; + return false; } int wxMDIClientWindow::FindPage(const wxNotebookPage* page) @@ -705,9 +690,9 @@ void wxMDIClientWindow::OnPageChanged(wxNotebookEvent& event) wxMDIChildFrame* oldChild = (wxMDIChildFrame*) GetPage(event.GetOldSelection()); if (oldChild) { - wxActivateEvent event(wxEVT_ACTIVATE, FALSE, oldChild->GetId()); + wxActivateEvent event(wxEVT_ACTIVATE, false, oldChild->GetId()); event.SetEventObject( oldChild ); - oldChild->GetEventHandler()->ProcessEvent(event); + oldChild->HandleWindowEvent(event); } } if (event.GetSelection() != -1) @@ -715,9 +700,9 @@ void wxMDIClientWindow::OnPageChanged(wxNotebookEvent& event) wxMDIChildFrame* activeChild = (wxMDIChildFrame*) GetPage(event.GetSelection()); if (activeChild) { - wxActivateEvent event(wxEVT_ACTIVATE, TRUE, activeChild->GetId()); + wxActivateEvent event(wxEVT_ACTIVATE, true, activeChild->GetId()); event.SetEventObject( activeChild ); - activeChild->GetEventHandler()->ProcessEvent(event); + activeChild->HandleWindowEvent(event); if (activeChild->GetMDIParentFrame()) {