]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/ole/dataform.h
improve wxMessageOutputBest console output under Windows (closes 9146)
[wxWidgets.git] / include / wx / msw / ole / dataform.h
index f071c37461332af918be34621893140e424fb5fd..d36edbfff9cdbb08c06d4940b20654558538c040 100644 (file)
 // 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 +62,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;