#include "wx/string.h"
#include "wx/frame.h"
#include "wx/filehistory.h"
+#include "wx/vector.h"
#if wxUSE_PRINTING_ARCHITECTURE
#include "wx/print.h"
#define wxMAX_FILE_HISTORY 9
+typedef wxVector<wxDocument*> wxDocVector;
+typedef wxVector<wxView*> wxViewVector;
+typedef wxVector<wxDocTemplate*> wxDocTemplateVector;
+
class WXDLLIMPEXP_CORE wxDocument : public wxEvtHandler
{
public:
virtual bool AddView(wxView *view);
virtual bool RemoveView(wxView *view);
+
+#ifndef __VISUALC6__
+ wxViewVector GetViewsVector() const;
+#endif // !__VISUALC6__
+
wxList& GetViews() { return m_documentViews; }
const wxList& GetViews() const { return m_documentViews; }
+
wxView *GetFirstView() const;
virtual void UpdateAllViews(wxView *sender = NULL, wxObject *hint = NULL);
virtual void ActivateView(wxView *view, bool activate = true);
virtual wxView *GetCurrentView() const { return m_currentView; }
+#ifndef __VISUALC6__
+ wxDocVector GetDocumentsVector() const;
+ wxDocTemplateVector GetTemplatesVector() const;
+#endif // !__VISUALC6__
+
wxList& GetDocuments() { return m_docs; }
wxList& GetTemplates() { return m_templates; }
protected:
+ // Called when a file selected from the MRU list doesn't exist any more.
+ // The default behaviour is to remove the file from the MRU and notify the
+ // user about it but this method can be overridden to customize it.
+ virtual void OnMRUFileNotExist(unsigned n, const wxString& filename);
+
// Open the MRU file with the given index in our associated file history.
void DoOpenMRUFile(unsigned n);
#if wxUSE_PRINTING_ARCHITECTURE
// these flags are not used anywhere by wxWidgets and kept only for an unlikely
// case of existing user code using them for its own purposes
-#ifdef WXWIN_COMPATIBILITY_2_8
+#if WXWIN_COMPATIBILITY_2_8
enum
{
wxDOC_SDI = 1,
};
#endif // WXWIN_COMPATIBILITY_2_8
+#ifndef __VISUALC6__
+inline wxViewVector wxDocument::GetViewsVector() const
+{
+ return m_documentViews.AsVector<wxView*>();
+}
+
+inline wxDocVector wxDocManager::GetDocumentsVector() const
+{
+ return m_docs.AsVector<wxDocument*>();
+}
+
+inline wxDocTemplateVector wxDocManager::GetTemplatesVector() const
+{
+ return m_templates.AsVector<wxDocTemplate*>();
+}
+#endif // !__VISUALC6__
+
#endif // wxUSE_DOC_VIEW_ARCHITECTURE
#endif // _WX_DOCH__