Top |
GtkTreeModelSort implements GtkTreeModel, GtkTreeSortable and GtkTreeDragSource.
GtkTreeModel *
gtk_tree_model_sort_new_with_model (GtkTreeModel *child_model
);
Creates a new GtkTreeModel, with child_model
as the child model.
GtkTreeModel *
gtk_tree_model_sort_get_model (GtkTreeModelSort *tree_model
);
Returns the model the GtkTreeModelSort is sorting.
GtkTreePath * gtk_tree_model_sort_convert_child_path_to_path (GtkTreeModelSort *tree_model_sort
,GtkTreePath *child_path
);
Converts child_path
to a path relative to tree_model_sort
. That is,
child_path
points to a path in the child model. The returned path will
point to the same row in the sorted model. If child_path
isn't a valid
path on the child model, then NULL
is returned.
gboolean gtk_tree_model_sort_convert_child_iter_to_iter (GtkTreeModelSort *tree_model_sort
,GtkTreeIter *sort_iter
,GtkTreeIter *child_iter
);
Sets sort_iter
to point to the row in tree_model_sort
that corresponds to
the row pointed at by child_iter
. If sort_iter
was not set, FALSE
is returned. Note: a boolean is only returned since 2.14.
tree_model_sort |
||
sort_iter |
An uninitialized GtkTreeIter. |
[out] |
child_iter |
A valid GtkTreeIter pointing to a row on the child model |
GtkTreePath * gtk_tree_model_sort_convert_path_to_child_path (GtkTreeModelSort *tree_model_sort
,GtkTreePath *sorted_path
);
Converts sorted_path
to a path on the child model of tree_model_sort
.
That is, sorted_path
points to a location in tree_model_sort
. The
returned path will point to the same location in the model not being
sorted. If sorted_path
does not point to a location in the child model,
NULL
is returned.
void gtk_tree_model_sort_convert_iter_to_child_iter (GtkTreeModelSort *tree_model_sort
,GtkTreeIter *child_iter
,GtkTreeIter *sorted_iter
);
Sets child_iter
to point to the row pointed to by sorted_iter
.
tree_model_sort |
||
child_iter |
An uninitialized GtkTreeIter. |
[out] |
sorted_iter |
A valid GtkTreeIter pointing to a row on |
void
gtk_tree_model_sort_reset_default_sort_func
(GtkTreeModelSort *tree_model_sort
);
This resets the default sort function to be in the 'unsorted' state. That is, it is in the same order as the child model. It will re-sort the model to be in the same order as the child model only if the GtkTreeModelSort is in 'unsorted' state.
void
gtk_tree_model_sort_clear_cache (GtkTreeModelSort *tree_model_sort
);
This function should almost never be called. It clears the tree_model_sort
of any cached iterators that haven't been reffed with
gtk_tree_model_ref_node()
. This might be useful if the child model being
sorted is static (and doesn't change often) and there has been a lot of
unreffed access to nodes. As a side effect of this function, all unreffed
iters will be invalid.
gboolean gtk_tree_model_sort_iter_is_valid (GtkTreeModelSort *tree_model_sort
,GtkTreeIter *iter
);
This function is slow. Only use it for debugging and/or testing purposes.
Checks if the given iter is a valid iter for this GtkTreeModelSort.
Since: 2.2
“model”
property“model” GtkTreeModel *
The model for the TreeModelSort to sort.
Owner: GtkTreeModelSort
Flags: Read / Write / Construct Only