]> git.saurik.com Git - wxWidgets.git/blame_incremental - docs/latex/wx/dropsrc.tex
added and documented wxDYNLIB_FUNCTION
[wxWidgets.git] / docs / latex / wx / dropsrc.tex
... / ...
CommitLineData
1\section{\class{wxDropSource}}\label{wxdropsource}
2
3This class represents a source for a drag and drop operation.
4
5See \helpref{Drag and drop overview}{wxdndoverview} and \helpref{wxDataObject overview}{wxdataobjectoverview}
6for more information.
7
8\wxheading{Derived from}
9
10None
11
12\wxheading{Include files}
13
14<wx/dnd.h>
15
16\wxheading{Types}
17
18\index{wxDragResult}wxDragResult is defined as follows:
19
20\begin{verbatim}
21enum wxDragResult
22{
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)
28};
29\end{verbatim}
30
31\wxheading{See also}
32
33\helpref{wxDropTarget}{wxdroptarget},
34\helpref{wxTextDropTarget}{wxtextdroptarget}, \helpref{wxFileDropTarget}{wxfiledroptarget}
35
36\latexignore{\rtfignore{\wxheading{Members}}}
37
38\membersection{wxDropSource::wxDropSource}\label{wxdropsourcewxdropsource}
39
40\func{}{wxDropSource}{\param{wxWindow*}{ win = NULL},\param{const wxIconOrCursor\& }{iconCopy = wxNullIconOrCursor}, \param{const wxIconOrCursor\& }{iconCopy = wxNullIconOrCursor}, \param{const wxIconOrCursor\& }{iconNone = wxNullIconOrCursor}}
41
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}}
43
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.
65
66\membersection{wxDropSource::\destruct{wxDropSource}}\label{wxdropsourcedtor}
67
68\func{virtual }{\destruct{wxDropSource}}{\void}
69
70\membersection{wxDropSource::SetData}\label{wxdropsourcesetdata}
71
72\func{void}{SetData}{\param{wxDataObject\&}{ data}}
73
74Sets the data \helpref{wxDataObject}{wxdataobject} associated with the
75drop source. This will not delete any previously associated data.
76
77\membersection{wxDropSource::DoDragDrop}\label{wxdropsourcedodragdrop}
78
79\func{virtual wxDragResult}{DoDragDrop}{\param{int }{flags = {\tt wxDrag\_CopyOnly}}}
80
81Do it (call this in response to a mouse button press, for example). This starts
82the drag-and-drop operation which will terminate when the user releases the
83mouse.
84
85\wxheading{Parameters}
86
87\docparam{flags}{If {\tt wxDrag\_AllowMove} is included in the flags, data may
88be moved and not only copied (default). If {\tt wxDrag\_DefaultMove} is
89specified (which includes the previous flag), this is even the default
90operation}.
91
92\wxheading{Return value}
93
94Returns the operation requested by the user, may be {\tt wxDragCopy}, {\tt
95wxDragMove}, {\tt wxDragCancel} or {\tt wxDragNone} if an error occured.
96
97\membersection{wxDropSource::GiveFeedback}\label{wxdropsourcegivefeedback}
98
99\func{virtual bool}{GiveFeedback}{\param{wxDragResult }{effect}, \param{bool }{scrolling}}
100
101Overridable: you may give some custom UI feedback during the drag and drop operation
102in this function. It is called on each mouse move, so your implementation must not be too
103slow.
104
105\wxheading{Parameters}
106
107\docparam{effect}{The effect to implement. One of wxDragCopy, wxDragMove and wxDragNone. }
108
109\docparam{scrolling}{true if the window is scrolling. MSW only. }
110
111\wxheading{Return value}
112
113Return false if you want default feedback, or true if you implement your own
114feedback. The return values is ignored under GTK.
115