summaryrefslogtreecommitdiff
path: root/libnautilus-extensions/nautilus-drag.h
diff options
context:
space:
mode:
authorPavel Cisler <pavel@eazel.com>2000-06-02 13:51:23 +0000
committerPavel Cisler <pce@src.gnome.org>2000-06-02 13:51:23 +0000
commit38d84fb3c959703a77dd409ad7b92021c3c7227d (patch)
treed80538256d0ed7b2920de45294f9f17dfb8ec5b1 /libnautilus-extensions/nautilus-drag.h
parent8cef10fda0870b7f351fd29a4638eb696695d46a (diff)
downloadnautilus-38d84fb3c959703a77dd409ad7b92021c3c7227d.tar.gz
Move more code from nautilus-icon-dnd.c to the common nautilus-drag.c. Add
2000-06-02 Pavel Cisler <pavel@eazel.com> * libnautilus-extensions/nautilus-drag.c: * libnautilus-extensions/nautilus-drag.h: (add_one_gnome_icon_list), (add_one_uri_list), (nautilus_drag_drag_data_get): Move more code from nautilus-icon-dnd.c to the common nautilus-drag.c. Add a common nautilus_drag_drag_data_get function that gets passed iterators and assembles selection data. * libnautilus-extensions/nautilus-gtk-extensions.c: * libnautilus-extensions/nautilus-gtk-extensions.h: (nautilus_gtk_marshal_NONE__POINTER_INT_INT_INT): Added more marshalling glue. One day there will be enough for everyone. * libnautilus-extensions/nautilus-icon-dnd.c: (nautilus_icon_container_each_selected_icon): (icon_get_data_binder), (each_icon_get_data_binder), (drag_data_get_callback): Iterators and binders to support the NautilusIconContainer flavor of nautilus_drag_drag_data_get. * libnautilus-extensions/nautilus-list.c: * libnautilus-extensions/nautilus-list.h: * src/file-manager/fm-list-view.c: (nautilus_list_initialize_class), (nautilus_list_initialize), (nautilus_list_drag_begin), (nautilus_list_drag_end), (nautilus_list_drag_leave), (nautilus_list_drag_motion), (nautilus_list_drag_data_received), (nautilus_list_set_selection), (nautilus_list_each_selected_row), (row_get_data_binder), (each_icon_get_data_binder), (fm_list_drag_data_get), (create_list): Hookup fm_list_drag_data_get to support drags originating from the list view. Connect the drag_data_get to fm_list_view and handle it there. * libnautilus-extensions/nautilus-list.c: * src/file-manager/fm-list-view.c: (nautilus_list_initialize_class), (fm_list_handle_dropped_icons): Fix an improperly marshalled signal.
Diffstat (limited to 'libnautilus-extensions/nautilus-drag.h')
-rw-r--r--libnautilus-extensions/nautilus-drag.h26
1 files changed, 20 insertions, 6 deletions
diff --git a/libnautilus-extensions/nautilus-drag.h b/libnautilus-extensions/nautilus-drag.h
index b80bf7f59..31a7a6922 100644
--- a/libnautilus-extensions/nautilus-drag.h
+++ b/libnautilus-extensions/nautilus-drag.h
@@ -77,13 +77,19 @@ typedef struct {
#define NAUTILUS_ICON_DND_BGIMAGE_TYPE "property/bgimage"
#define NAUTILUS_ICON_DND_KEYWORD_TYPE "property/keyword"
-void
-nautilus_drag_init (NautilusDragInfo *drag_info,
- const GtkTargetEntry *drag_types, int drag_type_count,
- GdkBitmap *stipple);
+typedef void (* NautilusDragEachSelectedItemDataGet) (const char *url,
+ int x, int y, int w, int h,
+ gpointer data);
+typedef void (* NautilusDragEachSelectedItemIterator) (NautilusDragEachSelectedItemDataGet iteratee,
+ gpointer iterator_context,
+ gpointer data);
-void
-nautilus_drag_finalize (NautilusDragInfo *drag_info);
+void nautilus_drag_init (NautilusDragInfo *drag_info,
+ const GtkTargetEntry *drag_types,
+ int drag_type_count,
+ GdkBitmap *stipple);
+
+void nautilus_drag_finalize (NautilusDragInfo *drag_info);
DragSelectionItem *nautilus_drag_selection_item_new (void);
@@ -97,4 +103,12 @@ gboolean nautilus_drag_can_accept_item (NautilusFile *drop_target_item,
gboolean nautilus_drag_can_accept_items (NautilusFile *drop_target_item,
const GList *items);
+gboolean nautilus_drag_drag_data_get (GtkWidget *widget,
+ GdkDragContext *context,
+ GtkSelectionData *selection_data,
+ guint info,
+ guint32 time,
+ gpointer container_context,
+ NautilusDragEachSelectedItemIterator each_selected_item_iterator);
+
#endif