~canonical-dx-team/ubuntu/maverick/gtk+2.0/menuproxy

« back to all changes in this revision

Viewing changes to docs/reference/gdk/html/gdk-Drag-and-Drop.html

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher
  • Date: 2007-05-04 12:24:25 UTC
  • mfrom: (1.1.21 upstream)
  • Revision ID: james.westby@ubuntu.com-20070504122425-0m8midgzrp40y8w2
Tags: 2.10.12-1ubuntu1
* Sync with Debian
* New upstream version:
  Fixed bugs:
  - 379414 file chooser warnings when changing path in the entry
  - 418585 GtkFileChooserDefault sizing code is not DPI independent
  - 419568 Crash in search if start with special letter
  - 435062 build dies with icon cache validation
  - 379399 Segfault to call gtk_print_operation_run twice.
  - 387889 cups backend has problems when there are too many printers
  - 418531 invalid read to gtkicontheme.c gtk_icon_theme_lookup_icon...
  - 423916 crash in color scheme code
  - 424042 Segmentation fault while quickly pressing Alt+arrows
  - 415260 Protect against negative indices when setting values in G...
  - 419171 XGetVisualInfo() may not set nxvisuals
  - 128852 Gdk cursors don't look good on win32
  - 344657 Ctrl-H doesn't toggle "Show Hidden Files" setting
  - 345345 PrintOperation::paginate is not emitted for class handler
  - 347567 GtkPrintOperation::end-print is not emitted if it's cance...
  - 369112 gtk_ui_manager_add_ui should accept unnamed separator
  - 392015 Selected menu item invisible on Windows Vista
  - 399253 MS-Windows Theme Bottom Tab placement rendering glitches
  - 399425 gtk_input_dialog_fill_axes() adds child to gtkscrolledwin...
  - 403251 [patch] little memory leak in GtkPrintJob
  - 403267 [patch] memory leak in GtkPageSetupUnixDialog
  - 403470 MS-Windows Theme tab placement other than on top leaks a ...
  - 404506 Windows system fonts that have multi-byte font names cann...
  - 405089 Incorrect window placement for GtkEventBox private window
  - 405515 Minor leak in gtkfilesystemmodel.c
  - 405539 gdk_pixbuf_save() for PNG saver can return FALSE without ...
  - 415681 gdk_window_clear_area includes an extra line and column o...
  - 418219 GtkRecentChooser should apply filter before sorting and c...
  - 418403 Scroll to printer after selecting it from settings
  - 421985 _gtk_print_operation_platform_backend_launch_preview
  - 421990 gtk_print_job_get_surface
  - 421993 gtk_print_operation_init
  - 423064 Conditional jump or move depends on uninitialised value(s...
  - 423722 Fix printing header in gtk-demo
  - 424168 gtk_print_operation_run on async preview
  - 425655 Don't install gtk+-unix-print-2.0.pc on non-UNIX platforms
  - 425786 GDK segfaults if XineramaQueryScreens fails
  - 428665 Lpr Backend gets stuck in infinite loop during gtk_enumer...
  - 429902 GtkPrintOperation leaks cairo contextes
  - 431997 First delay of GdkPixbufAnimationIter is wrong
  - 433242 Inconsistent scroll arrow position calculations
  - 433972 Placing gtk.Expander inside a gtk.TextView() changes gtk....
  - 434261 _gtk_toolbar_elide_underscores incorrectly handles some s...
  - 383354 ctrl-L should make 'Location' entry disappear
  - 418673 gtk_recent_manager_add_item
  - 429732 gtk_accel_group_finalize accesses invalid memory
  - 435028 WM_CLIENT_LEADER is wrong on the leader_window
  - 431067 Background of the header window is not updated
  - 338843 add recent files support inside the ui manager
  - 148535 add drop shadow to menus, tooltips, etc. under Windows XP
* debian/control.in:
  - Conflicts on ubuntulooks (<= 0.9.11-1)
* debian/patches/15_default-fallback-icon-theme.patch:
  - patch from Debian, fallback on gnome icon theme

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
2
<html>
 
3
<head>
 
4
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
 
5
<title>Drag and Drop</title>
 
6
<meta name="generator" content="DocBook XSL Stylesheets V1.72.0">
 
7
<link rel="start" href="index.html" title="GDK Reference Manual">
 
8
<link rel="up" href="reference.html" title="API Reference">
 
9
<link rel="prev" href="gdk-Selections.html" title="Selections">
 
10
<link rel="next" href="gdk-Properties-and-Atoms.html" title="Properties and Atoms">
 
11
<meta name="generator" content="GTK-Doc V1.7 (XML mode)">
 
12
<link rel="stylesheet" href="style.css" type="text/css">
 
13
<link rel="reference" href="reference.html" title="API Reference">
 
14
<link rel="index" href="ix01.html" title="Index">
 
15
<link rel="index" href="ix02.html" title="Index of deprecated symbols">
 
16
<link rel="index" href="ix03.html" title="Index of new symbols in 2.2">
 
17
<link rel="index" href="ix04.html" title="Index of new symbols in 2.4">
 
18
<link rel="index" href="ix05.html" title="Index of new symbols in 2.6">
 
19
<link rel="index" href="ix06.html" title="Index of new symbols in 2.8">
 
20
<link rel="index" href="ix07.html" title="Index of new symbols in 2.10">
 
21
</head>
 
22
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 
23
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
 
24
<tr valign="middle">
 
25
<td><a accesskey="p" href="gdk-Selections.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
 
26
<td><a accesskey="u" href="reference.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 
27
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 
28
<th width="100%" align="center">GDK Reference Manual</th>
 
29
<td><a accesskey="n" href="gdk-Properties-and-Atoms.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 
30
</tr>
 
31
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2776707" class="shortcut">Top</a>
 
32
                  &#160;|&#160;
 
33
                  <a href="#id2777351" class="shortcut">Description</a></nobr></td></tr>
 
34
</table>
 
35
<div class="refentry" lang="en">
 
36
<a name="gdk-Drag-and-Drop"></a><div class="titlepage"></div>
 
37
<div class="refnamediv"><table width="100%"><tr>
 
38
<td valign="top">
 
39
<h2>
 
40
<a name="id2776707"></a><span class="refentrytitle">Drag and Drop</span>
 
41
</h2>
 
42
<p>Drag and Drop &#8212; Functions for controlling drag and drop handling</p>
 
43
</td>
 
44
<td valign="top" align="right"></td>
 
45
</tr></table></div>
 
46
<div class="refsynopsisdiv">
 
47
<h2>Synopsis</h2>
 
48
<pre class="synopsis">
 
49
 
 
50
#include &lt;gdk/gdk.h&gt;
 
51
 
 
52
 
 
53
<a href="gdk-Properties-and-Atoms.html#GdkAtom">GdkAtom</a>             <a href="gdk-Drag-and-Drop.html#gdk-drag-get-selection">gdk_drag_get_selection</a>              (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);
 
54
void                <a href="gdk-Drag-and-Drop.html#gdk-drag-abort">gdk_drag_abort</a>                      (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
55
                                                         guint32 time_);
 
56
void                <a href="gdk-Drag-and-Drop.html#gdk-drop-reply">gdk_drop_reply</a>                      (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
57
                                                         gboolean ok,
 
58
                                                         guint32 time_);
 
59
<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a>*     <a href="gdk-Drag-and-Drop.html#gdk-drag-context-new">gdk_drag_context_new</a>                (void);
 
60
void                <a href="gdk-Drag-and-Drop.html#gdk-drag-drop">gdk_drag_drop</a>                       (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
61
                                                         guint32 time_);
 
62
void                <a href="gdk-Drag-and-Drop.html#gdk-drag-find-window">gdk_drag_find_window</a>                (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
63
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *drag_window,
 
64
                                                         gint x_root,
 
65
                                                         gint y_root,
 
66
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> **dest_window,
 
67
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);
 
68
void                <a href="gdk-Drag-and-Drop.html#gdk-drag-find-window-for-screen">gdk_drag_find_window_for_screen</a>     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
69
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *drag_window,
 
70
                                                         <a href="GdkScreen.html" title="GdkScreen">GdkScreen</a> *screen,
 
71
                                                         gint x_root,
 
72
                                                         gint y_root,
 
73
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> **dest_window,
 
74
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);
 
