X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/12f5e1e78fe906050ff2fee9529476db332633f0..b5fe7ca67bf3121959a0b5a59afd00c1708f2f03:/interface/wx/dnd.h diff --git a/interface/wx/dnd.h b/interface/wx/dnd.h index 3cd15b3ef5..0855d6872a 100644 --- a/interface/wx/dnd.h +++ b/interface/wx/dnd.h @@ -28,7 +28,7 @@ public: See wxDropTarget::OnDrop(). This function is implemented appropriately for text, and calls OnDropText(). */ - virtual bool OnDrop(long x, long y, const void data, size_t size); + virtual bool OnDrop(wxCoord x, wxCoord y); /** Override this function to receive dropped text. @@ -42,7 +42,7 @@ public: Return @true to accept the data, or @false to veto the operation. */ - virtual bool OnDropText(wxCoord x, wxCoord y, const wxString& data); + virtual bool OnDropText(wxCoord x, wxCoord y, const wxString& data) = 0; }; @@ -91,7 +91,7 @@ public: /** Destructor. Deletes the associated data object, if any. */ - ~wxDropTarget(); + virtual ~wxDropTarget(); /** This method may only be called from within OnData(). By default, this @@ -99,7 +99,7 @@ public: associated with this drop target, calling its wxDataObject::SetData() method. */ - virtual void GetData(); + virtual bool GetData(); /** Called after OnDrop() returns @true. By default this will usually @@ -187,11 +187,13 @@ public: /** This constructor requires that you must call SetData() later. - Note that the exact type of @a iconCopy and subsequent parameters - differs between wxMSW and wxGTK: these are cursors under Windows but + Note that the type of @a iconCopy and subsequent parameters + differs between different ports: these are cursors under Windows but icons for GTK. You should use the macro wxDROP_ICON() in portable programs instead of directly using either of these types. + @onlyfor{wxmsw,wxmac} + @param win The window which initiates the drag and drop operation. @param iconCopy @@ -202,15 +204,22 @@ public: The icon or cursor used for feedback when operation can't be done. */ wxDropSource(wxWindow* win = NULL, - const wxIconOrCursor& iconCopy = wxNullIconOrCursor, - const wxIconOrCursor& iconMove = wxNullIconOrCursor, - const wxIconOrCursor& iconNone = wxNullIconOrCursor); + const wxIcon& iconCopy = wxNullIcon, + const wxIcon& iconMove = wxNullIcon, + const wxIcon& iconNone = wxNullIcon); + /** - Note that the exact type of @a iconCopy and subsequent parameters - differs between wxMSW and wxGTK: these are cursors under Windows but + The constructor for wxDataObject. + + Note that the type of @a iconCopy and subsequent parameters + differs between different ports: these are cursors under Windows but icons for GTK. You should use the macro wxDROP_ICON() in portable programs instead of directly using either of these types. + @onlyfor{wxmsw,wxmac} + + @param data + The data associated with the drop source. @param win The window which initiates the drag and drop operation. @param iconCopy @@ -221,14 +230,64 @@ public: The icon or cursor used for feedback when operation can't be done. */ wxDropSource(wxDataObject& data, wxWindow* win = NULL, - const wxIconOrCursor& iconCopy = wxNullIconOrCursor, - const wxIconOrCursor& iconMove = wxNullIconOrCursor, - const wxIconOrCursor& iconNone = wxNullIconOrCursor); + const wxIcon& iconCopy = wxNullIcon, + const wxIcon& iconMove = wxNullIcon, + const wxIcon& iconNone = wxNullIcon); + + /** + This constructor requires that you must call SetData() later. + + Note that the type of @a iconCopy and subsequent parameters + differs between different ports: these are cursors under Windows but + icons for GTK. You should use the macro wxDROP_ICON() in portable + programs instead of directly using either of these types. + + @onlyfor{wxgtk} + + @param win + The window which initiates the drag and drop operation. + @param iconCopy + The icon or cursor used for feedback for copy operation. + @param iconMove + The icon or cursor used for feedback for move operation. + @param iconNone + The icon or cursor used for feedback when operation can't be done. + */ + wxDropSource(wxWindow* win = NULL, + const wxCursor& iconCopy = wxNullCursor, + const wxCursor& iconMove = wxNullCursor, + const wxCursor& iconNone = wxNullCursor); + + /** + The constructor for wxDataObject. + + Note that the type of @a iconCopy and subsequent parameters + differs between different ports: these are cursors under Windows but + icons for GTK. You should use the macro wxDROP_ICON() in portable + programs instead of directly using either of these types. + + @onlyfor{wxgtk} + + @param data + The data associated with the drop source. + @param win + The window which initiates the drag and drop operation. + @param iconCopy + The icon or cursor used for feedback for copy operation. + @param iconMove + The icon or cursor used for feedback for move operation. + @param iconNone + The icon or cursor used for feedback when operation can't be done. + */ + wxDropSource(wxDataObject& data, wxWindow* win = NULL, + const wxCursor& iconCopy = wxNullCursor, + const wxCursor& iconMove = wxNullCursor, + const wxCursor& iconNone = wxNullCursor); /** Default constructor. */ - ~wxDropSource(); + virtual ~wxDropSource(); /** Starts the drag-and-drop operation which will terminate when the user @@ -260,11 +319,9 @@ public: @param effect The effect to implement. One of ::wxDragCopy, ::wxDragMove, ::wxDragLink and ::wxDragNone. - @param scrolling - @true if the window is scrolling. MSW only. @return @false if you want default feedback, or @true if you implement - your own feedback. The return values is ignored under GTK. + your own feedback. The return value is ignored under GTK. */ virtual bool GiveFeedback(wxDragResult effect); @@ -310,7 +367,7 @@ public: See wxDropTarget::OnDrop(). This function is implemented appropriately for files, and calls OnDropFiles(). */ - virtual bool OnDrop(long x, long y, const void data, size_t size); + virtual bool OnDrop(wxCoord x, wxCoord y); /** Override this function to receive dropped files. @@ -325,7 +382,7 @@ public: Return @true to accept the data, or @false to veto the operation. */ virtual bool OnDropFiles(wxCoord x, wxCoord y, - const wxArrayString& filenames); + const wxArrayString& filenames) = 0; }; @@ -334,7 +391,7 @@ public: // Global functions/macros // ============================================================================ -/** @ingroup group_funcmacro_gdi */ +/** @addtogroup group_funcmacro_gdi */ //@{ /**