X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ef0e92205a01c7d0ca6f381cc690cb5d4fa595c9..be19c556083cc197be55acbd05db76ec6dc2e0c4:/include/wx/dataobj.h diff --git a/include/wx/dataobj.h b/include/wx/dataobj.h index 8966541e4e..d255a5064c 100644 --- a/include/wx/dataobj.h +++ b/include/wx/dataobj.h @@ -246,7 +246,7 @@ private: // the one and only format we support wxDataFormat m_format; - DECLARE_NO_COPY_CLASS(wxDataObjectSimple) + wxDECLARE_NO_COPY_CLASS(wxDataObjectSimple); }; // ---------------------------------------------------------------------------- @@ -274,11 +274,17 @@ public: void Add(wxDataObjectSimple *dataObject, bool preferred = false); // Report the format passed to the SetData method. This should be the - // format of the data object within the composite that recieved data from + // format of the data object within the composite that received data from // the clipboard or the DnD operation. You can use this method to find - // out what kind of data object was recieved. + // out what kind of data object was received. wxDataFormat GetReceivedFormat() const; + // Returns the pointer to the object which supports this format or NULL. + // The returned pointer is owned by wxDataObjectComposite and must + // therefore not be destroyed by the caller. + wxDataObjectSimple *GetObject(const wxDataFormat& format, + wxDataObjectBase::Direction dir = Get) const; + // implement base class pure virtuals // ---------------------------------- virtual wxDataFormat GetPreferredFormat(wxDataObjectBase::Direction dir = Get) const; @@ -295,10 +301,6 @@ public: virtual size_t GetBufferOffset( const wxDataFormat& format ); #endif -protected: - // returns the pointer to the object which supports this format or NULL - wxDataObjectSimple *GetObject(const wxDataFormat& format) const; - private: // the list of all (simple) data objects whose formats we support wxSimpleDataObjectList m_dataObjects; @@ -309,7 +311,7 @@ private: wxDataFormat m_receivedFormat; - DECLARE_NO_COPY_CLASS(wxDataObjectComposite) + wxDECLARE_NO_COPY_CLASS(wxDataObjectComposite); }; // ============================================================================ @@ -324,6 +326,14 @@ private: // wxTextDataObject contains text data // ---------------------------------------------------------------------------- +#if wxUSE_UNICODE + #if defined(__WXGTK20__) + #define wxNEEDS_UTF8_FOR_TEXT_DATAOBJ + #elif defined(__WXMAC__) + #define wxNEEDS_UTF16_FOR_TEXT_DATAOBJ + #endif +#endif // wxUSE_UNICODE + class WXDLLIMPEXP_CORE wxTextDataObject : public wxDataObjectSimple { public: @@ -351,7 +361,7 @@ public: // ---------------------------------- // some platforms have 2 and not 1 format for text data -#if wxUSE_UNICODE && (defined(__WXGTK20__) || defined(__WXMAC__)) +#if defined(wxNEEDS_UTF8_FOR_TEXT_DATAOBJ) || defined(wxNEEDS_UTF16_FOR_TEXT_DATAOBJ) virtual size_t GetFormatCount(Direction WXUNUSED(dir) = Get) const { return 2; } virtual void GetAllFormats(wxDataFormat *formats, wxDataObjectBase::Direction WXUNUSED(dir) = Get) const; @@ -363,7 +373,7 @@ public: size_t GetDataSize(const wxDataFormat& format) const; bool GetDataHere(const wxDataFormat& format, void *pBuf) const; bool SetData(const wxDataFormat& format, size_t nLen, const void* pBuf); -#else +#else // !wxNEEDS_UTF{8,16}_FOR_TEXT_DATAOBJ virtual size_t GetDataSize() const; virtual bool GetDataHere(void *buf) const; virtual bool SetData(size_t len, const void *buf); @@ -380,12 +390,12 @@ public: { return SetData(len, buf); } -#endif +#endif // different wxTextDataObject implementations private: wxString m_text; - DECLARE_NO_COPY_CLASS(wxTextDataObject) + wxDECLARE_NO_COPY_CLASS(wxTextDataObject); }; // ---------------------------------------------------------------------------- @@ -410,7 +420,7 @@ public: protected: wxBitmap m_bitmap; - DECLARE_NO_COPY_CLASS(wxBitmapDataObjectBase) + wxDECLARE_NO_COPY_CLASS(wxBitmapDataObjectBase); }; // ---------------------------------------------------------------------------- @@ -432,7 +442,7 @@ public: protected: wxArrayString m_filenames; - DECLARE_NO_COPY_CLASS(wxFileDataObjectBase) + wxDECLARE_NO_COPY_CLASS(wxFileDataObjectBase); }; // ---------------------------------------------------------------------------- @@ -493,7 +503,7 @@ private: size_t m_size; void *m_data; - DECLARE_NO_COPY_CLASS(wxCustomDataObject) + wxDECLARE_NO_COPY_CLASS(wxCustomDataObject); }; // ---------------------------------------------------------------------------- @@ -507,7 +517,7 @@ private: #include "wx/gtk/dataobj2.h" // wxURLDataObject defined in msw/ole/dataobj2.h -#else +#else #if defined(__WXGTK__) #include "wx/gtk1/dataobj2.h" #elif defined(__WXX11__)