app: new function gimp_item_is_ancestor().

This commit is contained in:
Jehan 2020-03-31 16:34:45 +02:00
parent c2023f3aa1
commit dbae0e436c
2 changed files with 21 additions and 0 deletions

View File

@ -841,6 +841,25 @@ gimp_item_get_parent (GimpItem *item)
return GIMP_ITEM (gimp_viewable_get_parent (GIMP_VIEWABLE (item)));
}
gboolean
gimp_item_is_ancestor (GimpItem *item,
GimpItem *ancestor)
{
GimpItem *parent;
g_return_val_if_fail (GIMP_IS_ITEM (item), FALSE);
g_return_val_if_fail (GIMP_IS_ITEM (ancestor), FALSE);
parent = item;
while ((parent = gimp_item_get_parent (parent)))
{
if (parent == ancestor)
return TRUE;
}
return FALSE;
}
GimpItemTree *
gimp_item_get_tree (GimpItem *item)
{

View File

@ -174,6 +174,8 @@ void gimp_item_unset_removed (GimpItem *item);
gboolean gimp_item_is_attached (GimpItem *item);
GimpItem * gimp_item_get_parent (GimpItem *item);
gboolean gimp_item_is_ancestor (GimpItem *item,
GimpItem *ancestor);
GimpItemTree * gimp_item_get_tree (GimpItem *item);
GimpContainer * gimp_item_get_container (GimpItem *item);