1 <!-- ##### SECTION Title ##### -->
4 <!-- ##### SECTION Short_Description ##### -->
5 A widget for displaying both trees and lists
7 <!-- ##### SECTION Long_Description ##### -->
9 Widget that displays any object that implements the <link
10 linkend="GtkTreeModel">GtkTreeModel</link> interface.
14 Please refer to the <link linkend="TreeWidget">tree widget conceptual overview</link>
15 for an overview of all the objects and data types related to the tree widget and how
19 <!-- ##### SECTION See_Also ##### -->
21 #GtkTreeViewColumn, #GtkTreeSelection, #GtkTreeDnd, #GtkTreeMode, #GtkTreeSortable, #GtkTreeModelSort, #GtkListStore, #GtkTreeStore, #GtkCellRenderer, #GtkCellEditable, #GtkCellRendererPixbuf, #GtkCellRendererText, #GtkCellRendererToggle
24 <!-- ##### SECTION Stability_Level ##### -->
27 <!-- ##### STRUCT GtkTreeView ##### -->
33 <!-- ##### SIGNAL GtkTreeView::columns-changed ##### -->
38 @treeview: the object which received the signal.
40 <!-- ##### SIGNAL GtkTreeView::cursor-changed ##### -->
45 @treeview: the object which received the signal.
47 <!-- ##### SIGNAL GtkTreeView::expand-collapse-cursor-row ##### -->
52 @treeview: the object which received the signal.
58 <!-- ##### SIGNAL GtkTreeView::move-cursor ##### -->
63 @treeview: the object which received the signal.
68 <!-- ##### SIGNAL GtkTreeView::row-activated ##### -->
73 @treeview: the object which received the signal.
77 <!-- ##### SIGNAL GtkTreeView::row-collapsed ##### -->
82 @treeview: the object which received the signal.
86 <!-- ##### SIGNAL GtkTreeView::row-expanded ##### -->
91 @treeview: the object which received the signal.
95 <!-- ##### SIGNAL GtkTreeView::select-all ##### -->
100 @treeview: the object which received the signal.
103 <!-- ##### SIGNAL GtkTreeView::select-cursor-parent ##### -->
108 @treeview: the object which received the signal.
111 <!-- ##### SIGNAL GtkTreeView::select-cursor-row ##### -->
116 @treeview: the object which received the signal.
120 <!-- ##### SIGNAL GtkTreeView::set-scroll-adjustments ##### -->
125 @treeview: the object which received the signal.
129 <!-- ##### SIGNAL GtkTreeView::start-interactive-search ##### -->
134 @treeview: the object which received the signal.
137 <!-- ##### SIGNAL GtkTreeView::test-collapse-row ##### -->
142 @treeview: the object which received the signal.
147 <!-- ##### SIGNAL GtkTreeView::test-expand-row ##### -->
152 @treeview: the object which received the signal.
157 <!-- ##### SIGNAL GtkTreeView::toggle-cursor-row ##### -->
162 @treeview: the object which received the signal.
165 <!-- ##### SIGNAL GtkTreeView::unselect-all ##### -->
170 @treeview: the object which received the signal.
173 <!-- ##### ARG GtkTreeView:enable-search ##### -->
178 <!-- ##### ARG GtkTreeView:expander-column ##### -->
183 <!-- ##### ARG GtkTreeView:fixed-height-mode ##### -->
188 <!-- ##### ARG GtkTreeView:hadjustment ##### -->
193 <!-- ##### ARG GtkTreeView:headers-clickable ##### -->
198 <!-- ##### ARG GtkTreeView:headers-visible ##### -->
203 <!-- ##### ARG GtkTreeView:hover-expand ##### -->
208 <!-- ##### ARG GtkTreeView:hover-selection ##### -->
213 <!-- ##### ARG GtkTreeView:model ##### -->
218 <!-- ##### ARG GtkTreeView:reorderable ##### -->
223 <!-- ##### ARG GtkTreeView:rules-hint ##### -->
228 <!-- ##### ARG GtkTreeView:search-column ##### -->
233 <!-- ##### ARG GtkTreeView:vadjustment ##### -->
238 <!-- ##### ARG GtkTreeView:allow-rules ##### -->
243 <!-- ##### ARG GtkTreeView:even-row-color ##### -->
248 <!-- ##### ARG GtkTreeView:expander-size ##### -->
253 <!-- ##### ARG GtkTreeView:horizontal-separator ##### -->
258 <!-- ##### ARG GtkTreeView:indent-expanders ##### -->
263 <!-- ##### ARG GtkTreeView:odd-row-color ##### -->
268 <!-- ##### ARG GtkTreeView:vertical-separator ##### -->
273 <!-- ##### ENUM GtkTreeViewDropPosition ##### -->
275 An enum for determining where a dropped row goes.
278 @GTK_TREE_VIEW_DROP_BEFORE:
279 @GTK_TREE_VIEW_DROP_AFTER:
280 @GTK_TREE_VIEW_DROP_INTO_OR_BEFORE:
281 @GTK_TREE_VIEW_DROP_INTO_OR_AFTER:
283 <!-- ##### STRUCT GtkTreeViewPrivate ##### -->
285 A private struct for internal use only. The definition of this
286 structure is not publically available.
290 <!-- ##### USER_FUNCTION GtkTreeViewColumnDropFunc ##### -->
292 Function type for determining whether @column can be dropped in a
293 particular spot (as determined by @prev_column and @next_column). In
294 left to right locales, @prev_column is on the left of the potential drop
295 spot, and @next_column is on the right. In right to left mode, this is
296 reversed. This function should return %TRUE if the spot is a valid drop
297 spot. Please note that returning %TRUE does not actually indicate that
298 the column drop was made, but is meant only to indicate a possible drop
302 @tree_view: A #GtkTreeView
303 @column: The #GtkTreeViewColumn being dragged
304 @prev_column: A #GtkTreeViewColumn on one side of @column
305 @next_column: A #GtkTreeViewColumn on the other side of @column
307 @Returns: %TRUE, if #column can be dropped in this spot
310 <!-- ##### USER_FUNCTION GtkTreeViewMappingFunc ##### -->
312 Function used for #gtk_tree_view_map_expanded_rows.
315 @tree_view: A #GtkTreeView
316 @path: The path that's expanded
317 @user_data: user data
320 <!-- ##### USER_FUNCTION GtkTreeViewSearchEqualFunc ##### -->
322 A function used for checking whether a row in @model matches
323 a search key string entered by the user. Note the return value
324 is reversed from what you would normally expect, though it
325 has some similarity to strcmp() returning 0 for equal strings.
328 @model: the #GtkTreeModel being searched
329 @column: the search column set by gtk_tree_view_set_search_column()
330 @key: the key string to compare with
331 @iter: a #GtkTreeIter pointing the row of @model that should be compared
333 @search_data: user data from gtk_tree_view_set_search_equal_func()
334 @Returns: %FALSE if the row matches, %TRUE otherwise.
337 <!-- ##### FUNCTION gtk_tree_view_new ##### -->
345 <!-- ##### FUNCTION gtk_tree_view_new_with_model ##### -->
354 <!-- ##### FUNCTION gtk_tree_view_get_model ##### -->
363 <!-- ##### FUNCTION gtk_tree_view_set_model ##### -->
370 <!-- # Unused Parameters # -->
374 <!-- ##### FUNCTION gtk_tree_view_get_selection ##### -->
383 <!-- ##### FUNCTION gtk_tree_view_get_hadjustment ##### -->
390 <!-- # Unused Parameters # -->
394 <!-- ##### FUNCTION gtk_tree_view_set_hadjustment ##### -->
401 <!-- # Unused Parameters # -->
405 <!-- ##### FUNCTION gtk_tree_view_get_vadjustment ##### -->
412 <!-- # Unused Parameters # -->
416 <!-- ##### FUNCTION gtk_tree_view_set_vadjustment ##### -->
423 <!-- # Unused Parameters # -->
427 <!-- ##### FUNCTION gtk_tree_view_get_headers_visible ##### -->
436 <!-- ##### FUNCTION gtk_tree_view_set_headers_visible ##### -->
445 <!-- ##### FUNCTION gtk_tree_view_columns_autosize ##### -->
453 <!-- ##### FUNCTION gtk_tree_view_set_headers_clickable ##### -->
460 <!-- # Unused Parameters # -->
464 <!-- ##### FUNCTION gtk_tree_view_set_rules_hint ##### -->
473 <!-- ##### FUNCTION gtk_tree_view_get_rules_hint ##### -->
482 <!-- ##### FUNCTION gtk_tree_view_append_column ##### -->
492 <!-- ##### FUNCTION gtk_tree_view_remove_column ##### -->
502 <!-- ##### FUNCTION gtk_tree_view_insert_column ##### -->
513 <!-- ##### FUNCTION gtk_tree_view_insert_column_with_attributes ##### -->
526 <!-- ##### FUNCTION gtk_tree_view_insert_column_with_data_func ##### -->
541 <!-- ##### FUNCTION gtk_tree_view_get_column ##### -->
551 <!-- ##### FUNCTION gtk_tree_view_get_columns ##### -->
560 <!-- ##### FUNCTION gtk_tree_view_move_column_after ##### -->
570 <!-- ##### FUNCTION gtk_tree_view_set_expander_column ##### -->
579 <!-- ##### FUNCTION gtk_tree_view_get_expander_column ##### -->
588 <!-- ##### FUNCTION gtk_tree_view_set_column_drag_function ##### -->
599 <!-- ##### FUNCTION gtk_tree_view_scroll_to_point ##### -->
609 <!-- ##### FUNCTION gtk_tree_view_scroll_to_cell ##### -->
622 <!-- ##### FUNCTION gtk_tree_view_set_cursor ##### -->
633 <!-- ##### FUNCTION gtk_tree_view_set_cursor_on_cell ##### -->
645 <!-- ##### FUNCTION gtk_tree_view_get_cursor ##### -->
655 <!-- ##### FUNCTION gtk_tree_view_row_activated ##### -->
665 <!-- ##### FUNCTION gtk_tree_view_expand_all ##### -->
673 <!-- ##### FUNCTION gtk_tree_view_collapse_all ##### -->
681 <!-- ##### FUNCTION gtk_tree_view_expand_to_path ##### -->
690 <!-- ##### FUNCTION gtk_tree_view_expand_row ##### -->
701 <!-- ##### FUNCTION gtk_tree_view_collapse_row ##### -->
711 <!-- ##### FUNCTION gtk_tree_view_map_expanded_rows ##### -->
721 <!-- ##### FUNCTION gtk_tree_view_row_expanded ##### -->
731 <!-- ##### FUNCTION gtk_tree_view_set_reorderable ##### -->
740 <!-- ##### FUNCTION gtk_tree_view_get_reorderable ##### -->
749 <!-- ##### FUNCTION gtk_tree_view_get_path_at_pos ##### -->
762 <!-- # Unused Parameters # -->
766 <!-- ##### FUNCTION gtk_tree_view_get_cell_area ##### -->
777 <!-- ##### FUNCTION gtk_tree_view_get_background_area ##### -->
788 <!-- ##### FUNCTION gtk_tree_view_get_visible_rect ##### -->
797 <!-- ##### FUNCTION gtk_tree_view_get_bin_window ##### -->
806 <!-- ##### FUNCTION gtk_tree_view_widget_to_tree_coords ##### -->
818 <!-- ##### FUNCTION gtk_tree_view_tree_to_widget_coords ##### -->
830 <!-- ##### FUNCTION gtk_tree_view_enable_model_drag_dest ##### -->
841 <!-- ##### FUNCTION gtk_tree_view_enable_model_drag_source ##### -->
853 <!-- ##### FUNCTION gtk_tree_view_unset_rows_drag_source ##### -->
861 <!-- ##### FUNCTION gtk_tree_view_unset_rows_drag_dest ##### -->
869 <!-- ##### FUNCTION gtk_tree_view_set_drag_dest_row ##### -->
879 <!-- ##### FUNCTION gtk_tree_view_get_drag_dest_row ##### -->
889 <!-- ##### FUNCTION gtk_tree_view_get_dest_row_at_pos ##### -->
902 <!-- ##### FUNCTION gtk_tree_view_create_row_drag_icon ##### -->
912 <!-- ##### FUNCTION gtk_tree_view_set_enable_search ##### -->
919 <!-- # Unused Parameters # -->
923 <!-- ##### FUNCTION gtk_tree_view_get_enable_search ##### -->
932 <!-- ##### FUNCTION gtk_tree_view_get_search_column ##### -->
941 <!-- ##### FUNCTION gtk_tree_view_set_search_column ##### -->
950 <!-- ##### FUNCTION gtk_tree_view_get_search_equal_func ##### -->
959 <!-- ##### FUNCTION gtk_tree_view_set_search_equal_func ##### -->
970 <!-- ##### FUNCTION gtk_tree_view_get_fixed_height_mode ##### -->
979 <!-- ##### FUNCTION gtk_tree_view_set_fixed_height_mode ##### -->
988 <!-- ##### FUNCTION gtk_tree_view_get_hover_selection ##### -->
997 <!-- ##### FUNCTION gtk_tree_view_set_hover_selection ##### -->
1006 <!-- ##### FUNCTION gtk_tree_view_get_hover_expand ##### -->
1015 <!-- ##### FUNCTION gtk_tree_view_set_hover_expand ##### -->
1024 <!-- ##### USER_FUNCTION GtkTreeDestroyCountFunc ##### -->
1035 <!-- ##### FUNCTION gtk_tree_view_set_destroy_count_func ##### -->
1046 <!-- ##### USER_FUNCTION GtkTreeViewRowSeparatorFunc ##### -->
1048 Function type for determining whether the row pointed to by @iter should
1049 be rendered as a separator. A common way to implement this is to have a
1050 boolean column in the model, whose values the #GtkTreeViewRowSeparatorFunc
1054 @model: the #GtkTreeModel
1055 @iter: a #GtkTreeIter pointing at a row in @model
1057 @Returns: %TRUE if the row is a separator
1060 <!-- ##### FUNCTION gtk_tree_view_get_row_separator_func ##### -->
1069 <!-- ##### FUNCTION gtk_tree_view_set_row_separator_func ##### -->