class WXDLLEXPORT wxFileHistory;
class WXDLLEXPORT wxConfigBase;
-#include "wx/ioswrap.h"
+#if wxUSE_STD_IOSTREAM
+ #include "wx/ioswrap.h"
+#else
+ #include "wx/stream.h"
+#endif
// Document manager flags
enum
virtual bool SaveAs();
virtual bool Revert();
+#if wxUSE_STD_IOSTREAM
virtual ostream& SaveObject(ostream& stream);
virtual istream& LoadObject(istream& stream);
+#else
+ virtual wxOutputStream& SaveObject(wxOutputStream& stream);
+ virtual wxInputStream& LoadObject(wxInputStream& stream);
+#endif
+
+#if wxUSE_SERIAL
+ // need this to keep from hiding the virtual from wxObject
+ virtual void LoadObject(wxObjectInputStream& stream) { wxObject::LoadObject(stream); };
+#endif
// Called by wxWindows
virtual bool OnSaveDocument(const wxString& filename);
// File history management
virtual void AddFileToHistory(const wxString& file);
+ virtual void RemoveFileFromHistory(int i);
virtual int GetNoHistoryFiles() const;
virtual wxString GetHistoryFile(int i) const;
virtual void FileHistoryUseMenu(wxMenu *menu);
virtual void FileHistoryAddFilesToMenu();
virtual void FileHistoryAddFilesToMenu(wxMenu* menu);
+ inline wxString GetLastDirectory() const { return m_lastDirectory; }
+ inline void SetLastDirectory(const wxString& dir) { m_lastDirectory = dir; }
+
protected:
long m_flags;
int m_defaultDocumentNameCounter;
wxList m_templates;
wxView* m_currentView;
wxFileHistory* m_fileHistory;
+ wxString m_lastDirectory;
DECLARE_EVENT_TABLE()
};
// Operations
virtual void AddFileToHistory(const wxString& file);
+ virtual void RemoveFileFromHistory(int i);
virtual int GetMaxFiles() const { return m_fileMaxFiles; }
virtual void UseMenu(wxMenu *menu);
int m_fileMaxFiles;
};
+#if wxUSE_STD_IOSTREAM
// For compatibility with existing file formats:
// 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);
+#endif
#endif // _WX_DOCH__