override DoOpen/SaveDocument() instead of OnOpen/SaveDocument(), just as in docmdi sample after r55141/r55142/r55143 changes (#9892)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2008-08-29 11:38:12 +00:00
parent b053bf9ef4
commit e85eaef3fa
2 changed files with 11 additions and 23 deletions

View File

@@ -321,42 +321,30 @@ bool DrawingCommand::Undo(void)
IMPLEMENT_DYNAMIC_CLASS(TextEditDocument, wxDocument) IMPLEMENT_DYNAMIC_CLASS(TextEditDocument, wxDocument)
// Since text windows have their own method for saving to/loading from files, // Since text windows have their own method for saving to/loading from files,
// we override OnSave/OpenDocument instead of Save/LoadObject // we override DoSave/OpenDocument instead of Save/LoadObject
bool TextEditDocument::OnSaveDocument(const wxString& filename) bool TextEditDocument::DoSaveDocument(const wxString& filename)
{ {
TextEditView* view = GetFirstView(); return GetFirstView()->m_textsw->SaveFile(filename);
if (!view->m_textsw->SaveFile(filename))
return false;
Modify(false);
return true;
} }
bool TextEditDocument::OnOpenDocument(const wxString& filename) bool TextEditDocument::DoOpenDocument(const wxString& filename)
{ {
TextEditView *view = GetFirstView(); return GetFirstView()->m_textsw->LoadFile(filename);
if (!view->m_textsw->LoadFile(filename))
return false;
SetFilename(filename, true);
Modify(false);
UpdateAllViews();
return true;
} }
bool TextEditDocument::IsModified(void) const bool TextEditDocument::IsModified(void) const
{ {
TextEditView* view = GetFirstView(); TextEditView *view = GetFirstView();
return (wxDocument::IsModified() || (view && view->m_textsw->IsModified())); return wxDocument::IsModified() || (view && view->m_textsw->IsModified());
} }
void TextEditDocument::Modify(bool mod) void TextEditDocument::Modify(bool mod)
{ {
TextEditView* view = GetFirstView(); TextEditView *view = GetFirstView();
wxDocument::Modify(mod); wxDocument::Modify(mod);
if ((!mod) && view && view->m_textsw) if (!mod && view && view->m_textsw)
{ {
view->m_textsw->DiscardEdits(); view->m_textsw->DiscardEdits();
} }

View File

@@ -94,8 +94,8 @@ public:
*/ */
TextEditView* GetFirstView() const; TextEditView* GetFirstView() const;
virtual bool OnSaveDocument(const wxString& filename); virtual bool DoSaveDocument(const wxString& filename);
virtual bool OnOpenDocument(const wxString& filename); virtual bool DoOpenDocument(const wxString& filename);
virtual bool IsModified() const; virtual bool IsModified() const;
virtual void Modify(bool mod); virtual void Modify(bool mod);