]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/docview.h
FloodFill correction, wxQuantize correction
[wxWidgets.git] / include / wx / docview.h
index 39854b9847d52270ba4e8a9bf76b2617ffb3a623..84bbc05b8643ede6c4484f1e26294fee024b00ac 100644 (file)
@@ -316,9 +316,30 @@ public:
     void OnUndo(wxCommandEvent& event);
     void OnRedo(wxCommandEvent& event);
 
+    // Handlers for UI update commands
+    void OnUpdateFileOpen(wxUpdateUIEvent& event);
+    void OnUpdateFileClose(wxUpdateUIEvent& event);
+    void OnUpdateFileRevert(wxUpdateUIEvent& event);
+    void OnUpdateFileNew(wxUpdateUIEvent& event);
+    void OnUpdateFileSave(wxUpdateUIEvent& event);
+    void OnUpdateFileSaveAs(wxUpdateUIEvent& event);
+    void OnUpdateUndo(wxUpdateUIEvent& event);
+    void OnUpdateRedo(wxUpdateUIEvent& event);
+
+    void OnUpdatePrint(wxUpdateUIEvent& event);
+    void OnUpdatePrintSetup(wxUpdateUIEvent& event);
+    void OnUpdatePreview(wxUpdateUIEvent& event);
+
     // Extend event processing to search the view's event table
     virtual bool ProcessEvent(wxEvent& event);
 
+    // called when file format detection didn't work, can be overridden to do
+    // something in this case
+    // This is of course completely stupid, because if the file dialog is
+    // cancelled you get an assert. Brilliant. -- JACS
+//    virtual void OnOpenFileFailure() { wxFAIL_MSG(_T("file format mismatch")); }
+    virtual void OnOpenFileFailure() { }
+
     virtual wxDocument *CreateDocument(const wxString& path, long flags = 0);
     virtual wxView *CreateView(wxDocument *doc, long flags = 0);
     virtual void DeleteTemplate(wxDocTemplate *temp, long flags = 0);
@@ -357,6 +378,9 @@ public:
     // Make a default document name
     virtual bool MakeDefaultName(wxString& buf);
 
+    // Make a frame title (override this to do something different)
+    virtual wxString MakeFrameTitle(wxDocument* doc);
+
     virtual wxFileHistory *OnCreateFileHistory();
     virtual wxFileHistory *GetFileHistory() const { return m_fileHistory; }
 
@@ -378,6 +402,9 @@ public:
     inline wxString GetLastDirectory() const { return m_lastDirectory; }
     inline void SetLastDirectory(const wxString& dir) { m_lastDirectory = dir; }
 
+    // Get the current document manager
+    static wxDocManager* GetDocumentManager() { return sm_docManager; }
+
 protected:
     long              m_flags;
     int               m_defaultDocumentNameCounter;
@@ -387,6 +414,7 @@ protected:
     wxView*           m_currentView;
     wxFileHistory*    m_fileHistory;
     wxString          m_lastDirectory;
+    static wxDocManager* sm_docManager;
 
     DECLARE_EVENT_TABLE()
 };
@@ -598,6 +626,11 @@ protected:
 // converts from/to a stream to/from a temporary file.
 bool WXDLLEXPORT wxTransferFileToStream(const wxString& filename, ostream& stream);
 bool WXDLLEXPORT wxTransferStreamToFile(istream& stream, const wxString& filename);
+#else
+// For compatibility with existing file formats:
+// converts from/to a stream to/from a temporary file.
+bool WXDLLEXPORT wxTransferFileToStream(const wxString& filename, wxOutputStream& stream);
+bool WXDLLEXPORT wxTransferStreamToFile(wxInputStream& stream, const wxString& filename);
 #endif
 
 #endif // _WX_DOCH__