X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e835ec0100b227c36a737df0ad03a249708642e7..223862cbd39bf964c146c90cb055c5409c07d07d:/include/wx/fileconf.h diff --git a/include/wx/fileconf.h b/include/wx/fileconf.h index 140b707157..c3dfb5d772 100644 --- a/include/wx/fileconf.h +++ b/include/wx/fileconf.h @@ -5,7 +5,7 @@ // Modified by: // Created: 07.04.98 (adapted from appconf.cpp) // RCS-ID: $Id$ -// Copyright: (c) 1997 Karsten Ballüder & Vadim Zeitlin +// Copyright: (c) 1997 Karsten Ballueder & Vadim Zeitlin // Ballueder@usa.net // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -20,6 +20,7 @@ #include "wx/textfile.h" #include "wx/string.h" #include "wx/confbase.h" +#include "wx/filename.h" // ---------------------------------------------------------------------------- // wxFileConfig @@ -89,13 +90,13 @@ (it's on by default, the current status can be retrieved with IsExpandingEnvVars function). */ -class WXDLLIMPEXP_BASE wxFileConfigGroup; -class WXDLLIMPEXP_BASE wxFileConfigEntry; -class WXDLLIMPEXP_BASE wxFileConfigLineList; +class WXDLLIMPEXP_FWD_BASE wxFileConfigGroup; +class WXDLLIMPEXP_FWD_BASE wxFileConfigEntry; +class WXDLLIMPEXP_FWD_BASE wxFileConfigLineList; #if wxUSE_STREAMS -class WXDLLIMPEXP_BASE wxInputStream; -class WXDLLIMPEXP_BASE wxOutputStream; +class WXDLLIMPEXP_FWD_BASE wxInputStream; +class WXDLLIMPEXP_FWD_BASE wxOutputStream; #endif // wxUSE_STREAMS class WXDLLIMPEXP_BASE wxFileConfig : public wxConfigBase @@ -111,8 +112,18 @@ public: // // where file is the basename of szFile, ext is its extension // or .conf (Unix) or .ini (Win) if it has none - static wxString GetGlobalFileName(const wxChar *szFile); - static wxString GetLocalFileName(const wxChar *szFile); + static wxFileName GetGlobalFile(const wxString& szFile); + static wxFileName GetLocalFile(const wxString& szFile, int style = 0); + + static wxString GetGlobalFileName(const wxString& szFile) + { + return GetGlobalFile(szFile).GetFullPath(); + } + + static wxString GetLocalFileName(const wxString& szFile, int style = 0) + { + return GetLocalFile(szFile, style).GetFullPath(); + } // ctor & dtor // New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or @@ -142,7 +153,7 @@ public: // implement inherited pure virtual functions virtual void SetPath(const wxString& strPath); - virtual const wxString& GetPath() const { return m_strPath; } + virtual const wxString& GetPath() const; virtual bool GetFirstGroup(wxString& str, long& lIndex) const; virtual bool GetNextGroup (wxString& str, long& lIndex) const; @@ -183,14 +194,20 @@ public: protected: virtual bool DoReadString(const wxString& key, wxString *pStr) const; virtual bool DoReadLong(const wxString& key, long *pl) const; +#if wxUSE_BASE64 + virtual bool DoReadBinary(const wxString& key, wxMemoryBuffer* buf) const; +#endif // wxUSE_BASE64 virtual bool DoWriteString(const wxString& key, const wxString& szValue); virtual bool DoWriteLong(const wxString& key, long lValue); +#if wxUSE_BASE64 + virtual bool DoWriteBinary(const wxString& key, const wxMemoryBuffer& buf); +#endif // wxUSE_BASE64 private: // GetXXXFileName helpers: return ('/' terminated) directory names static wxString GetGlobalDir(); - static wxString GetLocalDir(); + static wxString GetLocalDir(int style = 0); // common part of all ctors (assumes that m_str{Local|Global}File are already // initialized @@ -220,8 +237,8 @@ private: wxFileConfigLineList *m_linesHead, // head of the linked list *m_linesTail; // tail - wxString m_strLocalFile, // local file name passed to ctor - m_strGlobalFile; // global + wxFileName m_fnLocalFile, // local file name passed to ctor + m_fnGlobalFile; // global wxString m_strPath; // current path (not '/' terminated) wxFileConfigGroup *m_pRootGroup, // the top (unnamed) group @@ -235,7 +252,8 @@ private: bool m_isDirty; // if true, we have unsaved changes - DECLARE_NO_COPY_CLASS(wxFileConfig) + wxDECLARE_NO_COPY_CLASS(wxFileConfig); + DECLARE_ABSTRACT_CLASS(wxFileConfig) }; #endif