Add gimp_pdb_item_is_writable() which sets an error if the item is locked

This commit is contained in:
Michael Natterer 2009-08-20 18:50:55 +02:00
parent 7262e45df9
commit 774850c46f
2 changed files with 24 additions and 0 deletions

View file

@ -351,6 +351,26 @@ gimp_pdb_item_is_floating (GimpItem *item,
return TRUE;
}
gboolean
gimp_pdb_item_is_writable (GimpItem *item,
GError **error)
{
g_return_val_if_fail (GIMP_IS_ITEM (item), FALSE);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
if (gimp_item_get_lock_content (item))
{
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
_("Item '%s' (%d) cannot be modified because its "
"contents are locked"),
gimp_object_get_name (GIMP_OBJECT (item)),
gimp_item_get_ID (item));
return FALSE;
}
return TRUE;
}
gboolean
gimp_pdb_layer_is_text_layer (GimpLayer *layer,
GError **error)

View file

@ -53,8 +53,12 @@ gboolean gimp_pdb_item_is_attached (GimpItem *item,
gboolean gimp_pdb_item_is_floating (GimpItem *item,
GimpImage *dest_image,
GError **error);
gboolean gimp_pdb_item_is_writable (GimpItem *item,
GError **error);
gboolean gimp_pdb_layer_is_text_layer (GimpLayer *layer,
GError **error);
gboolean gimp_pdb_image_is_base_type (GimpImage *image,
GimpImageBaseType type,
GError **error);