- public:
-
- wxDropSource( wxWindow *win );
- wxDropSource( wxDataObject &data, wxWindow *win );
-
- ~wxDropSource(void);
-
- void SetData( wxDataObject &data );
- wxDragResult DoDragDrop( bool bAllowMove = FALSE );
-
- virtual bool GiveFeedback( wxDragResult WXUNUSED(effect), bool WXUNUSED(bScrolling) ) { return TRUE; };
-
- protected:
-
- wxDataObject *m_data;
+public:
+ // ctors: if you use default ctor you must call SetData() later!
+ //
+ // NB: the "wxWindow *win" parameter is unused and is here only for wxGTK
+ // compatibility, as well as both icon parameters
+ wxDropSource( wxWindow *win = (wxWindow *)NULL,
+ const wxCursor &cursorCopy = wxNullCursor,
+ const wxCursor &cursorMove = wxNullCursor,
+ const wxCursor &cursorStop = wxNullCursor);
+
+ /* constructor for setting one data object */
+ wxDropSource( wxDataObject& data,
+ wxWindow *win,
+ const wxCursor &cursorCopy = wxNullCursor,
+ const wxCursor &cursorMove = wxNullCursor,
+ const wxCursor &cursorStop = wxNullCursor);
+
+ ~wxDropSource();
+
+ // do it (call this in response to a mouse button press, for example)
+ // params: if bAllowMove is false, data can be only copied
+ virtual wxDragResult DoDragDrop(int flags = wxDrag_CopyOnly);
+
+ wxWindow* GetWindow() { return m_window ; }
+ void SetCurrentDrag( void* drag ) { m_currentDrag = drag ; }
+ void* GetCurrentDrag() { return m_currentDrag ; }
+ bool MacInstallDefaultCursor(wxDragResult effect) ;
+ protected :
+
+ wxWindow *m_window;
+ void* m_currentDrag ;