X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/768c6e8be2cb044aac165c39e3f6847ee601ab0f..162d3be3ca27d875ca81f5466b12bc0e399896c3:/src/mac/carbon/dataobj.cpp?ds=sidebyside diff --git a/src/mac/carbon/dataobj.cpp b/src/mac/carbon/dataobj.cpp index 6096d47388..e6e4af8767 100644 --- a/src/mac/carbon/dataobj.cpp +++ b/src/mac/carbon/dataobj.cpp @@ -17,10 +17,6 @@ // headers // ---------------------------------------------------------------------------- -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma implementation "dataobj.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -99,13 +95,10 @@ void wxDataFormat::SetType( wxDataFormatId Type ) wxString wxDataFormat::GetId() const { - // note that m_format is not a pointer to string, it *is* itself a 4 - // character string - char text[5] ; - strncpy( text , (char*) &m_format , 4 ) ; - text[4] = 0 ; + wxCHECK_MSG( !IsStandard(), wxEmptyString , + wxT("name of predefined format cannot be retrieved") ); - return wxString::FromAscii( text ) ; + return m_id ; } void wxDataFormat::SetId( NativeFormat format ) @@ -121,13 +114,32 @@ void wxDataFormat::SetId( NativeFormat format ) else if (m_format == kDragFlavorTypeHFS ) m_type = wxDF_FILENAME; else + { m_type = wxDF_PRIVATE; + char text[5] ; + strncpy( text , (char*) &format , 4 ) ; + text[4] = 0 ; + m_id = wxString::FromAscii( text ) ; + } } void wxDataFormat::SetId( const wxChar* zId ) { m_type = wxDF_PRIVATE; - m_format = 0;// TODO: get the format gdk_atom_intern( wxMBSTRINGCAST tmp.mbc_str(), FALSE ); + m_id = zId ; + m_format = 'WXPR' ; +} + +bool wxDataFormat::operator==(const wxDataFormat& format) const +{ + if ( IsStandard() || format.IsStandard() ) + { + return ( format.m_type == m_type ) ; + } + else + { + return ( m_id == format.m_id ) ; + } } //-------------------------------------------------------------------------