]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/docview.h
XPM updates
[wxWidgets.git] / include / wx / docview.h
index b2c0b7dedf550d5b7a512942bfaa7b469d2ddaf8..1672e1c02899318eefee91c9e8bc1e26eed4249b 100644 (file)
@@ -333,6 +333,13 @@ public:
     // 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);
@@ -341,9 +348,9 @@ public:
     virtual wxDocTemplate *SelectDocumentPath(wxDocTemplate **templates,
             int noTemplates, wxString& path, long flags, bool save = FALSE);
     virtual wxDocTemplate *SelectDocumentType(wxDocTemplate **templates,
-            int noTemplates);
+            int noTemplates, bool sort = FALSE);
     virtual wxDocTemplate *SelectViewType(wxDocTemplate **templates,
-            int noTemplates);
+            int noTemplates, bool sort = FALSE);
     virtual wxDocTemplate *FindTemplateForPath(const wxString& path);
 
     void AssociateTemplate(wxDocTemplate *temp);
@@ -366,7 +373,8 @@ public:
     virtual void ActivateView(wxView *view, bool activate = TRUE, bool deleting = FALSE);
     virtual wxView *GetCurrentView() const;
 
-    virtual wxList& GetDocuments() const { return (wxList&) m_docs; }
+    wxList& GetDocuments() { return m_docs; }
+    wxList& GetTemplates() { return m_templates; }
 
     // Make a default document name
     virtual bool MakeDefaultName(wxString& buf);
@@ -558,11 +566,20 @@ public:
     int GetMaxCommands() const { return m_maxNoCommands; }
     virtual void ClearCommands();
 
+    // By default, the accelerators are "\tCtrl+Z" and "\tCtrl+Y"
+    const wxString& GetUndoAccelerator() const { return m_undoAccelerator; }
+    const wxString& GetRedoAccelerator() const { return m_redoAccelerator; }
+
+    void SetUndoAccelerator(const wxString& accel) { m_undoAccelerator = accel; }
+    void SetRedoAccelerator(const wxString& accel) { m_redoAccelerator = accel; }
+
 protected:
     int           m_maxNoCommands;
     wxList        m_commands;
     wxNode*       m_currentCommand;
     wxMenu*       m_commandEditMenu;
+    wxString      m_undoAccelerator;
+    wxString      m_redoAccelerator;
 };
 
 // ----------------------------------------------------------------------------
@@ -619,6 +636,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__