]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/fileconf.h
synchronize GTK2 minimum version in docs
[wxWidgets.git] / interface / wx / fileconf.h
index cdef167a0070de34d65c35eb9513f00b75749d44..14ea2df11f765a6dbe89f98061d969acef4b5628 100644 (file)
@@ -3,12 +3,11 @@
 // Purpose:     interface of wxFileConfig
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
 // Purpose:     interface of wxFileConfig
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
     @class wxFileConfig
 /////////////////////////////////////////////////////////////////////////////
 
 /**
     @class wxFileConfig
-    @wxheader{fileconf.h}
 
     wxFileConfig implements wxConfigBase interface for
     storing and retrieving configuration information using plain text files. The
 
     wxFileConfig implements wxConfigBase interface for
     storing and retrieving configuration information using plain text files. The
     Windows.
 
     @library{wxbase}
     Windows.
 
     @library{wxbase}
-    @category{misc}
+    @category{cfg}
 
     @see wxFileConfig::Save
 */
 class wxFileConfig : public wxConfigBase
 {
 public:
 
     @see wxFileConfig::Save
 */
 class wxFileConfig : public wxConfigBase
 {
 public:
+    /**
+        Constructor allowing to choose the file names to use.
+
+        If @a localFilename and/or @a globalFilename are explicitly specified,
+        they are used as the names of the user and system-wide configuration
+        files (the latter is only read by the program while the former is read
+        from and written to). Otherwise the behaviour depends on @a style
+        parameter. If it includes ::wxCONFIG_USE_LOCAL_FILE, then the local
+        file name is constructed from the information in @a appName and @a
+        vendorName arguments in a system-dependent way. If
+        ::wxCONFIG_USE_GLOBAL_FILE is not specified at all (and @a
+        globalFilename is empty) then the system-wide file is not used at all.
+        Otherwise its name and path are also constructed in the way appropriate
+        for the current platform from the application and vendor names.
+     */
+    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,
+               const wxMBConv& conv = wxConvAuto());
+
     /**
         Read the config data from the specified stream instead of the associated file,
         as usual.
     /**
         Read the config data from the specified stream instead of the associated file,
         as usual.
@@ -58,6 +79,9 @@ public:
     */
     static wxFileName GetLocalFile(const wxString& basename, int style = 0);
 
     */
     static wxFileName GetLocalFile(const wxString& basename, int style = 0);
 
+    static wxString GetGlobalFileName(const wxString& szFile);
+    static wxString GetLocalFileName(const wxString& szFile, int style = 0);
+
     /**
         Saves all config data to the given stream, returns @true if data was saved
         successfully or @false on error.
     /**
         Saves all config data to the given stream, returns @true if data was saved
         successfully or @false on error.
@@ -70,7 +94,7 @@ public:
 
         @see wxConfigBase::Flush
     */
 
         @see wxConfigBase::Flush
     */
-    bool Save(wxOutputStream& os, const wxMBConv& conv = wxConvAuto());
+    virtual bool Save(wxOutputStream& os, const wxMBConv& conv = wxConvAuto());
 
     /**
         Allows to set the mode to be used for the config file creation. For example, to
 
     /**
         Allows to set the mode to be used for the config file creation. For example, to
@@ -82,5 +106,29 @@ public:
         @see wxCHANGE_UMASK()
     */
     void SetUmask(int mode);
         @see wxCHANGE_UMASK()
     */
     void SetUmask(int mode);
+    
+  // implement inherited pure virtual functions
+  virtual void SetPath(const wxString& strPath);
+  virtual const wxString& GetPath() const;
+
+  virtual bool GetFirstGroup(wxString& str, long& lIndex) const;
+  virtual bool GetNextGroup (wxString& str, long& lIndex) const;
+  virtual bool GetFirstEntry(wxString& str, long& lIndex) const;
+  virtual bool GetNextEntry (wxString& str, long& lIndex) const;
+
+  virtual size_t GetNumberOfEntries(bool bRecursive = false) const;
+  virtual size_t GetNumberOfGroups(bool bRecursive = false) const;
+
+  virtual bool HasGroup(const wxString& strName) const;
+  virtual bool HasEntry(const wxString& strName) const;
+
+  virtual bool Flush(bool bCurrentOnly = false);
+
+  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 = true);
+  virtual bool DeleteGroup(const wxString& szKey);
+  virtual bool DeleteAll();
 };
 
 };