75
void                <a href="gdk-Drag-and-Drop.html#gdk-drag-context-ref">gdk_drag_context_ref</a>                (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);
 
76
<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a>*     <a href="gdk-Drag-and-Drop.html#gdk-drag-begin">gdk_drag_begin</a>                      (<a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *window,
 
77
                                                         GList *targets);
 
78
gboolean            <a href="gdk-Drag-and-Drop.html#gdk-drag-motion">gdk_drag_motion</a>                     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
79
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *dest_window,
 
80
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> protocol,
 
81
                                                         gint x_root,
 
82
                                                         gint y_root,
 
83
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a> suggested_action,
 
84
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a> possible_actions,
 
85
                                                         guint32 time_);
 
86
void                <a href="gdk-Drag-and-Drop.html#gdk-drop-finish">gdk_drop_finish</a>                     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
87
                                                         gboolean success,
 
88
                                                         guint32 time_);
 
89
guint32             <a href="gdk-Drag-and-Drop.html#gdk-drag-get-protocol">gdk_drag_get_protocol</a>               (guint32 xid,
 
90
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);
 
91
guint32             <a href="gdk-Drag-and-Drop.html#gdk-drag-get-protocol-for-display">gdk_drag_get_protocol_for_display</a>   (<a href="GdkDisplay.html" title="GdkDisplay">GdkDisplay</a> *display,
 
92
                                                         guint32 xid,
 
93
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);
 
94
enum                <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a>;
 
95
void                <a href="gdk-Drag-and-Drop.html#gdk-drag-context-unref">gdk_drag_context_unref</a>              (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);
 
96
                    <a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a>;
 
97
enum                <a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a>;
 
98
void                <a href="gdk-Drag-and-Drop.html#gdk-drag-status">gdk_drag_status</a>                     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
99
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a> action,
 
100
                                                         guint32 time_);
 
101
gboolean            <a href="gdk-Drag-and-Drop.html#gdk-drag-drop-succeeded">gdk_drag_drop_succeeded</a>             (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);
 
102
 
 
103
 
 
104
</pre>
 
105
</div>
 
106
<div class="refsect1" lang="en">
 
107
<a name="id2777351"></a><h2>Description</h2>
 
108
<p>
 
109
These functions provide a low level interface for drag and drop.
 
110
The X backend of GDK supports both the Xdnd and Motif drag and drop protocols 
 
111
transparently, the Win32 backend supports the WM_DROPFILES protocol.
 
112
</p>
 
113
<p>
 
114
GTK+ provides a higher level abstraction based on top of these functions,
 
115
and so they are not normally needed in GTK+ applications.
 
116
See the Drag and Drop section of
 
117
the GTK+ documentation for more information.
 
118
</p>
 
119
</div>
 
120
<div class="refsect1" lang="en">
 
121
<a name="id2777385"></a><h2>Details</h2>
 
122
<div class="refsect2" lang="en">
 
123
<a name="id2777395"></a><h3>
 
124
<a name="gdk-drag-get-selection"></a>gdk_drag_get_selection ()</h3>
 
125
<a class="indexterm" name="id2777408"></a><pre class="programlisting"><a href="gdk-Properties-and-Atoms.html#GdkAtom">GdkAtom</a>             gdk_drag_get_selection              (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);</pre>
 
126
<p>
 
127
Returns the selection atom for the current source window.</p>
 
