]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/config.h
make it explicitly clear that the len parameter of SetData() is in bytes
[wxWidgets.git] / interface / wx / config.h
index 1f7db64161dc991e8bb58ccbb3c8e0612fe78a2c..5afaeeff33072d733b56574b395ad25d89a12615 100644 (file)
@@ -8,7 +8,6 @@
 
 /**
     @class wxConfigBase
 
 /**
     @class wxConfigBase
-    @wxheader{config.h}
 
     wxConfigBase defines the basic interface of all config classes. It can not
     be used by itself (it is an abstract base class) and you will always use
 
     wxConfigBase defines the basic interface of all config classes. It can not
     be used by itself (it is an abstract base class) and you will always use
 
 
     @library{wxbase}
 
 
     @library{wxbase}
-    @category{misc}
+    @category{cfg}
 */
 class wxConfigBase : public wxObject
 {
 */
 class wxConfigBase : public wxObject
 {
@@ -336,7 +335,7 @@ public:
     /**
         Empty but ensures that dtor of all derived classes is virtual.
     */
     /**
         Empty but ensures that dtor of all derived classes is virtual.
     */
-    ~wxConfigBase();
+    virtual ~wxConfigBase();
 
 
     /**
 
 
     /**
@@ -349,14 +348,14 @@ public:
     /**
         Retrieve the current path (always as absolute path).
     */
     /**
         Retrieve the current path (always as absolute path).
     */
-    const wxString GetPath() const;
+    virtual const wxString& GetPath() const = 0;
 
     /**
         Set current path: if the first character is '/', it is the absolute
         path, otherwise it is a relative path. '..' is supported. If @a strPath
         doesn't exist it is created.
     */
 
     /**
         Set current path: if the first character is '/', it is the absolute
         path, otherwise it is a relative path. '..' is supported. If @a strPath
         doesn't exist it is created.
     */
-    void SetPath(const wxString& strPath);
+    virtual void SetPath(const wxString& strPath) = 0;
 
     //@}
 
 
     //@}
 
@@ -376,7 +375,7 @@ public:
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
-    bool GetFirstEntry(wxString& str, long& index) const;
+    virtual bool GetFirstEntry(wxString& str, long& index) const = 0;
 
     /**
         Gets the first group.
 
     /**
         Gets the first group.
@@ -386,7 +385,7 @@ public:
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
-    bool GetFirstGroup(wxString& str, long& index) const;
+    virtual bool GetFirstGroup(wxString& str, long& index) const = 0;
 
     /**
         Gets the next entry.
 
     /**
         Gets the next entry.
@@ -396,7 +395,7 @@ public:
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
-    bool GetNextEntry(wxString& str, long& index) const;
+    virtual bool GetNextEntry(wxString& str, long& index) const = 0;
 
     /**
         Gets the next group.
 
     /**
         Gets the next group.
@@ -406,18 +405,18 @@ public:
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
         continue flag, the value string, and the index for the next call.
         @endWxPythonOnly
     */
-    bool GetNextGroup(wxString& str, long& index) const;
+    virtual bool GetNextGroup(wxString& str, long& index) const = 0;
 
     /**
         Get number of entries in the current group.
     */
 
     /**
         Get number of entries in the current group.
     */
-    uint GetNumberOfEntries(bool bRecursive = false) const;
+    virtual size_t GetNumberOfEntries(bool bRecursive = false) const = 0;
 
     /**
         Get number of entries/subgroups in the current group, with or without
         its subgroups.
     */
 
     /**
         Get number of entries/subgroups in the current group, with or without
         its subgroups.
     */
-    uint GetNumberOfGroups(bool bRecursive = false) const;
+    virtual size_t GetNumberOfGroups(bool bRecursive = false) const = 0;
 
     //@}
 
 
     //@}
 
@@ -439,7 +438,7 @@ public:
     /**
         @return @true if either a group or an entry with a given name exists.
     */
     /**
         @return @true if either a group or an entry with a given name exists.
     */
-    bool Exists(wxString& strName) const;
+    bool Exists(const wxString& strName) const;
 
     /**
         Returns the type of the given entry or @e Unknown if the entry doesn't
 
     /**
         Returns the type of the given entry or @e Unknown if the entry doesn't
@@ -448,17 +447,17 @@ public:
         about type mismatch otherwise: e.g., an attempt to read a string value
         from an integer key with wxRegConfig will fail.
     */
         about type mismatch otherwise: e.g., an attempt to read a string value
         from an integer key with wxRegConfig will fail.
     */
-    wxConfigBase::EntryType GetEntryType(const wxString& name) const;
+    virtual wxConfigBase::EntryType GetEntryType(const wxString& name) const;
 
     /**
         @return @true if the entry by this name exists.
     */
 
     /**
         @return @true if the entry by this name exists.
     */
-    bool HasEntry(wxString& strName) const;
+    virtual bool HasEntry(const wxString& strName) const = 0;
 
     /**
         @return @true if the group by this name exists.
     */
 
     /**
         @return @true if the group by this name exists.
     */
-    bool HasGroup(const wxString& strName) const;
+    virtual bool HasGroup(const wxString& strName) const = 0;
 
     //@}
 
 
     //@}
 
@@ -492,7 +491,7 @@ public:
         Permanently writes all changes (otherwise, they're only written from
         object's destructor).
     */
         Permanently writes all changes (otherwise, they're only written from
         object's destructor).
     */
-    bool Flush(bool bCurrentOnly = false);
+    virtual bool Flush(bool bCurrentOnly = false) = 0;
 
     /**
         Read a string from the key, returning @true if the value was read. If
 
     /**
         Read a string from the key, returning @true if the value was read. If
@@ -505,76 +504,76 @@ public:
 
         @return @true if value was really read, @false if the default was used.
     */
 
         @return @true if value was really read, @false if the default was used.
     */
-    const bool Read(const wxString& key, wxString* str,
-                      const wxString& defaultVal) const;
+    bool Read(const wxString& key, wxString* str,
+              const wxString& defaultVal) const;
     /**
         Another version of Read(), returning the string value directly.
     */
     const wxString Read(const wxString& key,
     /**
         Another version of Read(), returning the string value directly.
     */
     const wxString Read(const wxString& key,
-                         const wxString& defaultVal) const;
+                        const wxString& defaultVal) const;
     /**
         Reads a long value, returning @true if the value was found. If the
         value was not found, @a l is not changed.
     */
     /**
         Reads a long value, returning @true if the value was found. If the
         value was not found, @a l is not changed.
     */
-    const bool Read(const wxString& key, long* l) const;
+    bool Read(const wxString& key, long* l) const;
     /**
         Reads a long value, returning @true if the value was found. If the
         value was not found, @a defaultVal is used instead.
     */
     /**
         Reads a long value, returning @true if the value was found. If the
         value was not found, @a defaultVal is used instead.
     */
-    const bool Read(const wxString& key, long* l,
-                    long defaultVal) const;
+    bool Read(const wxString& key, long* l,
+              long defaultVal) const;
     /**
         Reads a double value, returning @true if the value was found. If the
         value was not found, @a d is not changed.
     */
     /**
         Reads a double value, returning @true if the value was found. If the
         value was not found, @a d is not changed.
     */
-    const bool Read(const wxString& key, double* d) const;
+    bool Read(const wxString& key, double* d) const;
     /**
         Reads a double value, returning @true if the value was found. If the
         value was not found, @a defaultVal is used instead.
     */
     /**
         Reads a double value, returning @true if the value was found. If the
         value was not found, @a defaultVal is used instead.
     */
-    const bool Read(const wxString& key, double* d,
+    bool Read(const wxString& key, double* d,
                      double defaultVal) const;
     /**
         Reads a bool value, returning @true if the value was found. If the
         value was not found, @a b is not changed.
     */
                      double defaultVal) const;
     /**
         Reads a bool value, returning @true if the value was found. If the
         value was not found, @a b is not changed.
     */
-    const bool Read(const wxString& key, bool* b) const;
+    bool Read(const wxString& key, bool* b) const;
     /**
         Reads a bool value, returning @true if the value was found. If the
         value was not found, @a defaultVal is used instead.
     */
     /**
         Reads a bool value, returning @true if the value was found. If the
         value was not found, @a defaultVal is used instead.
     */
-    const bool Read(const wxString& key, bool* d,
-                     bool defaultVal) const;
+    bool Read(const wxString& key, bool* d,
+              bool defaultVal) const;
     /**
         Reads a binary block, returning @true if the value was found. If the
         value was not found, @a buf is not changed.
     */
     /**
         Reads a binary block, returning @true if the value was found. If the
         value was not found, @a buf is not changed.
     */
-    const bool Read(const wxString& key, wxMemoryBuffer* buf) const;
+    bool Read(const wxString& key, wxMemoryBuffer* buf) const;
     /**
         Reads a value of type T, for which function wxFromString() is defined,
         returning @true if the value was found. If the value was not found,
         @a value is not changed.
     */
     /**
         Reads a value of type T, for which function wxFromString() is defined,
         returning @true if the value was found. If the value was not found,
         @a value is not changed.
     */
-    const bool Read(const wxString& key, T* value) const;
+    bool Read(const wxString& key, T* value) const;
     /**
         Reads a value of type T, for which function wxFromString() is defined,
         returning @true if the value was found. If the value was not found,
         @a defaultVal is used instead.
     */
     /**
         Reads a value of type T, for which function wxFromString() is defined,
         returning @true if the value was found. If the value was not found,
         @a defaultVal is used instead.
     */
-    const bool Read(const wxString& key, T* value,
-                     const T& defaultVal) const;
+    bool Read(const wxString& key, T* value,
+              const T& defaultVal) const;
 
     /**
         Reads a bool value from the key and returns it. @a defaultVal is
         returned if the key is not found.
     */
 
     /**
         Reads a bool value from the key and returns it. @a defaultVal is
         returned if the key is not found.
     */
-    long ReadBool(const wxString& key, bool defaultVal) const;
+    bool ReadBool(const wxString& key, bool defaultVal) const;
 
     /**
         Reads a double value from the key and returns it. @a defaultVal is
         returned if the key is not found.
     */
 
     /**
         Reads a double value from the key and returns it. @a defaultVal is
         returned if the key is not found.
     */
-    long ReadDouble(const wxString& key, double defaultVal) const;
+    double ReadDouble(const wxString& key, double defaultVal) const;
 
     /**
         Reads a long value from the key and returns it. @a defaultVal is
 
     /**
         Reads a long value from the key and returns it. @a defaultVal is
@@ -640,7 +639,8 @@ public:
         @return @false if @a oldName doesn't exist or if @a newName already
                 exists.
     */
         @return @false if @a oldName doesn't exist or if @a newName already
                 exists.
     */
-    bool RenameEntry(const wxString& oldName, const wxString& newName);
+    virtual bool RenameEntry(const wxString& oldName,
+                             const wxString& newName) = 0;
 
     /**
         Renames a subgroup of the current group. The subgroup names (both the
 
     /**
         Renames a subgroup of the current group. The subgroup names (both the
@@ -650,7 +650,8 @@ public:
         @return @false if @a oldName doesn't exist or if @a newName already
                 exists.
     */
         @return @false if @a oldName doesn't exist or if @a newName already
                 exists.
     */
-    bool RenameGroup(const wxString& oldName, const wxString& newName);
+    virtual bool RenameGroup(const wxString& oldName,
+                             const wxString& newName) = 0;
 
     //@}
 
 
     //@}
 
@@ -668,14 +669,14 @@ public:
         Delete the whole underlying object (disk file, registry key, ...).
         Primarly for use by uninstallation routine.
     */
         Delete the whole underlying object (disk file, registry key, ...).
         Primarly for use by uninstallation routine.
     */
-    bool DeleteAll();
+    virtual bool DeleteAll() = 0;
 
     /**
         Deletes the specified entry and the group it belongs to if it was the
         last key in it and the second parameter is @true.
     */
 
     /**
         Deletes the specified entry and the group it belongs to if it was the
         last key in it and the second parameter is @true.
     */
-    bool DeleteEntry(const wxString& key,
-                     bool bDeleteGroupIfEmpty = true);
+    virtual bool DeleteEntry(const wxString& key,
+                             bool bDeleteGroupIfEmpty = true) = 0;
 
     /**
         Delete the group (with all subgroups). If the current path is under the
 
     /**
         Delete the group (with all subgroups). If the current path is under the
@@ -683,7 +684,7 @@ public:
         component. E.g. if the current path is @c "/A/B/C/D" and the group @c C
         is deleted, the path becomes @c "/A/B".
     */
         component. E.g. if the current path is @c "/A/B/C/D" and the group @c C
         is deleted, the path becomes @c "/A/B".
     */
-    bool DeleteGroup(const wxString& key);
+    virtual bool DeleteGroup(const wxString& key) = 0;
 
     //@}
 
 
     //@}