Add wxDocument::Activate() method.
Make activating the first (and, in the vast majority of cases, the only) view of the document easier. Closes #15120. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -624,6 +624,7 @@ All (GUI):
|
||||
- Add wxAUI_TB_PLAIN_BACKGROUND wxAuiToolBar style (Allann Jones).
|
||||
- Make wxGenericDataViewCtrl::SetFont() really work (Laurent Poujoulat).
|
||||
- Remove wxLogWindow::OnFrameCreate(), it was never called anyhow.
|
||||
- Added wxDocument::Activate() (troelsk).
|
||||
|
||||
wxGTK:
|
||||
|
||||
|
@@ -86,6 +86,9 @@ public:
|
||||
bool GetDocumentSaved() const { return m_savedYet; }
|
||||
void SetDocumentSaved(bool saved = true) { m_savedYet = saved; }
|
||||
|
||||
// activate the first view of the document if any
|
||||
void Activate();
|
||||
|
||||
// return true if the document hasn't been modified since the last time it
|
||||
// was saved (implying that it returns false if it was never saved, even if
|
||||
// the document is not modified)
|
||||
@@ -550,10 +553,6 @@ protected:
|
||||
// view and returns it then
|
||||
wxView *GetActiveView() const;
|
||||
|
||||
// activate the first view of the given document if any
|
||||
void ActivateDocument(wxDocument *doc);
|
||||
|
||||
|
||||
int m_defaultDocumentNameCounter;
|
||||
int m_maxDocsOpen;
|
||||
wxList m_docs;
|
||||
|
@@ -1240,6 +1240,15 @@ public:
|
||||
*/
|
||||
bool AlreadySaved() const;
|
||||
|
||||
/**
|
||||
Activate the first view of the document if any.
|
||||
|
||||
@see GetFirstView()
|
||||
|
||||
@since 2.9.5
|
||||
*/
|
||||
void Activate() const;
|
||||
|
||||
/**
|
||||
Closes the document, by calling OnSaveModified() and then (if this
|
||||
returned @true) OnCloseDocument(). This does not normally delete the
|
||||
|
@@ -1407,9 +1407,9 @@ wxDocTemplateVector GetVisibleTemplates(const wxList& allTemplates)
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
void wxDocManager::ActivateDocument(wxDocument *doc)
|
||||
void wxDocument::Activate()
|
||||
{
|
||||
wxView * const view = doc->GetFirstView();
|
||||
wxView * const view = GetFirstView();
|
||||
if ( !view )
|
||||
return;
|
||||
|
||||
@@ -1472,7 +1472,7 @@ wxDocument *wxDocManager::CreateDocument(const wxString& pathOrig, long flags)
|
||||
if ( fn == doc->GetFilename() )
|
||||
{
|
||||
// file already open, just activate it and return
|
||||
ActivateDocument(doc);
|
||||
doc->Activate();
|
||||
return doc;
|
||||
}
|
||||
}
|
||||
@@ -1523,7 +1523,7 @@ wxDocument *wxDocManager::CreateDocument(const wxString& pathOrig, long flags)
|
||||
// at least under Mac (where views are top level windows) it seems to be
|
||||
// necessary to manually activate the new document to bring it to the
|
||||
// forefront -- and it shouldn't hurt doing this under the other platforms
|
||||
ActivateDocument(docNew);
|
||||
docNew->Activate();
|
||||
|
||||
return docNew;
|
||||
}
|
||||
|
Reference in New Issue
Block a user