1 /* -*- Mode: C; c-file-style: "gnu"; tab-width: 8 -*- */ 2 /* GTK - The GIMP Toolkit 3 * Copyright (C) 2015 Red Hat, Inc. 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 17 */ 18 19 #ifndef __GTK_DND_PRIVATE_H__ 20 #define __GTK_DND_PRIVATE_H__ 21 22 23 #include <gtk/gtkwidget.h> 24 #include <gtk/gtkselection.h> 25 #include <gtk/gtkdragdest.h> 26 27 #include "gtkimagedefinitionprivate.h" 28 29 typedef struct _GtkDragDestSite GtkDragDestSite; 30 struct _GtkDragDestSite 31 { 32 GtkDestDefaults flags; 33 GtkTargetList *target_list; 34 GdkDragAction actions; 35 GdkWindow *proxy_window; 36 GdkDragProtocol proxy_protocol; 37 guint do_proxy : 1; 38 guint proxy_coords : 1; 39 guint have_drag : 1; 40 guint track_motion : 1; 41 }; 42 43 G_BEGIN_DECLS 44 45 GdkDragContext * gtk_drag_begin_internal (GtkWidget *widget, 46 gboolean *out_needs_icon, 47 GtkTargetList *target_list, 48 GdkDragAction actions, 49 gint button, 50 const GdkEvent *event, 51 int x, 52 int y); 53 void gtk_drag_set_icon_definition (GdkDragContext *context, 54 GtkImageDefinition *def, 55 gint hot_x, 56 gint hot_y); 57 void _gtk_drag_source_handle_event (GtkWidget *widget, 58 GdkEvent *event); 59 void _gtk_drag_dest_handle_event (GtkWidget *toplevel, 60 GdkEvent *event); 61 62 G_END_DECLS 63 64 #endif /* __GTK_DND_PRIVATE_H__ */ 65