128
<p>
 
129
</p>
 
130
<div class="variablelist"><table border="0">
 
131
<col align="left" valign="top">
 
132
<tbody>
 
133
<tr>
 
134
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
135
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
136
</td>
 
137
</tr>
 
138
<tr>
 
139
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
140
<td> the selection atom.
 
141
</td>
 
142
</tr>
 
143
</tbody>
 
144
</table></div>
 
145
</div>
 
146
<hr>
 
147
<div class="refsect2" lang="en">
 
148
<a name="id2777478"></a><h3>
 
149
<a name="gdk-drag-abort"></a>gdk_drag_abort ()</h3>
 
150
<a class="indexterm" name="id2777491"></a><pre class="programlisting">void                gdk_drag_abort                      (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
151
                                                         guint32 time_);</pre>
 
152
<p>
 
153
Aborts a drag without dropping. 
 
154
</p>
 
155
<p>
 
156
This function is called by the drag source.</p>
 
157
<p>
 
158
</p>
 
159
<div class="variablelist"><table border="0">
 
160
<col align="left" valign="top">
 
161
<tbody>
 
162
<tr>
 
163
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
164
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
165
</td>
 
166
</tr>
 
167
<tr>
 
168
<td><span class="term"><em class="parameter"><code>time_</code></em>&#160;:</span></td>
 
169
<td> the timestamp for this operation.
 
170
</td>
 
171
</tr>
 
172
</tbody>
 
173
</table></div>
 
174
</div>
 
175
<hr>
 
176
<div class="refsect2" lang="en">
 
177
<a name="id2777576"></a><h3>
 
178
<a name="gdk-drop-reply"></a>gdk_drop_reply ()</h3>
 
179
<a class="indexterm" name="id2777589"></a><pre class="programlisting">void                gdk_drop_reply                      (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
180
                                                         gboolean ok,
 
181
                                                         guint32 time_);</pre>
 
182
<p>
 
183
Accepts or rejects a drop. 
 
184
</p>
 
185
<p>
 
186
This function is called by the drag destination in response
 
187
to a drop initiated by the drag source.</p>
 
188
<p>
 
189
</p>
 
190
<div class="variablelist"><table border="0">
 
191
<col align="left" valign="top">
 
192
<tbody>
 
193
<tr>
 
194
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
195
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
196
</td>
 
197
</tr>
 
198
<tr>
 
199
<td><span class="term"><em class="parameter"><code>ok</code></em>&#160;:</span></td>
 
200
<td> <code class="literal">TRUE</code> if the drop is accepted.
 
201
</td>
 
202
</tr>
 
203
<tr>
 
204
<td><span class="term"><em class="parameter"><code>time_</code></em>&#160;:</span></td>
 
205
<td> the timestamp for this operation.
 
206
</td>
 
207
</tr>
 
208
</tbody>
 
209
</table></div>
 
210
</div>
 
211
<hr>
 
212
<div class="refsect2" lang="en">
 
213
<a name="id2777706"></a><h3>
 
214
<a name="gdk-drag-context-new"></a>gdk_drag_context_new ()</h3>
 
215
<a class="indexterm" name="id2777719"></a><pre class="programlisting"><a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a>*     gdk_drag_context_new                (void);</pre>
 
216
<p>
 
217
Creates a new <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.</p>
 
218
<p>
 
219
</p>
 
220
<div class="variablelist"><table border="0">
 
221
<col align="left" valign="top">
 
222
<tbody><tr>
 
223
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
224
<td> the newly created <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
225
</td>
 
226
</tr></tbody>
 
227
</table></div>
 
228
</div>
 
229
<hr>
 
230
<div class="refsect2" lang="en">
 
231
<a name="id2777776"></a><h3>
 
232
<a name="gdk-drag-drop"></a>gdk_drag_drop ()</h3>
 
233
<a class="indexterm" name="id2777789"></a><pre class="programlisting">void                gdk_drag_drop                       (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
234
                                                         guint32 time_);</pre>
 
235
<p>
 
236
Drops on the current destination.
 
237
</p>
 
238
<p>
 
239
This function is called by the drag source.</p>
 
240
<p>
 
241
</p>
 
242
<div class="variablelist"><table border="0">
 
243
<col align="left" valign="top">
 
244
<tbody>
 
245
<tr>
 
246
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
247
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
248
</td>
 
249
</tr>
 
250
<tr>
 
251
<td><span class="term"><em class="parameter"><code>time_</code></em>&#160;:</span></td>
 
252
<td> the timestamp for this operation.
 
253
</td>
 
254
</tr>
 
255
</tbody>
 
256
</table></div>
 
257
</div>
 
258
<hr>
 
259
<div class="refsect2" lang="en">
 
260
<a name="id2777874"></a><h3>
 
261
<a name="gdk-drag-find-window"></a>gdk_drag_find_window ()</h3>
 
262
<a class="indexterm" name="id2777887"></a><pre class="programlisting">void                gdk_drag_find_window                (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
263
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *drag_window,
 
264
                                                         gint x_root,
 
265
                                                         gint y_root,
 
266
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> **dest_window,
 
267
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);</pre>
 
268
<p>
 
269
Finds the destination window and DND protocol to use at the
 
270
given pointer position. 
 
271
</p>
 
272
<p>
 
273
This function is called by the drag source to obtain the 
 
274
<em class="parameter"><code>dest_window</code></em> and <em class="parameter"><code>protocol</code></em> parameters for <a href="gdk-Drag-and-Drop.html#gdk-drag-motion"><code class="function">gdk_drag_motion()</code></a>.</p>
 
275
<p>
 
276
</p>
 
277
<div class="variablelist"><table border="0">
 
278
<col align="left" valign="top">
 
279
<tbody>
 
280
<tr>
 
281
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
282
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
283
</td>
 
284
</tr>
 
285
<tr>
 
286
<td><span class="term"><em class="parameter"><code>drag_window</code></em>&#160;:</span></td>
 
287
<td> a window which may be at the pointer position, but
 
288
     should be ignored, since it is put up by the drag source as an icon.
 
289
</td>
 
290
</tr>
 
291
<tr>
 
292
<td><span class="term"><em class="parameter"><code>x_root</code></em>&#160;:</span></td>
 
293
<td> the x position of the pointer in root coordinates.
 
294
</td>
 
295
</tr>
 
296
<tr>
 
297
<td><span class="term"><em class="parameter"><code>y_root</code></em>&#160;:</span></td>
 
298
<td> the y position of the pointer in root coordinates.
 
299
</td>
 
300
</tr>
 
301
<tr>
 
302
<td><span class="term"><em class="parameter"><code>dest_window</code></em>&#160;:</span></td>
 
303
<td> location to store the destination window in.
 
304
</td>
 
305
</tr>
 
306
<tr>
 
307
<td><span class="term"><em class="parameter"><code>protocol</code></em>&#160;:</span></td>
 
308
<td> location to store the DND protocol in.
 
309
</td>
 
310
</tr>
 
311
</tbody>
 
312
</table></div>
 
313
</div>
 
314
<hr>
 
315
<div class="refsect2" lang="en">
 
316
<a name="id2778087"></a><h3>
 
317
<a name="gdk-drag-find-window-for-screen"></a>gdk_drag_find_window_for_screen ()</h3>
 
318
<a class="indexterm" name="id2778103"></a><pre class="programlisting">void                gdk_drag_find_window_for_screen     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
319
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *drag_window,
 
320
                                                         <a href="GdkScreen.html" title="GdkScreen">GdkScreen</a> *screen,
 
321
                                                         gint x_root,
 
322
                                                         gint y_root,
 
323
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> **dest_window,
 
324
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);</pre>
 
325
<p>
 
326
Finds the destination window and DND protocol to use at the
 
327
given pointer position. 
 
328
</p>
 
329
<p>
 
330
This function is called by the drag source to obtain the 
 
331
<em class="parameter"><code>dest_window</code></em> and <em class="parameter"><code>protocol</code></em> parameters for <a href="gdk-Drag-and-Drop.html#gdk-drag-motion"><code class="function">gdk_drag_motion()</code></a>.</p>
 
332
<p>
 
333
 
 
334
</p>
 
335
<div class="variablelist"><table border="0">
 
336
<col align="left" valign="top">
 
337
<tbody>
 
338
<tr>
 
339
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
340
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>
 
341
</td>
 
342
</tr>
 
343
<tr>
 
344
<td><span class="term"><em class="parameter"><code>drag_window</code></em>&#160;:</span></td>
 
345
<td> a window which may be at the pointer position, but
 
346
should be ignored, since it is put up by the drag source as an icon.
 
347
</td>
 
348
</tr>
 
349
<tr>
 
350
<td><span class="term"><em class="parameter"><code>screen</code></em>&#160;:</span></td>
 
351
<td> the screen where the destination window is sought. 
 
352
</td>
 
353
</tr>
 
354
<tr>
 
355
<td><span class="term"><em class="parameter"><code>x_root</code></em>&#160;:</span></td>
 
356
<td> the x position of the pointer in root coordinates.
 
357
</td>
 
358
</tr>
 
359
<tr>
 
360
<td><span class="term"><em class="parameter"><code>y_root</code></em>&#160;:</span></td>
 
361
<td> the y position of the pointer in root coordinates.
 
362
</td>
 
363
</tr>
 
364
<tr>
 
365
<td><span class="term"><em class="parameter"><code>dest_window</code></em>&#160;:</span></td>
 
366
<td> location to store the destination window in.
 
367
</td>
 
368
</tr>
 
369
<tr>
 
370
<td><span class="term"><em class="parameter"><code>protocol</code></em>&#160;:</span></td>
 
371
<td> location to store the DND protocol in.
 
372
</td>
 
373
</tr>
 
374
</tbody>
 
375
</table></div>
 
376
<p class="since">Since  2.2
 
377
</p>
 
378
</div>
 
379
<hr>
 
380
<div class="refsect2" lang="en">
 
381
<a name="id2778332"></a><h3>
 
382
<a name="gdk-drag-context-ref"></a>gdk_drag_context_ref ()</h3>
 
383
<a class="indexterm" name="id2778348"></a><pre class="programlisting">void                gdk_drag_context_ref                (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);</pre>
 
384
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 
385
<h3 class="title">Warning</h3>
 
386
<p><code class="literal">gdk_drag_context_ref</code> is deprecated and should not be used in newly-written code.</p>
 
387
</div>
 
388
<p>
 
389
Deprecated function; use <code class="function">g_object_ref()</code> instead.</p>
 
390
<p>
 
391
</p>
 
392
<div class="variablelist"><table border="0">
 
393
<col align="left" valign="top">
 
394
<tbody><tr>
 
395
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
396
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
397
</td>
 
398
</tr></tbody>
 
399
</table></div>
 
400
</div>
 
401
<hr>
 
402
<div class="refsect2" lang="en">
 
403
<a name="id2778430"></a><h3>
 
404
<a name="gdk-drag-begin"></a>gdk_drag_begin ()</h3>
 
405
<a class="indexterm" name="id2778443"></a><pre class="programlisting"><a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a>*     gdk_drag_begin                      (<a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *window,
 
406
                                                         GList *targets);</pre>
 
407
<p>
 
408
Starts a drag and creates a new drag context for it.
 
409
</p>
 
410
<p>
 
411
This function is called by the drag source.</p>
 
412
<p>
 
413
</p>
 
414
<div class="variablelist"><table border="0">
 
415
<col align="left" valign="top">
 
416
<tbody>
 
417
<tr>
 
