X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f3ac12aa7af09efb9314ecbec36c6832cfe6ae0c..4b7f2165565bb33b149baf1272e28f9a61d579d3:/src/common/dobjcmn.cpp diff --git a/src/common/dobjcmn.cpp b/src/common/dobjcmn.cpp index a71231b2ae..aadd3914f3 100644 --- a/src/common/dobjcmn.cpp +++ b/src/common/dobjcmn.cpp @@ -47,7 +47,7 @@ WX_DEFINE_LIST(wxSimpleDataObjectList); // ---------------------------------------------------------------------------- static wxDataFormat dataFormatInvalid; -const wxDataFormat& wxFormatInvalid = dataFormatInvalid; +WXDLLEXPORT const wxDataFormat& wxFormatInvalid = dataFormatInvalid; // ============================================================================ // implementation @@ -61,6 +61,33 @@ wxDataObjectBase::~wxDataObjectBase() { } +bool wxDataObjectBase::IsSupported(const wxDataFormat& format, + Direction dir) const +{ + size_t nFormatCount = GetFormatCount(dir); + if ( nFormatCount == 1 ) + { + return format == GetPreferredFormat(dir); + } + else + { + wxDataFormat *formats = new wxDataFormat[nFormatCount]; + GetAllFormats(formats, dir); + + size_t n; + for ( n = 0; n < nFormatCount; n++ ) + { + if ( formats[n] == format ) + break; + } + + delete [] formats; + + // found? + return n < nFormatCount; + } +} + // ---------------------------------------------------------------------------- // wxDataObjectComposite // ----------------------------------------------------------------------------