forked from AuroraMiddleware/gtk
report status in return value instead of spewing assertions. (#335729,
2006-06-12 Kristian Rietveld <kris@gtk.org> * gtk/gtktreemodelfilter.[ch] (gtk_tree_model_filter_convert_child_iter_to_iter), (gtk_tree_model_filter_convert_child_path_to_path): report status in return value instead of spewing assertions. (#335729, Yevgen Muntyan).
This commit is contained in:
parent
6bc87f5d3b
commit
563f28a88d
@ -1,3 +1,11 @@
|
|||||||
|
2006-06-12 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtktreemodelfilter.[ch]
|
||||||
|
(gtk_tree_model_filter_convert_child_iter_to_iter),
|
||||||
|
(gtk_tree_model_filter_convert_child_path_to_path): report status
|
||||||
|
in return value instead of spewing assertions. (#335729, Yevgen
|
||||||
|
Muntyan).
|
||||||
|
|
||||||
2006-06-12 Matthias Clasen <mclasen@redhat.com>
|
2006-06-12 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_finalize):
|
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_finalize):
|
||||||
|
@ -1,3 +1,11 @@
|
|||||||
|
2006-06-12 Kristian Rietveld <kris@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtktreemodelfilter.[ch]
|
||||||
|
(gtk_tree_model_filter_convert_child_iter_to_iter),
|
||||||
|
(gtk_tree_model_filter_convert_child_path_to_path): report status
|
||||||
|
in return value instead of spewing assertions. (#335729, Yevgen
|
||||||
|
Muntyan).
|
||||||
|
|
||||||
2006-06-12 Matthias Clasen <mclasen@redhat.com>
|
2006-06-12 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_finalize):
|
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_finalize):
|
||||||
|
@ -2987,34 +2987,43 @@ gtk_tree_model_filter_set_visible_column (GtkTreeModelFilter *filter,
|
|||||||
* @child_iter: A valid #GtkTreeIter pointing to a row on the child model.
|
* @child_iter: A valid #GtkTreeIter pointing to a row on the child model.
|
||||||
*
|
*
|
||||||
* Sets @filter_iter to point to the row in @filter that corresponds to the
|
* Sets @filter_iter to point to the row in @filter that corresponds to the
|
||||||
* row pointed at by @child_iter.
|
* row pointed at by @child_iter. If @filter_iter was not set, %FALSE is
|
||||||
|
* returned.
|
||||||
|
*
|
||||||
|
* Return value: %TRUE, if @filter_iter was set, i.e. if @child_iter is a
|
||||||
|
* valid iterator pointing to a visible row in child model.
|
||||||
*
|
*
|
||||||
* Since: 2.4
|
* Since: 2.4
|
||||||
*/
|
*/
|
||||||
void
|
gboolean
|
||||||
gtk_tree_model_filter_convert_child_iter_to_iter (GtkTreeModelFilter *filter,
|
gtk_tree_model_filter_convert_child_iter_to_iter (GtkTreeModelFilter *filter,
|
||||||
GtkTreeIter *filter_iter,
|
GtkTreeIter *filter_iter,
|
||||||
GtkTreeIter *child_iter)
|
GtkTreeIter *child_iter)
|
||||||
{
|
{
|
||||||
|
gboolean ret;
|
||||||
GtkTreePath *child_path, *path;
|
GtkTreePath *child_path, *path;
|
||||||
|
|
||||||
g_return_if_fail (GTK_IS_TREE_MODEL_FILTER (filter));
|
g_return_val_if_fail (GTK_IS_TREE_MODEL_FILTER (filter), FALSE);
|
||||||
g_return_if_fail (filter->priv->child_model != NULL);
|
g_return_val_if_fail (filter->priv->child_model != NULL, FALSE);
|
||||||
g_return_if_fail (filter_iter != NULL);
|
g_return_val_if_fail (filter_iter != NULL, FALSE);
|
||||||
g_return_if_fail (child_iter != NULL);
|
g_return_val_if_fail (child_iter != NULL, FALSE);
|
||||||
|
|
||||||
filter_iter->stamp = 0;
|
filter_iter->stamp = 0;
|
||||||
|
|
||||||
child_path = gtk_tree_model_get_path (filter->priv->child_model, child_iter);
|
child_path = gtk_tree_model_get_path (filter->priv->child_model, child_iter);
|
||||||
g_return_if_fail (child_path != NULL);
|
g_return_val_if_fail (child_path != NULL, FALSE);
|
||||||
|
|
||||||
path = gtk_tree_model_filter_convert_child_path_to_path (filter,
|
path = gtk_tree_model_filter_convert_child_path_to_path (filter,
|
||||||
child_path);
|
child_path);
|
||||||
gtk_tree_path_free (child_path);
|
gtk_tree_path_free (child_path);
|
||||||
g_return_if_fail (path != NULL);
|
|
||||||
|
|
||||||
gtk_tree_model_get_iter (GTK_TREE_MODEL (filter), filter_iter, path);
|
if (!path)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
ret = gtk_tree_model_get_iter (GTK_TREE_MODEL (filter), filter_iter, path);
|
||||||
gtk_tree_path_free (path);
|
gtk_tree_path_free (path);
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -3152,7 +3161,8 @@ gtk_real_tree_model_filter_convert_child_path_to_path (GtkTreeModelFilter *filte
|
|||||||
* Converts @child_path to a path relative to @filter. That is, @child_path
|
* Converts @child_path to a path relative to @filter. That is, @child_path
|
||||||
* points to a path in the child model. The rerturned path will point to the
|
* points to a path in the child model. The rerturned path will point to the
|
||||||
* same row in the filtered model. If @child_path isn't a valid path on the
|
* same row in the filtered model. If @child_path isn't a valid path on the
|
||||||
* child model, then %NULL is returned.
|
* child model or points to a row which is not visible in @filter, then %NULL
|
||||||
|
* is returned.
|
||||||
*
|
*
|
||||||
* Return value: A newly allocated #GtkTreePath, or %NULL.
|
* Return value: A newly allocated #GtkTreePath, or %NULL.
|
||||||
*
|
*
|
||||||
@ -3171,6 +3181,9 @@ gtk_tree_model_filter_convert_child_path_to_path (GtkTreeModelFilter *filter,
|
|||||||
TRUE,
|
TRUE,
|
||||||
TRUE);
|
TRUE);
|
||||||
|
|
||||||
|
if (!path)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
/* get a new path which only takes visible nodes into account.
|
/* get a new path which only takes visible nodes into account.
|
||||||
* -- if this gives any performance issues, we can write a special
|
* -- if this gives any performance issues, we can write a special
|
||||||
* version of convert_child_path_to_path immediately returning
|
* version of convert_child_path_to_path immediately returning
|
||||||
|
@ -84,7 +84,7 @@ void gtk_tree_model_filter_set_visible_column (GtkTreeModelFilt
|
|||||||
GtkTreeModel *gtk_tree_model_filter_get_model (GtkTreeModelFilter *filter);
|
GtkTreeModel *gtk_tree_model_filter_get_model (GtkTreeModelFilter *filter);
|
||||||
|
|
||||||
/* conversion */
|
/* conversion */
|
||||||
void gtk_tree_model_filter_convert_child_iter_to_iter (GtkTreeModelFilter *filter,
|
gboolean gtk_tree_model_filter_convert_child_iter_to_iter (GtkTreeModelFilter *filter,
|
||||||
GtkTreeIter *filter_iter,
|
GtkTreeIter *filter_iter,
|
||||||
GtkTreeIter *child_iter);
|
GtkTreeIter *child_iter);
|
||||||
void gtk_tree_model_filter_convert_iter_to_child_iter (GtkTreeModelFilter *filter,
|
void gtk_tree_model_filter_convert_iter_to_child_iter (GtkTreeModelFilter *filter,
|
||||||
|
Loading…
Reference in New Issue
Block a user