418
<td><span class="term"><em class="parameter"><code>window</code></em>&#160;:</span></td>
 
419
<td> the source window for this drag.
 
420
</td>
 
421
</tr>
 
422
<tr>
 
423
<td><span class="term"><em class="parameter"><code>targets</code></em>&#160;:</span></td>
 
424
<td> the list of offered targets.
 
425
</td>
 
426
</tr>
 
427
<tr>
 
428
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
429
<td> a newly created <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
430
</td>
 
431
</tr>
 
432
</tbody>
 
433
</table></div>
 
434
</div>
 
435
<hr>
 
436
<div class="refsect2" lang="en">
 
437
<a name="id2778539"></a><h3>
 
438
<a name="gdk-drag-motion"></a>gdk_drag_motion ()</h3>
 
439
<a class="indexterm" name="id2778552"></a><pre class="programlisting">gboolean            gdk_drag_motion                     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
440
                                                         <a href="gdk-Windows.html#GdkWindow">GdkWindow</a> *dest_window,
 
441
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> protocol,
 
442
                                                         gint x_root,
 
443
                                                         gint y_root,
 
444
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a> suggested_action,
 
445
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a> possible_actions,
 
446
                                                         guint32 time_);</pre>
 
447
<p>
 
448
Updates the drag context when the pointer moves or the 
 
449
set of actions changes.
 
450
</p>
 
451
<p>
 
452
This function is called by the drag source.</p>
 
453
<p>
 
454
</p>
 
455
<div class="variablelist"><table border="0">
 
456
<col align="left" valign="top">
 
457
<tbody>
 
458
<tr>
 
459
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
460
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
461
</td>
 
462
</tr>
 
463
<tr>
 
464
<td><span class="term"><em class="parameter"><code>dest_window</code></em>&#160;:</span></td>
 
465
<td> the new destination window, obtained by 
 
466
    <a href="gdk-Drag-and-Drop.html#gdk-drag-find-window"><code class="function">gdk_drag_find_window()</code></a>.
 
467
</td>
 
468
</tr>
 
469
<tr>
 
470
<td><span class="term"><em class="parameter"><code>protocol</code></em>&#160;:</span></td>
 
471
<td> the DND protocol in use, obtained by <a href="gdk-Drag-and-Drop.html#gdk-drag-find-window"><code class="function">gdk_drag_find_window()</code></a>.
 
472
</td>
 
473
</tr>
 
474
<tr>
 
475
<td><span class="term"><em class="parameter"><code>x_root</code></em>&#160;:</span></td>
 
476
<td> the x position of the pointer in root coordinates.
 
477
</td>
 
478
</tr>
 
479
<tr>
 
480
<td><span class="term"><em class="parameter"><code>y_root</code></em>&#160;:</span></td>
 
481
<td> the y position of the pointer in root coordinates.
 
482
</td>
 
483
</tr>
 
484
<tr>
 
485
<td><span class="term"><em class="parameter"><code>suggested_action</code></em>&#160;:</span></td>
 
486
<td> the suggested action.
 
487
</td>
 
488
</tr>
 
489
<tr>
 
490
<td><span class="term"><em class="parameter"><code>possible_actions</code></em>&#160;:</span></td>
 
491
<td> the possible actions.
 
492
</td>
 
493
</tr>
 
494
<tr>
 
495
<td><span class="term"><em class="parameter"><code>time_</code></em>&#160;:</span></td>
 
496
<td> the timestamp for this operation.
 
497
</td>
 
498
</tr>
 
499
<tr>
 
500
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
501
<td> FIXME
 
502
</td>
 
503
</tr>
 
504
</tbody>
 
505
</table></div>
 
506
</div>
 
507
<hr>
 
508
<div class="refsect2" lang="en">
 
509
<a name="id2778804"></a><h3>
 
510
<a name="gdk-drop-finish"></a>gdk_drop_finish ()</h3>
 
511
<a class="indexterm" name="id2778817"></a><pre class="programlisting">void                gdk_drop_finish                     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
512
                                                         gboolean success,
 
513
                                                         guint32 time_);</pre>
 
514
<p>
 
515
Ends the drag operation after a drop.
 
516
</p>
 
517
<p>
 
518
This function is called by the drag destination.</p>
 
519
<p>
 
520
</p>
 
521
<div class="variablelist"><table border="0">
 
522
<col align="left" valign="top">
 
523
<tbody>
 
524
<tr>
 
525
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
526
<td> a <span class="type">GtkDragContext</span>.
 
527
</td>
 
528
</tr>
 
529
<tr>
 
530
<td><span class="term"><em class="parameter"><code>success</code></em>&#160;:</span></td>
 
531
<td> <code class="literal">TRUE</code> if the data was successfully received.
 
532
</td>
 
533
</tr>
 
534
<tr>
 
535
<td><span class="term"><em class="parameter"><code>time_</code></em>&#160;:</span></td>
 
536
<td> the timestamp for this operation.
 
537
</td>
 
538
</tr>
 
539
</tbody>
 
540
</table></div>
 
541
</div>
 
542
<hr>
 
543
<div class="refsect2" lang="en">
 
544
<a name="id2778936"></a><h3>
 
545
<a name="gdk-drag-get-protocol"></a>gdk_drag_get_protocol ()</h3>
 
546
<a class="indexterm" name="id2778949"></a><pre class="programlisting">guint32             gdk_drag_get_protocol               (guint32 xid,
 
547
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);</pre>
 
548
<p>
 
549
Finds out the DND protocol supported by a window.</p>
 
550
<p>
 
551
</p>
 
552
<div class="variablelist"><table border="0">
 
553
<col align="left" valign="top">
 
554
<tbody>
 
555
<tr>
 
556
<td><span class="term"><em class="parameter"><code>xid</code></em>&#160;:</span></td>
 
557
<td> the X id of the destination window.
 
558
</td>
 
559
</tr>
 
