X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e1ee679c2e3f48bc4f2607e35033ed5505ed6665..66c2bf7b1d9326fb650acfaae22ec50528cfbf7c:/include/wx/gtk1/dataform.h diff --git a/include/wx/gtk1/dataform.h b/include/wx/gtk1/dataform.h index a0618e01af..bfdab5e596 100644 --- a/include/wx/gtk1/dataform.h +++ b/include/wx/gtk1/dataform.h @@ -1,10 +1,9 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: gtk/dataform.h +// Name: wx/gtk1/dataform.h // Purpose: declaration of the wxDataFormat class // Author: Vadim Zeitlin // Modified by: // Created: 19.10.99 (extracted from gtk/dataobj.h) -// RCS-ID: $Id$ // Copyright: (c) 1998 Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -12,7 +11,7 @@ #ifndef _WX_GTK_DATAFORM_H #define _WX_GTK_DATAFORM_H -class wxDataFormat +class WXDLLIMPEXP_CORE wxDataFormat { public: // the clipboard formats under GDK are GdkAtoms @@ -20,10 +19,18 @@ public: wxDataFormat(); wxDataFormat( wxDataFormatId type ); - wxDataFormat( const wxString &id ); - wxDataFormat( const wxChar *id ); wxDataFormat( NativeFormat format ); + // we have to provide all the overloads to allow using strings instead of + // data formats (as a lot of existing code does) + wxDataFormat( const wxString& id ) { InitFromString(id); } + wxDataFormat( const char *id ) { InitFromString(id); } + wxDataFormat( const wchar_t *id ) { InitFromString(id); } + wxDataFormat( const wxCStrData& id ) { InitFromString(id); } + + + wxDataFormat& operator=(const wxDataFormat& format) + { m_type = format.m_type; m_format = format.m_format; return *this; } wxDataFormat& operator=(NativeFormat format) { SetId(format); return *this; } @@ -32,6 +39,10 @@ public: { return m_format == (NativeFormat)format; } bool operator!=(NativeFormat format) const { return m_format != (NativeFormat)format; } + bool operator==(wxDataFormatId format) const + { return m_type == (wxDataFormatId)format; } + bool operator!=(wxDataFormatId format) const + { return m_type != (wxDataFormatId)format; } // explicit and implicit conversions to NativeFormat which is one of // standard data types (implicit conversion is useful for preserving the @@ -44,17 +55,20 @@ public: // string ids are used for custom types - this SetId() must be used for // application-specific formats wxString GetId() const; - void SetId( const wxChar *id ); + void SetId( const wxString& id ); // implementation wxDataFormatId GetType() const; + void SetType( wxDataFormatId type ); private: + // common part of ctors from format name + void InitFromString(const wxString& id); + wxDataFormatId m_type; NativeFormat m_format; void PrepareFormats(); - void SetType( wxDataFormatId type ); }; #endif // _WX_GTK_DATAFORM_H