Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

gtk-GtkTreeView-drag-and-drop

GtkTreeView drag-and-drop


Description

Interfaces for drag-and-drop support in GtkTreeView

Methods and Functions

gtkTreeDragSourceDragDataDelete(object, path)
gtkTreeDragSourceDragDataGet(object, path)
gtkTreeDragSourceRowDraggable(object, path)
gtkTreeDragDestDragDataReceived(object, dest, selection.data)
gtkTreeDragDestRowDropPossible(object, dest.path, selection.data)
gtkTreeSetRowDragData(object, tree.model, path)
gtkTreeGetRowDragData(object)

Hierarchy

GInterface
   +----GtkTreeDragSource
GInterface
   +----GtkTreeDragDest

Implementations

GtkTreeDragSource is implemented by GtkListStore, GtkTreeModelFilter, GtkTreeModelSort and GtkTreeStore. GtkTreeDragDest is implemented by GtkListStore and GtkTreeStore.

Detailed Description

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: gtkTreeViewSetDragDestRow, gtkTreeViewGetDragDestRow, gtkTreeViewGetDestRowAtPos, gtkTreeViewCreateRowDragIcon, gtkTreeSetRowDragData and gtkTreeGetRowDragData. 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.

Structures

GtkTreeDragSource

undocumented

GtkTreeDragDest

undocumented

Author(s)

Derived by RGtkGen from GTK+ documentation

References


RGtk2

R Bindings for Gtk 2.8.0 and Above

v2.20.36
GPL
Authors
Michael Lawrence <michafla@gene.com> and Duncan Temple Lang <duncan@wald.ucdavis.edu>
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.