560
<tr>
 
561
<td><span class="term"><em class="parameter"><code>protocol</code></em>&#160;:</span></td>
 
562
<td> location where the supported DND protocol is returned.
 
563
</td>
 
564
</tr>
 
565
<tr>
 
566
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
567
<td> the X id of the window where the drop should happen. This 
 
568
   may be <em class="parameter"><code>xid</code></em> or the X id of a proxy window, or None if <em class="parameter"><code>xid</code></em> doesn't
 
569
   support Drag and Drop.
 
570
</td>
 
571
</tr>
 
572
</tbody>
 
573
</table></div>
 
574
</div>
 
575
<hr>
 
576
<div class="refsect2" lang="en">
 
577
<a name="id2779047"></a><h3>
 
578
<a name="gdk-drag-get-protocol-for-display"></a>gdk_drag_get_protocol_for_display ()</h3>
 
579
<a class="indexterm" name="id2779064"></a><pre class="programlisting">guint32             gdk_drag_get_protocol_for_display   (<a href="GdkDisplay.html" title="GdkDisplay">GdkDisplay</a> *display,
 
580
                                                         guint32 xid,
 
581
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a> *protocol);</pre>
 
582
<p>
 
583
Finds out the DND protocol supported by a window.</p>
 
584
<p>
 
585
 
 
586
</p>
 
587
<div class="variablelist"><table border="0">
 
588
<col align="left" valign="top">
 
589
<tbody>
 
590
<tr>
 
591
<td><span class="term"><em class="parameter"><code>display</code></em>&#160;:</span></td>
 
592
<td> the <a href="GdkDisplay.html" title="GdkDisplay"><span class="type">GdkDisplay</span></a> where the destination window resides
 
593
</td>
 
594
</tr>
 
595
<tr>
 
596
<td><span class="term"><em class="parameter"><code>xid</code></em>&#160;:</span></td>
 
597
<td> the X id of the destination window.
 
598
</td>
 
599
</tr>
 
600
<tr>
 
601
<td><span class="term"><em class="parameter"><code>protocol</code></em>&#160;:</span></td>
 
602
<td> location where the supported DND protocol is returned.
 
603
</td>
 
604
</tr>
 
605
<tr>
 
606
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
607
<td> the X id of the window where the drop should happen. This 
 
608
    may be <em class="parameter"><code>xid</code></em> or the X id of a proxy window, or None if <em class="parameter"><code>xid</code></em> doesn't
 
609
    support Drag and Drop.
 
610
</td>
 
611
</tr>
 
612
</tbody>
 
613
</table></div>
 
614
<p class="since">Since  2.2
 
615
</p>
 
616
</div>
 
617
<hr>
 
618
<div class="refsect2" lang="en">
 
619
<a name="id2779198"></a><h3>
 
620
<a name="GdkDragProtocol"></a>enum GdkDragProtocol</h3>
 
621
<a class="indexterm" name="id2779211"></a><pre class="programlisting">typedef enum
 
622
{
 
623
  GDK_DRAG_PROTO_MOTIF,
 
624
  GDK_DRAG_PROTO_XDND,
 
625
  GDK_DRAG_PROTO_ROOTWIN,         /* A root window with nobody claiming
 
626
                                   * drags */
 
627
  GDK_DRAG_PROTO_NONE,            /* Not a valid drag window */
 
628
  GDK_DRAG_PROTO_WIN32_DROPFILES, /* The simple WM_DROPFILES dnd */
 
629
  GDK_DRAG_PROTO_OLE2,            /* The complex OLE2 dnd (not implemented) */
 
630
  GDK_DRAG_PROTO_LOCAL            /* Intra-app */
 
631
} GdkDragProtocol;
 
632
</pre>
 
633
<p>
 
634
Used in <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a> to indicate the protocol according to
 
635
which DND is done.
 
636
</p>
 
637
<div class="variablelist"><table border="0">
 
638
<col align="left" valign="top">
 
639
<tbody>
 
640
<tr>
 
641
<td><span class="term"><a name="GDK-DRAG-PROTO-MOTIF:CAPS"></a><code class="literal">GDK_DRAG_PROTO_MOTIF</code></span></td>
 
642
<td>The Motif DND protocol.
 
643
</td>
 
644
</tr>
 
645
<tr>
 
646
<td><span class="term"><a name="GDK-DRAG-PROTO-XDND:CAPS"></a><code class="literal">GDK_DRAG_PROTO_XDND</code></span></td>
 
647
<td>The Xdnd protocol.
 
648
</td>
 
649
</tr>
 
650
<tr>
 
651
<td><span class="term"><a name="GDK-DRAG-PROTO-ROOTWIN:CAPS"></a><code class="literal">GDK_DRAG_PROTO_ROOTWIN</code></span></td>
 
652
<td>An extension to the Xdnd protocol for
 
653
  unclaimed root window drops.
 
654
</td>
 
655
</tr>
 
656
<tr>
 
657
<td><span class="term"><a name="GDK-DRAG-PROTO-NONE:CAPS"></a><code class="literal">GDK_DRAG_PROTO_NONE</code></span></td>
 
658
<td>no protocol.
 
659
</td>
 
660
</tr>
 
661
<tr>
 
662
<td><span class="term"><a name="GDK-DRAG-PROTO-WIN32-DROPFILES:CAPS"></a><code class="literal">GDK_DRAG_PROTO_WIN32_DROPFILES</code></span></td>
 
663
<td>The simple WM_DROPFILES protocol.
 
664
</td>
 
665
</tr>
 
666
<tr>
 
667
<td><span class="term"><a name="GDK-DRAG-PROTO-OLE2:CAPS"></a><code class="literal">GDK_DRAG_PROTO_OLE2</code></span></td>
 
668
<td>The complex OLE2 DND protocol (not implemented).
 
669
</td>
 
670
</tr>
 
