GtkTreeView drag-and-drop
Interfaces for drag-and-drop support in GtkTreeView
GTK+ supports Drag-and-Drop in tree views with a high-level and a low-level
API.
The low-level API consists of the GTK+ DND API, augmented by some treeview
utility functions: gtk_tree_view_set_drag_dest_row(),
gtk_tree_view_get_drag_dest_row(), gtk_tree_view_get_dest_row_at_pos(),
gtk_tree_view_create_row_drag_icon(), gtk_tree_set_row_drag_data() and
gtk_tree_get_row_drag_data(). This API leaves a lot of flexibility, but
nothing is done automatically, and implementing advanced features like
hover-to-open-rows or autoscrolling on top of this API is a lot of work.
On the other hand, if you write to the high-level API, then all the
bookkeeping of rows is done for you, as well as things like hover-to-open
and auto-scroll, but your models have to implement the
#GtkTreeDragSource and #GtkTreeDragDest interfaces.
@g_iface:
@row_draggable:
@drag_data_get:
@drag_data_delete:
@drag_source:
@path:
@Returns:
@drag_source:
@path:
@selection_data:
@Returns:
@drag_source:
@path:
@Returns:
@g_iface:
@drag_data_received:
@row_drop_possible:
@drag_dest:
@dest:
@selection_data:
@Returns:
@drag_dest:
@dest_path:
@selection_data:
@Returns:
@selection_data:
@tree_model:
@path:
@Returns:
@selection_data:
@tree_model:
@path:
@Returns: