X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cd60273b3d988d2674faf953f7f4372b3b6664a9..5337ab1bb87eb9691d84e24471489808072ac9fd:/src/common/docmdi.cpp?ds=inline diff --git a/src/common/docmdi.cpp b/src/common/docmdi.cpp index 6d3d3bb2da..c8911d606a 100644 --- a/src/common/docmdi.cpp +++ b/src/common/docmdi.cpp @@ -68,12 +68,12 @@ void wxDocMDIParentFrame::OnMRUFile(wxCommandEvent& event) (void)m_docManager->CreateDocument(f, wxDOC_SILENT); } -bool wxDocMDIParentFrame::TryValidator(wxEvent& event) +bool wxDocMDIParentFrame::TryBefore(wxEvent& event) { if ( m_docManager && m_docManager->ProcessEventHere(event) ) return true; - return wxMDIParentFrame::TryValidator(event); + return wxMDIParentFrame::TryBefore(event); } void wxDocMDIParentFrame::OnCloseWindow(wxCloseEvent& event) @@ -87,97 +87,7 @@ void wxDocMDIParentFrame::OnCloseWindow(wxCloseEvent& event) } -/* - * Default document child frame for MDI children - */ - IMPLEMENT_CLASS(wxDocMDIChildFrame, wxMDIChildFrame) -BEGIN_EVENT_TABLE(wxDocMDIChildFrame, wxMDIChildFrame) - EVT_ACTIVATE(wxDocMDIChildFrame::OnActivate) - EVT_CLOSE(wxDocMDIChildFrame::OnCloseWindow) -END_EVENT_TABLE() - -void wxDocMDIChildFrame::Init() -{ - m_childDocument = NULL; - m_childView = NULL; -} - -wxDocMDIChildFrame::wxDocMDIChildFrame() -{ - Init(); -} - -wxDocMDIChildFrame::wxDocMDIChildFrame(wxDocument *doc, wxView *view, wxMDIParentFrame *frame, wxWindowID id, - const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name) -{ - Init(); - Create(doc, view, frame, id, title, pos, size, style, name); -} - -bool wxDocMDIChildFrame::Create(wxDocument *doc, wxView *view, wxMDIParentFrame *frame, wxWindowID id, - const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name) -{ - m_childDocument = doc; - m_childView = view; - if (wxMDIChildFrame::Create(frame, id, title, pos, size, style, name)) - { - if (view) - view->SetFrame(this); - return true; - } - - return false; -} - -wxDocMDIChildFrame::~wxDocMDIChildFrame(void) -{ - m_childView = NULL; -} - -bool wxDocMDIChildFrame::TryValidator(wxEvent& event) -{ - if ( m_childView && m_childView->ProcessEventHere(event) ) - return true; - - return wxMDIChildFrame::TryValidator(event); -} - -void wxDocMDIChildFrame::OnActivate(wxActivateEvent& event) -{ - wxMDIChildFrame::OnActivate(event); - - if (event.GetActive() && m_childView) - m_childView->Activate(event.GetActive()); -} - -void wxDocMDIChildFrame::OnCloseWindow(wxCloseEvent& event) -{ - // Close view but don't delete the frame while doing so! - // ...since it will be deleted by wxWidgets if we return true. - if (m_childView) - { - bool ans = event.CanVeto() - ? m_childView->Close(false) // false means don't delete associated window - : true; // Must delete. - - if (ans) - { - m_childView->Activate(false); - delete m_childView; - m_childView = NULL; - m_childDocument = NULL; - - this->Destroy(); - } - else - event.Veto(); - } - else - event.Veto(); -} - -#endif - // wxUSE_DOC_VIEW_ARCHITECTURE +#endif // wxUSE_DOC_VIEW_ARCHITECTURE