671
<tr>
 
672
<td><span class="term"><a name="GDK-DRAG-PROTO-LOCAL:CAPS"></a><code class="literal">GDK_DRAG_PROTO_LOCAL</code></span></td>
 
673
<td>Intra-application DND.
 
674
 
 
675
</td>
 
676
</tr>
 
677
</tbody>
 
678
</table></div>
 
679
</div>
 
680
<hr>
 
681
<div class="refsect2" lang="en">
 
682
<a name="id2779408"></a><h3>
 
683
<a name="gdk-drag-context-unref"></a>gdk_drag_context_unref ()</h3>
 
684
<a class="indexterm" name="id2779424"></a><pre class="programlisting">void                gdk_drag_context_unref              (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);</pre>
 
685
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 
686
<h3 class="title">Warning</h3>
 
687
<p><code class="literal">gdk_drag_context_unref</code> is deprecated and should not be used in newly-written code.</p>
 
688
</div>
 
689
<p>
 
690
Deprecated function; use <code class="function">g_object_unref()</code> instead.</p>
 
691
<p>
 
692
</p>
 
693
<div class="variablelist"><table border="0">
 
694
<col align="left" valign="top">
 
695
<tbody><tr>
 
696
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
697
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
698
</td>
 
699
</tr></tbody>
 
700
</table></div>
 
701
</div>
 
702
<hr>
 
703
<div class="refsect2" lang="en">
 
704
<a name="id2779506"></a><h3>
 
705
<a name="GdkDragContext"></a>GdkDragContext</h3>
 
706
<a class="indexterm" name="id2779518"></a><pre class="programlisting">typedef struct {
 
707
  GObject parent_instance;
 
708
 
 
709
  
 
710
  GdkDragProtocol protocol;
 
711
  
 
712
  gboolean is_source;
 
713
  
 
714
  GdkWindow *source_window;
 
715
  GdkWindow *dest_window;
 
716
 
 
717
  GList *targets;
 
718
  GdkDragAction actions;
 
719
  GdkDragAction suggested_action;
 
720
  GdkDragAction action; 
 
721
 
 
722
  guint32 start_time;
 
723
} GdkDragContext;
 
724
</pre>
 
725
<p>
 
726
A <span class="structname">GdkDragContext</span> holds information about a 
 
727
drag in progress. It is used on both source and destination sides.
 
728
</p>
 
729
<div class="variablelist"><table border="0">
 
730
<col align="left" valign="top">
 
731
<tbody>
 
732
<tr>
 
733
<td><span class="term">GObject&#160;<em class="structfield"><code>parent_instance</code></em>;</span></td>
 
734
<td>the parent instance
 
735
</td>
 
736
</tr>
 
737
<tr>
 
738
<td><span class="term"><a href="gdk-Drag-and-Drop.html#GdkDragProtocol">GdkDragProtocol</a>&#160;<em class="structfield"><code>protocol</code></em>;</span></td>
 
739
<td>the DND protocol which governs this drag.
 
740
</td>
 
741
</tr>
 
742
<tr>
 
743
<td><span class="term">gboolean&#160;<em class="structfield"><code>is_source</code></em>;</span></td>
 
744
<td>
 
745
<code class="literal">TRUE</code> if the context is used on the source side.
 
746
</td>
 
747
</tr>
 
748
<tr>
 
749
<td><span class="term"><a href="gdk-Windows.html#GdkWindow">GdkWindow</a>&#160;*<em class="structfield"><code>source_window</code></em>;</span></td>
 
750
<td>the source of this drag.
 
751
</td>
 
752
</tr>
 
753
<tr>
 
754
<td><span class="term"><a href="gdk-Windows.html#GdkWindow">GdkWindow</a>&#160;*<em class="structfield"><code>dest_window</code></em>;</span></td>
 
755
<td>the destination window of this drag.
 
756
</td>
 
757
</tr>
 
758
<tr>
 
759
<td><span class="term">GList&#160;*<em class="structfield"><code>targets</code></em>;</span></td>
 
760
<td>a list of targets offered by the source.
 
761
</td>
 
762
</tr>
 
763
<tr>
 
764
<td><span class="term"><a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a>&#160;<em class="structfield"><code>actions</code></em>;</span></td>
 
765
<td>a bitmask of actions proposed by the source when 
 
766
   <em class="parameter"><code>suggested_action</code></em> is <a href="gdk-Drag-and-Drop.html#GDK-ACTION-ASK:CAPS"><code class="literal">GDK_ACTION_ASK</code></a>.
 
767
</td>
 
768
</tr>
 
769
<tr>
 
770
<td><span class="term"><a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a>&#160;<em class="structfield"><code>suggested_action</code></em>;</span></td>
 
771
<td>the action suggested by the source.
 
772
</td>
 
773
</tr>
 
774
<tr>
 
775
<td><span class="term"><a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a>&#160;<em class="structfield"><code>action</code></em>;</span></td>
 
776
<td>the action chosen by the destination.
 
777
</td>
 
778
</tr>
 
779
<tr>
 
780
<td><span class="term">guint32&#160;<em class="structfield"><code>start_time</code></em>;</span></td>
 
781
<td>a timestamp recording the start time of this drag.
 
782
 
 
783
</td>
 
784
</tr>
 
785
</tbody>
 
786
</table></div>
 
787
</div>
 
788
<hr>
 
789
<div class="refsect2" lang="en">
 
790
<a name="id2779785"></a><h3>
 
791
<a name="GdkDragAction"></a>enum GdkDragAction</h3>
 
792
<a class="indexterm" name="id2779798"></a><pre class="programlisting">typedef enum
 
