]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/fileconf.h
Get rid of inline C compatibility methods
[wxWidgets.git] / include / wx / fileconf.h
index 2e997b65d658821d3469a0192289f1784789b3bf..ea5eab449352c3506bd035c4b9b02170eeb3f352 100644 (file)
@@ -7,13 +7,13 @@
 // RCS-ID:      $Id$
 // Copyright:   (c) 1997 Karsten Ballüder   &  Vadim Zeitlin
 //                       Ballueder@usa.net     <zeitlin@dptmaths.ens-cachan.fr>
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
 #ifndef   _FILECONF_H
 #define   _FILECONF_H
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma interface "fileconf.h"
 #endif
 
@@ -23,6 +23,7 @@
 
 #include "wx/textfile.h"
 #include "wx/string.h"
+#include "wx/confbase.h"
 
 // ----------------------------------------------------------------------------
 // wxFileConfig
   (it's on by default, the current status can be retrieved with
    IsExpandingEnvVars function).
 */
-class WXDLLEXPORT wxFileConfigGroup;
-class WXDLLEXPORT wxFileConfigEntry;
-class WXDLLEXPORT wxFileConfigLineList;
+class WXDLLIMPEXP_BASE wxFileConfigGroup;
+class WXDLLIMPEXP_BASE wxFileConfigEntry;
+class WXDLLIMPEXP_BASE wxFileConfigLineList;
+class WXDLLIMPEXP_BASE wxInputStream;
 
-class WXDLLEXPORT wxFileConfig : public wxConfigBase
+class WXDLLIMPEXP_BASE wxFileConfig : public wxConfigBase
 {
 public:
   // construct the "standard" full name for global (system-wide) and
@@ -115,15 +117,17 @@ public:
   // ctor & dtor
     // New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or
     // wxCONFIG_USE_GLOBAL_FILE to say which files should be used.
-  wxFileConfig(const wxString& appName,
-               const wxString& vendorName = wxT(""),
-               const wxString& localFilename = wxT(""),
-               const wxString& globalFilename = wxT(""),
-               long style = wxCONFIG_USE_LOCAL_FILE);
+  wxFileConfig(const wxString& appName = wxEmptyString,
+               const wxString& vendorName = wxEmptyString,
+               const wxString& localFilename = wxEmptyString,
+               const wxString& globalFilename = wxEmptyString,
+               long style = wxCONFIG_USE_LOCAL_FILE | wxCONFIG_USE_GLOBAL_FILE,
+               wxMBConv& conv = wxConvUTF8);
 
 #if wxUSE_STREAMS
     // ctor that takes an input stream.
-  wxFileConfig(wxInputStream &inStream);
+  wxFileConfig(wxInputStream &inStream,
+               wxMBConv& conv = wxConvUTF8);
 #endif // wxUSE_STREAMS
 
     // dtor will save unsaved data
@@ -157,7 +161,7 @@ public:
   virtual bool RenameEntry(const wxString& oldName, const wxString& newName);
   virtual bool RenameGroup(const wxString& oldName, const wxString& newName);
 
-  virtual bool DeleteEntry(const wxString& key, bool bGroupIfEmptyAlso);
+  virtual bool DeleteEntry(const wxString& key, bool bGroupIfEmptyAlso = TRUE);
   virtual bool DeleteGroup(const wxString& szKey);
   virtual bool DeleteAll();
 
@@ -206,9 +210,13 @@ private:
   wxFileConfigGroup *m_pRootGroup,      // the top (unnamed) group
                     *m_pCurrentGroup;   // the current group
 
+  wxMBConv   &m_conv;
+        
 #ifdef __UNIX__
   int m_umask;                    // the umask to use for file creation
 #endif // __UNIX__
+
+    DECLARE_NO_COPY_CLASS(wxFileConfig)
 };
 
 #endif