]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/dropsrc.tex
ugh. Nesting the (per class) plugin sentries can require them to
[wxWidgets.git] / docs / latex / wx / dropsrc.tex
CommitLineData
dface61c
JS
1\section{\class{wxDropSource}}\label{wxdropsource}
2
dface61c
JS
3This class represents a source for a drag and drop operation.
4
f6bcfd97 5See \helpref{Drag and drop overview}{wxdndoverview} and \helpref{wxDataObject overview}{wxdataobjectoverview}
23efdd02
RR
6for more information.
7
dface61c
JS
8\wxheading{Derived from}
9
f59d80ca 10None
dface61c 11
954b8ae6
JS
12\wxheading{Include files}
13
14<wx/dnd.h>
15
dface61c
JS
16\wxheading{Types}
17
18\index{wxDragResult}wxDragResult is defined as follows:
19
b2cf617c 20\begin{verbatim}
dface61c 21enum wxDragResult
f59d80ca 22{
dface61c
JS
23 wxDragError, // error prevented the d&d operation from completing
24 wxDragNone, // drag target didn't accept the data
25 wxDragCopy, // the data was successfully copied
26 wxDragMove, // the data was successfully moved
27 wxDragCancel // the operation was cancelled by user (not an error)
f59d80ca
RR
28};
29\end{verbatim}
dface61c
JS
30
31\wxheading{See also}
32
23efdd02 33\helpref{wxDropTarget}{wxdroptarget},
dface61c
JS
34\helpref{wxTextDropTarget}{wxtextdroptarget}, \helpref{wxFileDropTarget}{wxfiledroptarget}
35
36\latexignore{\rtfignore{\wxheading{Members}}}
37
38\membersection{wxDropSource::wxDropSource}\label{wxdropsourcewxdropsource}
39
f6bcfd97 40\func{}{wxDropSource}{\param{wxWindow*}{ win = NULL},\param{const wxIconOrCursor\& }{iconCopy = wxNullIconOrCursor}, \param{const wxIconOrCursor\& }{iconCopy = wxNullIconOrCursor}, \param{const wxIconOrCursor\& }{iconNone = wxNullIconOrCursor}}
dface61c 41
f6bcfd97 42\func{}{wxDropSource}{\param{wxDataObject\&}{ data}, \param{wxWindow*}{ win = NULL},\param{const wxIconOrCursor\& }{iconCopy = wxNullIconOrCursor}, \param{const wxIconOrCursor\& }{iconCopy = wxNullIconOrCursor}, \param{const wxIconOrCursor\& }{iconNone = wxNullIconOrCursor}}
dface61c 43
f6bcfd97
BP
44The constructors for wxDataObject.
45
46If you use the constructor without {\it data} parameter you must call
47\helpref{SetData}{wxdropsourcesetdata} later.
48
49Note that the exact type of {\it iconCopy} and subsequent parameters differs
50between wxMSW and wxGTK: these are cursors under Windows but icons for GTK.
51You should use the macro \helpref{wxDROP\_ICON}{wxdropicon} in portable
52programs instead of directly using either of these types.
53
54\wxheading{Parameters}
55
56\docparam{win}{The window which initiates the drag and drop operation.}
57
58\docparam{iconCopy}{The icon or cursor used for feedback for copy operation.}
59
60\docparam{iconMove}{The icon or cursor used for feedback for move operation.}
61
62\docparam{iconNone}{The icon or cursor used for feedback when operation can't be done.}
63
64{\it win} is the window which initiates the drag and drop operation.
dface61c 65
dface61c
JS
66\membersection{wxDropSource::\destruct{wxDropSource}}\label{wxdropsourcedtor}
67
68\func{virtual }{\destruct{wxDropSource}}{\void}
69
70\membersection{wxDropSource::SetData}\label{wxdropsourcesetdata}
71
06ad8636 72\func{void}{SetData}{\param{wxDataObject\&}{ data}}
dface61c 73
f59d80ca
RR
74Sets the data \helpref{wxDataObject}{wxdataobject} associated with the
75drop source. This will not delete any previously associated data.
dface61c
JS
76
77\membersection{wxDropSource::DoDragDrop}\label{wxdropsourcedodragdrop}
78
fc9c7c09 79\func{virtual wxDragResult}{DoDragDrop}{\param{bool }{allowMove = FALSE}}
dface61c
JS
80
81Do it (call this in response to a mouse button press, for example).
82
fc9c7c09 83If {\bf allowMove} is FALSE, data can only be copied.
dface61c
JS
84
85\membersection{wxDropSource::GiveFeedback}\label{wxdropsourcegivefeedback}
86
fc9c7c09 87\func{virtual bool}{GiveFeedback}{\param{wxDragResult }{effect}, \param{bool }{scrolling}}
dface61c
JS
88
89Overridable: you may give some custom UI feedback during the drag and drop operation
90in this function. It is called on each mouse move, so your implementation must not be too
91slow.
92
93\wxheading{Parameters}
94
fc9c7c09 95\docparam{effect}{The effect to implement. One of wxDragCopy, wxDragMove and wxDragNone. }
dface61c 96
fc9c7c09 97\docparam{scrolling}{TRUE if the window is scrolling. MSW only. }
dface61c
JS
98
99\wxheading{Return value}
100
101Return FALSE if you want default feedback, or TRUE if you implement your own
fc9c7c09 102feedback. The return values is ignored under GTK.
dface61c 103