2 * ROX-Filer, filer for the ROX desktop project
3 * By Thomas Leonard, <tal197@users.sourceforge.net>.
20 MOTION_NONE
, /* Ignoring motion events - click to start! */
21 MOTION_REPOSITION
, /* Motion events move current_grab_icon */
22 MOTION_READY_FOR_DND
, /* Moving much will start dnd */
23 MOTION_DISABLED
, /* Release all buttons to go to MOTION_NONE */
25 extern MotionType motion_state
;
26 extern gint drag_start_x
, drag_start_y
;
27 extern gint motion_buttons_pressed
;
29 extern gboolean o_no_hostnames
;
30 extern int spring_in_progress
;
31 extern Option o_dnd_spring_open
, o_dnd_drag_to_icons
;
32 extern Option o_dnd_left_menu
;
33 extern const char *drop_dest_prog
;
34 extern const char *drop_dest_dir
;
35 extern const char *drop_dest_pass_through
;
36 extern const char *drop_dest_bookmark
;
37 extern GdkAtom XdndDirectSave0
;
38 extern GdkAtom text_uri_list
;
39 extern GdkAtom _rox_run_action
;
40 extern GdkAtom application_octet_stream
;
41 extern GdkAtom xa_string
;
43 void drag_selection(GtkWidget
*widget
, GdkEventMotion
*event
, guchar
*uri_list
);
44 void drag_one_item(GtkWidget
*widget
,
45 GdkEventMotion
*event
,
46 const guchar
*full_path
,
49 void drag_data_get(GtkWidget
*widget
,
50 GdkDragContext
*context
,
51 GtkSelectionData
*selection_data
,
55 void make_drop_target(GtkWidget
*widget
, GtkDestDefaults defaults
);
56 void drag_set_pinboard_dest(GtkWidget
*widget
);
58 gboolean
provides(GdkDragContext
*context
, GdkAtom target
);
60 void dnd_spring_load(GdkDragContext
*context
, FilerWindow
*src_win
);
61 void dnd_spring_abort(void);
62 const guchar
*dnd_motion_item(GdkDragContext
*context
, DirItem
**item_p
);
64 gboolean
dnd_motion_press(GtkWidget
*widget
, GdkEventButton
*event
);
65 void dnd_motion_start(MotionType motion
);
66 gboolean
dnd_motion_release(GdkEventButton
*event
);
67 void dnd_motion_disable(void);
68 void dnd_motion_ungrab(void);
69 gboolean
dnd_motion_moved(GdkEventMotion
*event
);
70 void dnd_motion_grab_pointer(void);