X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3922ecc98e00774e7c4d3b2ab122d3bdcc246393..66c2bf7b1d9326fb650acfaae22ec50528cfbf7c:/include/wx/msw/ole/dataform.h?ds=sidebyside

diff --git a/include/wx/msw/ole/dataform.h b/include/wx/msw/ole/dataform.h
index f071c37461..8ad64542d2 100644
--- a/include/wx/msw/ole/dataform.h
+++ b/include/wx/msw/ole/dataform.h
@@ -1,10 +1,9 @@
 ///////////////////////////////////////////////////////////////////////////////
-// Name:        msw/ole/dataform.h
+// Name:        wx/msw/ole/dataform.h
 // Purpose:     declaration of the wxDataFormat class
 // Author:      Vadim Zeitlin
 // Modified by:
 // Created:     19.10.99 (extracted from msw/ole/dataobj.h)
-// RCS-ID:      $Id$
 // Copyright:   (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
@@ -16,14 +15,21 @@
 // wxDataFormat identifies the single format of data
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxDataFormat
+class WXDLLIMPEXP_CORE wxDataFormat
 {
 public:
-    // the clipboard formats under Win32 are WORDs
+    // the clipboard formats under Win32 are WORD's
     typedef unsigned short NativeFormat;
 
     wxDataFormat(NativeFormat format = wxDF_INVALID) { m_format = format; }
-    wxDataFormat(const wxChar *format) { SetId(format); }
+
+    // we need constructors from all string types as implicit conversions to
+    // wxString don't apply when we already rely on implicit conversion of a,
+    // for example, "char *" string to wxDataFormat, and existing code does it
+    wxDataFormat(const wxString& format) { SetId(format); }
+    wxDataFormat(const char *format) { SetId(format); }
+    wxDataFormat(const wchar_t *format) { SetId(format); }
+    wxDataFormat(const wxCStrData& format) { SetId(format); }
 
     wxDataFormat& operator=(NativeFormat format)
         { m_format = format; return *this; }
@@ -55,10 +61,10 @@ public:
     // string ids are used for custom types - this SetId() must be used for
     // application-specific formats
     wxString GetId() const;
-    void SetId(const wxChar *format);
+    void SetId(const wxString& format);
 
-    // returns TRUE if the format is one of those defined in wxDataFormatId
-    bool IsStandard() const { return m_format > 0 && m_format < wxDF_MAX; }
+    // returns true if the format is one of those defined in wxDataFormatId
+    bool IsStandard() const { return m_format > 0 && m_format < wxDF_PRIVATE; }
 
 private:
     NativeFormat m_format;