]> Pileus Git - ~andy/gtk/blob - docs/reference/gtk/tmpl/gtktreednd.sgml
Make 3.0 parallel-installable to 2.x
[~andy/gtk] / docs / reference / gtk / tmpl / gtktreednd.sgml
1 <!-- ##### SECTION Title ##### -->
2 GtkTreeView drag-and-drop
3
4 <!-- ##### SECTION Short_Description ##### -->
5 Interfaces for drag-and-drop support in GtkTreeView
6
7 <!-- ##### SECTION Long_Description ##### -->
8 <para>
9 GTK+ supports Drag-and-Drop in tree views with a high-level and a low-level 
10 API.
11 </para>
12 <para>
13 The low-level API consists of the GTK+ DND API, augmented by some treeview 
14 utility functions: gtk_tree_view_set_drag_dest_row(),
15 gtk_tree_view_get_drag_dest_row(), gtk_tree_view_get_dest_row_at_pos(), 
16 gtk_tree_view_create_row_drag_icon(), gtk_tree_set_row_drag_data() and
17 gtk_tree_get_row_drag_data(). This API leaves a lot of flexibility, but
18 nothing is done automatically, and implementing advanced features like
19 hover-to-open-rows or autoscrolling on top of this API is a lot of work.
20 </para>
21 <para>
22 On the other hand, if you write to the high-level API, then all the 
23 bookkeeping of rows is done for you, as well as things like hover-to-open 
24 and auto-scroll, but your models have to implement the 
25 #GtkTreeDragSource and #GtkTreeDragDest interfaces.
26 </para>
27
28 <!-- ##### SECTION See_Also ##### -->
29 <para>
30
31 </para>
32
33 <!-- ##### SECTION Stability_Level ##### -->
34
35
36 <!-- ##### SECTION Image ##### -->
37
38
39 <!-- ##### STRUCT GtkTreeDragSource ##### -->
40 <para>
41
42 </para>
43
44
45 <!-- ##### STRUCT GtkTreeDragSourceIface ##### -->
46 <para>
47
48 </para>
49
50 @g_iface: 
51 @row_draggable: 
52 @drag_data_get: 
53 @drag_data_delete: 
54
55 <!-- ##### FUNCTION gtk_tree_drag_source_drag_data_delete ##### -->
56 <para>
57
58 </para>
59
60 @drag_source: 
61 @path: 
62 @Returns: 
63
64
65 <!-- ##### FUNCTION gtk_tree_drag_source_drag_data_get ##### -->
66 <para>
67
68 </para>
69
70 @drag_source: 
71 @path: 
72 @selection_data: 
73 @Returns: 
74
75
76 <!-- ##### FUNCTION gtk_tree_drag_source_row_draggable ##### -->
77 <para>
78
79 </para>
80
81 @drag_source: 
82 @path: 
83 @Returns: 
84
85
86 <!-- ##### STRUCT GtkTreeDragDest ##### -->
87 <para>
88
89 </para>
90
91
92 <!-- ##### STRUCT GtkTreeDragDestIface ##### -->
93 <para>
94
95 </para>
96
97 @g_iface: 
98 @drag_data_received: 
99 @row_drop_possible: 
100
101 <!-- ##### FUNCTION gtk_tree_drag_dest_drag_data_received ##### -->
102 <para>
103
104 </para>
105
106 @drag_dest: 
107 @dest: 
108 @selection_data: 
109 @Returns: 
110
111
112 <!-- ##### FUNCTION gtk_tree_drag_dest_row_drop_possible ##### -->
113 <para>
114
115 </para>
116
117 @drag_dest: 
118 @dest_path: 
119 @selection_data: 
120 @Returns: 
121
122
123 <!-- ##### FUNCTION gtk_tree_set_row_drag_data ##### -->
124 <para>
125
126 </para>
127
128 @selection_data: 
129 @tree_model: 
130 @path: 
131 @Returns: 
132
133
134 <!-- ##### FUNCTION gtk_tree_get_row_drag_data ##### -->
135 <para>
136
137 </para>
138
139 @selection_data: 
140 @tree_model: 
141 @path: 
142 @Returns: 
143
144