793
{
 
794
  GDK_ACTION_DEFAULT = 1 &lt;&lt; 0,
 
795
  GDK_ACTION_COPY    = 1 &lt;&lt; 1,
 
796
  GDK_ACTION_MOVE    = 1 &lt;&lt; 2,
 
797
  GDK_ACTION_LINK    = 1 &lt;&lt; 3,
 
798
  GDK_ACTION_PRIVATE = 1 &lt;&lt; 4,
 
799
  GDK_ACTION_ASK     = 1 &lt;&lt; 5
 
800
} GdkDragAction;
 
801
</pre>
 
802
<p>
 
803
Used in <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a> to indicate what the destination
 
804
should do with the dropped data.
 
805
</p>
 
806
<div class="variablelist"><table border="0">
 
807
<col align="left" valign="top">
 
808
<tbody>
 
809
<tr>
 
810
<td><span class="term"><a name="GDK-ACTION-DEFAULT:CAPS"></a><code class="literal">GDK_ACTION_DEFAULT</code></span></td>
 
811
<td>Means nothing, and should not be used.
 
812
</td>
 
813
</tr>
 
814
<tr>
 
815
<td><span class="term"><a name="GDK-ACTION-COPY:CAPS"></a><code class="literal">GDK_ACTION_COPY</code></span></td>
 
816
<td>Copy the data.
 
817
</td>
 
818
</tr>
 
819
<tr>
 
820
<td><span class="term"><a name="GDK-ACTION-MOVE:CAPS"></a><code class="literal">GDK_ACTION_MOVE</code></span></td>
 
821
<td>Move the data, i.e. first copy it, then delete
 
822
  it from the source using the DELETE target of the X selection protocol.
 
823
</td>
 
824
</tr>
 
825
<tr>
 
826
<td><span class="term"><a name="GDK-ACTION-LINK:CAPS"></a><code class="literal">GDK_ACTION_LINK</code></span></td>
 
827
<td>Add a link to the data. Note that this is only
 
828
  useful if source and destination agree on what it means.
 
829
</td>
 
830
</tr>
 
831
<tr>
 
832
<td><span class="term"><a name="GDK-ACTION-PRIVATE:CAPS"></a><code class="literal">GDK_ACTION_PRIVATE</code></span></td>
 
833
<td>Special action which tells the source that the
 
834
  destination will do something that the source doesn't understand.
 
835
</td>
 
836
</tr>
 
837
<tr>
 
838
<td><span class="term"><a name="GDK-ACTION-ASK:CAPS"></a><code class="literal">GDK_ACTION_ASK</code></span></td>
 
839
<td>Ask the user what to do with the data.
 
840
 
 
841
</td>
 
842
</tr>
 
843
</tbody>
 
844
</table></div>
 
845
</div>
 
846
<hr>
 
847
<div class="refsect2" lang="en">
 
848
<a name="id2779972"></a><h3>
 
849
<a name="gdk-drag-status"></a>gdk_drag_status ()</h3>
 
850
<a class="indexterm" name="id2779984"></a><pre class="programlisting">void                gdk_drag_status                     (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context,
 
851
                                                         <a href="gdk-Drag-and-Drop.html#GdkDragAction">GdkDragAction</a> action,
 
852
                                                         guint32 time_);</pre>
 
853
<p>
 
854
Selects one of the actions offered by the drag source.
 
855
</p>
 
856
<p>
 
857
This function is called by the drag destination in response to
 
858
<a href="gdk-Drag-and-Drop.html#gdk-drag-motion"><code class="function">gdk_drag_motion()</code></a> called by the drag source.</p>
 
859
<p>
 
860
</p>
 
861
<div class="variablelist"><table border="0">
 
862
<col align="left" valign="top">
 
863
<tbody>
 
864
<tr>
 
865
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
866
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>.
 
867
</td>
 
868
</tr>
 
869
<tr>
 
870
<td><span class="term"><em class="parameter"><code>action</code></em>&#160;:</span></td>
 
871
<td> the selected action which will be taken when a drop happens, 
 
872
   or 0 to indicate that a drop will not be accepted.
 
873
</td>
 
874
</tr>
 
875
<tr>
 
876
<td><span class="term"><em class="parameter"><code>time_</code></em>&#160;:</span></td>
 
877
<td> the timestamp for this operation.
 
878
</td>
 
879
</tr>
 
880
</tbody>
 
881
</table></div>
 
882
</div>
 
883
<hr>
 
884
<div class="refsect2" lang="en">
 
885
<a name="id2780105"></a><h3>
 
886
<a name="gdk-drag-drop-succeeded"></a>gdk_drag_drop_succeeded ()</h3>
 
887
<a class="indexterm" name="id2780120"></a><pre class="programlisting">gboolean            gdk_drag_drop_succeeded             (<a href="gdk-Drag-and-Drop.html#GdkDragContext">GdkDragContext</a> *context);</pre>
 
888
<p>
 
889
Returns wether the dropped data has been successfully 
 
890
transferred. This function is intended to be used while 
 
891
handling a <a href="gdk-Events.html#GDK-DROP-FINISHED:CAPS"><code class="literal">GDK_DROP_FINISHED</code></a> event, its return value is
 
892
meaningless at other times.</p>
 
893
<p>
 
894
 
 
895
</p>
 
896
<div class="variablelist"><table border="0">
 
897
<col align="left" valign="top">
 
898
<tbody>
 
899
<tr>
 
900
<td><span class="term"><em class="parameter"><code>context</code></em>&#160;:</span></td>
 
901
<td> a <a href="gdk-Drag-and-Drop.html#GdkDragContext"><span class="type">GdkDragContext</span></a>
 
902
</td>
 
903
</tr>
 
904
<tr>
 
905
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
906
<td> <code class="literal">TRUE</code> if the drop was successful.
 
907
 
 
908
</td>
 
909
</tr>
 
910
</tbody>
 
911
</table></div>
 
912
<p class="since">Since  2.6
 
913
</p>
 
914
</div>
 
915
</div>
 
916
</div>
 
917
</body>
 
918
</html>