From: Julian Smart Date: Thu, 24 Sep 2009 13:49:01 +0000 (+0000) Subject: Applied: wxDocument: Adding an asterix to the title X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/250ab35a3ba226a3e1bd7517b18b7b46a37785ad?hp=e558f9533e5e628efef8027b2434c00f3d4ed8cf Applied: wxDocument: Adding an asterix to the title git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/docview.h b/include/wx/docview.h index b8bb1f31c9..c9109ce65b 100644 --- a/include/wx/docview.h +++ b/include/wx/docview.h @@ -133,7 +133,7 @@ public: virtual bool Draw(wxDC&); virtual bool IsModified() const { return m_documentModified; } - virtual void Modify(bool mod) { m_documentModified = mod; } + virtual void Modify(bool mod); virtual bool AddView(wxView *view); virtual bool RemoveView(wxView *view); diff --git a/src/common/docview.cpp b/src/common/docview.cpp index 6658e51f0e..b2ae02bdfe 100644 --- a/src/common/docview.cpp +++ b/src/common/docview.cpp @@ -233,6 +233,18 @@ wxView *wxDocument::GetFirstView() const return static_cast(m_documentViews.GetFirst()->GetData()); } +void wxDocument::Modify(bool mod) +{ + if (mod != m_documentModified) + { + m_documentModified = mod; + + // Allow views to append asterix to the title + wxView* view = GetFirstView(); + if (view) view->OnChangeFilename(); + } +} + wxDocManager *wxDocument::GetDocumentManager() const { return m_documentTemplate ? m_documentTemplate->GetDocumentManager() : NULL; @@ -713,7 +725,12 @@ void wxView::OnChangeFilename() wxDocument *doc = GetDocument(); if (!doc) return; - win->SetLabel(doc->GetUserReadableName()); + wxString label = doc->GetUserReadableName(); + if (doc->IsModified()) + { + label += "*"; + } + win->SetLabel(label); } void wxView::SetDocument(wxDocument *doc)