]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/confbase.h
added wxUSE_REGKEY option
[wxWidgets.git] / include / wx / confbase.h
index 2255d73f29962feb461d3a012be05899792350b2..39d06305b844675df9a0a2e3e0f0eb25ac8d5588 100644 (file)
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
-#ifndef   _WX_CONFBASE_H_
-#define   _WX_CONFBASE_H_
+#ifndef _WX_CONFBASE_H_
+#define _WX_CONFBASE_H_
 
 #include "wx/defs.h"
 #include "wx/string.h"
+#include "wx/object.h"
+#include "wx/base64.h"
 
-class WXDLLIMPEXP_BASE wxArrayString;
+class WXDLLIMPEXP_FWD_BASE wxArrayString;
 
 // ----------------------------------------------------------------------------
 // constants
@@ -176,6 +178,13 @@ public:
   bool Read(const wxString& key, bool* val) const;
   bool Read(const wxString& key, bool* val, bool defVal) const;
 
+#if wxUSE_BASE64
+    // read a binary data block
+  bool Read(const wxString& key, wxMemoryBuffer* data) const
+    { return DoReadBinary(key, data); }
+   // no default version since it does not make sense for binary data
+#endif // wxUSE_BASE64
+
   // convenience functions returning directly the value (we don't have them for
   // int/double/bool as there would be ambiguities with the long one then)
   wxString Read(const wxString& key,
@@ -201,6 +210,11 @@ public:
   bool Write(const wxString& key, bool value)
     { return DoWriteBool(key, value); }
 
+#if wxUSE_BASE64
+  bool Write(const wxString& key, const wxMemoryBuffer& buf)
+    { return DoWriteBinary(key, buf); }
+#endif // wxUSE_BASE64
+
   // we have to provide a separate version for C strings as otherwise they
   // would be converted to bool and not to wxString as expected!
   bool Write(const wxString& key, const char *value)
@@ -272,12 +286,18 @@ protected:
   virtual bool DoReadInt(const wxString& key, int *pi) const;
   virtual bool DoReadDouble(const wxString& key, double* val) const;
   virtual bool DoReadBool(const wxString& key, bool* val) const;
+#if wxUSE_BASE64
+  virtual bool DoReadBinary(const wxString& key, wxMemoryBuffer* buf) const = 0;
+#endif // wxUSE_BASE64
 
   virtual bool DoWriteString(const wxString& key, const wxString& value) = 0;
   virtual bool DoWriteLong(const wxString& key, long value) = 0;
   virtual bool DoWriteInt(const wxString& key, int value);
   virtual bool DoWriteDouble(const wxString& key, double value);
   virtual bool DoWriteBool(const wxString& key, bool value);
+#if wxUSE_BASE64
+  virtual bool DoWriteBinary(const wxString& key, const wxMemoryBuffer& buf) = 0;
+#endif // wxUSE_BASE64
 
 private:
   // are we doing automatic environment variable expansion?
@@ -357,9 +377,7 @@ WXDLLIMPEXP_BASE wxString wxExpandEnvVars(const wxString &sz);
 /*
   Split path into parts removing '..' in progress
  */
-WXDLLIMPEXP_BASE void wxSplitPath(wxArrayString& aParts, const wxChar *sz);
+WXDLLIMPEXP_BASE void wxSplitPath(wxArrayString& aParts, const wxString& path);
 
-
-#endif
-  // _WX_CONFIG_H_
+#endif // _WX_CONFBASE_H_