]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/ole/dropsrc.h
fixed bug in Set() on DST days (patch 1097811)
[wxWidgets.git] / include / wx / msw / ole / dropsrc.h
index 079514324b7b0dffa6ed14bac4b1385e037e8ea2..2b383a3ab6c51da1f342cbc07920ed7aaec0db20 100644 (file)
 #ifndef   _WX_OLEDROPSRC_H
 #define   _WX_OLEDROPSRC_H
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
     #pragma interface
 #endif
 
-#if !wxUSE_DRAG_AND_DROP
-  #error  "You should #define wxUSE_DRAG_AND_DROP to 1 to compile this file!"
-#endif  //WX_DRAG_DROP
+#if wxUSE_DRAG_AND_DROP
 
 // ----------------------------------------------------------------------------
 // forward declarations
@@ -28,6 +26,16 @@ class wxIDropSource;
 class WXDLLEXPORT wxDataObject;
 class WXDLLEXPORT wxWindow;
 
+// ----------------------------------------------------------------------------
+// macros
+// ----------------------------------------------------------------------------
+
+// this macro may be used instead for wxDropSource ctor arguments: it will use
+// the cursor 'name' from the resources under MSW, but will expand to
+// something else under GTK. If you don't use it, you will have to use #ifdef
+// in the application code.
+#define wxDROP_ICON(name)   wxCursor(_T(#name))
+
 // ----------------------------------------------------------------------------
 // wxDropSource is used to start the drag-&-drop operation on associated
 // wxDataObject object. It's responsible for giving UI feedback while dragging.
@@ -54,7 +62,7 @@ public:
 
     // 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(bool bAllowMove = FALSE);
+    virtual wxDragResult DoDragDrop(int flags = wxDrag_CopyOnly);
 
     // overridable: you may give some custom UI feedback during d&d operation
     // in this function (it's called on each mouse move, so it shouldn't be
@@ -66,6 +74,10 @@ protected:
 
 private:
     wxIDropSource *m_pIDropSource;  // the pointer to COM interface
+
+    DECLARE_NO_COPY_CLASS(wxDropSource)
 };
 
+#endif  //wxUSE_DRAG_AND_DROP
+
 #endif  //_WX_OLEDROPSRC_H