X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c9057ae1c565cc4ae6c2cf84dd19d65a64ee2b7b..794bcc2dea743ac907b839f54e451847c9ea4b72:/include/wx/gtk/dnd.h diff --git a/include/wx/gtk/dnd.h b/include/wx/gtk/dnd.h index 379c0e94ef..380d5c1d6a 100644 --- a/include/wx/gtk/dnd.h +++ b/include/wx/gtk/dnd.h @@ -44,15 +44,16 @@ class wxDropTarget: public wxDropTargetBase { public: wxDropTarget(wxDataObject *dataObject = (wxDataObject*) NULL ); - + virtual wxDragResult OnDragOver(wxCoord x, wxCoord y, wxDragResult def); virtual bool OnDrop(wxCoord x, wxCoord y); - virtual bool OnData(wxCoord x, wxCoord y); + virtual wxDragResult OnData(wxCoord x, wxCoord y, wxDragResult def); virtual bool GetData(); // implementation GdkAtom GetMatchingPair(); + void RegisterWidget( GtkWidget *widget ); void UnregisterWidget( GtkWidget *widget ); @@ -68,37 +69,6 @@ public: void SetDragTime( guint time ) { m_dragTime = time; } }; -// ---------------------------------------------------------------------------- -// A simple wxDropTarget derived class for text data: you only need to -// override OnDropText() to get something working -// ---------------------------------------------------------------------------- - -class wxTextDropTarget : public wxDropTarget -{ -public: - wxTextDropTarget(); - - virtual bool OnDropText(wxCoord x, wxCoord y, const wxString& text) = 0; - - virtual bool OnData(wxCoord x, wxCoord y); -}; - -// ---------------------------------------------------------------------------- -// A drop target which accepts files (dragged from File Manager or Explorer) -// ---------------------------------------------------------------------------- - -class wxFileDropTarget : public wxDropTarget -{ -public: - wxFileDropTarget(); - - // parameters are the number of files and the array of file names - virtual bool OnDropFiles(wxCoord x, wxCoord y, - const wxArrayString& filenames) = 0; - - virtual bool OnData(wxCoord x, wxCoord y); -}; - //------------------------------------------------------------------------- // wxDropSource //------------------------------------------------------------------------- @@ -108,14 +78,12 @@ class wxDropSource: public wxDropSourceBase public: /* constructor. set data later with SetData() */ wxDropSource( wxWindow *win, - const wxIcon &go = wxNullIcon, - const wxIcon &stop = wxNullIcon ); + const wxIcon &go = wxNullIcon ); /* constructor for setting one data object */ wxDropSource( wxDataObject& data, wxWindow *win, - const wxIcon &go = wxNullIcon, - const wxIcon &stop = wxNullIcon ); + const wxIcon &go = wxNullIcon ); ~wxDropSource(); @@ -126,17 +94,17 @@ public: void RegisterWindow(); void UnregisterWindow(); - GtkWidget *m_widget; - wxWindow *m_window; - wxDragResult m_retValue; + void PrepareIcon( int hot_x, int hot_y, GdkDragContext *context ); - wxCursor m_defaultCursor; - wxCursor m_goaheadCursor; + GtkWidget *m_widget; + GtkWidget *m_iconWindow; + GdkDragContext *m_dragContext; + wxWindow *m_window; - wxIcon m_goIcon; - wxIcon m_stopIcon; + wxDragResult m_retValue; + wxIcon m_icon; - bool m_waiting; + bool m_waiting; }; #endif