X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..9f728f8dba3da31745bb703bf6572df7f8dbb848:/include/wx/gtk/dnd.h diff --git a/include/wx/gtk/dnd.h b/include/wx/gtk/dnd.h index 52199517b4..6f877727bc 100644 --- a/include/wx/gtk/dnd.h +++ b/include/wx/gtk/dnd.h @@ -4,37 +4,13 @@ // Author: Robert Roebling // RCS-ID: $Id$ // Copyright: (c) 1998 Vadim Zeitlin, Robert Roebling -// Licence: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// +#ifndef _WX_GTK_DND_H_ +#define _WX_GTK_DND_H_ -#ifndef __GTKDNDH__ -#define __GTKDNDH__ - -#ifdef __GNUG__ -#pragma interface -#endif - -#if wxUSE_DRAG_AND_DROP - -#include "wx/object.h" -#include "wx/string.h" -#include "wx/dataobj.h" -#include "wx/cursor.h" #include "wx/icon.h" -#include "wx/gdicmn.h" - -//------------------------------------------------------------------------- -// classes -//------------------------------------------------------------------------- - -class wxWindow; - -class wxDropTarget; -class wxTextDropTarget; -class wxFileDropTarget; - -class wxDropSource; // ---------------------------------------------------------------------------- // macros @@ -50,7 +26,7 @@ class wxDropSource; // wxDropTarget //------------------------------------------------------------------------- -class wxDropTarget: public wxDropTargetBase +class WXDLLIMPEXP_CORE wxDropTarget: public wxDropTargetBase { public: wxDropTarget(wxDataObject *dataObject = (wxDataObject*) NULL ); @@ -71,7 +47,7 @@ public: GtkWidget *m_dragWidget; GtkSelectionData *m_dragData; guint m_dragTime; - bool m_firstMotion; /* gdk has no "gdk_drag_enter" event */ + bool m_firstMotion; // gdk has no "gdk_drag_enter" event void SetDragContext( GdkDragContext *dc ) { m_dragContext = dc; } void SetDragWidget( GtkWidget *w ) { m_dragWidget = w; } @@ -83,30 +59,26 @@ public: // wxDropSource //------------------------------------------------------------------------- -class wxDropSource: public wxDropSourceBase +class WXDLLIMPEXP_CORE wxDropSource: public wxDropSourceBase { public: - /* constructor. set data later with SetData() */ + // constructor. set data later with SetData() wxDropSource( wxWindow *win = (wxWindow *)NULL, const wxIcon © = wxNullIcon, const wxIcon &move = wxNullIcon, const wxIcon &none = wxNullIcon); - /* constructor for setting one data object */ + // constructor for setting one data object wxDropSource( wxDataObject& data, wxWindow *win, const wxIcon © = wxNullIcon, const wxIcon &move = wxNullIcon, const wxIcon &none = wxNullIcon); - ~wxDropSource(); + virtual ~wxDropSource(); - /* start drag action */ - virtual wxDragResult DoDragDrop( bool bAllowMove = FALSE ); - - /* GTK implementation */ - void RegisterWindow(); - void UnregisterWindow(); + // start drag action + virtual wxDragResult DoDragDrop(int flags = wxDrag_CopyOnly); void PrepareIcon( int action, GdkDragContext *context ); @@ -127,12 +99,12 @@ private: void SetIcons(const wxIcon& copy, const wxIcon& move, const wxIcon& none); -}; -#endif + // GTK implementation + void GTKConnectDragSignals(); + void GTKDisconnectDragSignals(); - // wxUSE_DRAG_AND_DROP +}; -#endif - //__GTKDNDH__ +#endif // _WX_GTK_DND_H_