Files
gimp/libgimp/gimpitem_pdb.c
Jehan 15ec254148 Issue #5946: skip gimp_*get_*() API from GObject Introspection.
The get() API are sometimes nicer in C code because it's just simpler to
loop through C arrays, but they end up with similar API to the list()
variants for binding, or with a useless size return value (since most
higher level languages have length-aware array types, which is what
GList are transformed into).

So let's use the list() variants as the main ones and skip the get()
variants. I hesitated to rename the list() variants to get() with
`(rename-to)` annotations but since I am unsure if the get() bindings
are absolutely useless, I don't think it's the best idea. Maybe on some
other language usable as GI binding, the get() variant might be
different again and nicer to use. So if we shadowed these by renaming
list() ones, the day we change our mind, we'd have to rename get() ones
too (which would be very confusing), or else break bindings' API. To
avoid this, I just skip the get() ones altogether in bindings but leave
their name available in the bindings.
2022-06-27 21:20:06 +02:00

1275 lines
34 KiB
C

/* LIBGIMP - The GIMP Library
* Copyright (C) 1995-2003 Peter Mattis and Spencer Kimball
*
* gimpitem_pdb.c
*
* This library is free software: you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 3 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <https://www.gnu.org/licenses/>.
*/
/* NOTE: This file is auto-generated by pdbgen.pl */
#include "config.h"
#include "stamp-pdbgen.h"
#include "gimp.h"
/**
* SECTION: gimpitem
* @title: gimpitem
* @short_description: Functions to manipulate items.
*
* Functions to manipulate items.
**/
/**
* gimp_item_id_is_valid:
* @item_id: The item ID to check.
*
* Returns TRUE if the item ID is valid.
*
* This procedure checks if the given item ID is valid and refers to an
* existing item.
*
* Returns: Whether the item ID is valid.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_valid (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean valid = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-valid",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
valid = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return valid;
}
/**
* gimp_item_id_is_drawable:
* @item_id: The item ID.
*
* Returns whether the item ID is a drawable.
*
* This procedure returns TRUE if the specified item ID is a drawable.
*
* Returns: TRUE if the item ID is a drawable, FALSE otherwise.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_drawable (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean drawable = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-drawable",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
drawable = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return drawable;
}
/**
* gimp_item_id_is_layer:
* @item_id: The item ID.
*
* Returns whether the item ID is a layer.
*
* This procedure returns TRUE if the specified item ID is a layer.
*
* Returns: TRUE if the item is a layer, FALSE otherwise.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_layer (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean layer = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-layer",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
layer = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return layer;
}
/**
* gimp_item_id_is_text_layer:
* @item_id: The item ID.
*
* Returns whether the item ID is a text layer.
*
* This procedure returns TRUE if the specified item ID is a text
* layer.
*
* Returns: TRUE if the item is a text layer, FALSE otherwise.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_text_layer (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean text_layer = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-text-layer",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
text_layer = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return text_layer;
}
/**
* gimp_item_id_is_channel:
* @item_id: The item ID.
*
* Returns whether the item ID is a channel.
*
* This procedure returns TRUE if the specified item ID is a channel.
*
* Returns: TRUE if the item ID is a channel, FALSE otherwise.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_channel (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean channel = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-channel",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
channel = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return channel;
}
/**
* gimp_item_id_is_layer_mask:
* @item_id: The item.
*
* Returns whether the item ID is a layer mask.
*
* This procedure returns TRUE if the specified item ID is a layer
* mask.
*
* Returns: TRUE if the item ID is a layer mask, FALSE otherwise.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_layer_mask (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean layer_mask = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-layer-mask",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
layer_mask = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return layer_mask;
}
/**
* gimp_item_id_is_selection:
* @item_id: The item ID.
*
* Returns whether the item ID is a selection.
*
* This procedure returns TRUE if the specified item ID is a selection.
*
* Returns: TRUE if the item ID is a selection, FALSE otherwise.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_selection (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean selection = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-selection",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
selection = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return selection;
}
/**
* gimp_item_id_is_vectors:
* @item_id: The item ID.
*
* Returns whether the item ID is a vectors.
*
* This procedure returns TRUE if the specified item ID is a vectors.
*
* Returns: TRUE if the item ID is a vectors, FALSE otherwise.
*
* Since: 3.0
**/
gboolean
gimp_item_id_is_vectors (gint item_id)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean vectors = FALSE;
args = gimp_value_array_new_from_types (NULL,
G_TYPE_INT, item_id,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-id-is-vectors",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
vectors = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return vectors;
}
/**
* gimp_item_get_image:
* @item: The item.
*
* Returns the item's image.
*
* This procedure returns the item's image.
*
* Returns: (transfer none): The item's image.
*
* Since: 2.8
**/
GimpImage *
gimp_item_get_image (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
GimpImage *image = NULL;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-image",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
image = GIMP_VALUES_GET_IMAGE (return_vals, 1);
gimp_value_array_unref (return_vals);
return image;
}
/**
* gimp_item_delete:
* @item: The item to delete.
*
* Delete a item.
*
* This procedure deletes the specified item. This must not be done if
* the image containing this item was already deleted or if the item
* was already removed from the image. The only case in which this
* procedure is useful is if you want to get rid of a item which has
* not yet been added to an image.
*
* Returns: TRUE on success.
*
* Since: 2.8
**/
gboolean
gimp_item_delete (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-delete",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_is_group:
* @item: The item.
*
* Returns whether the item is a group item.
*
* This procedure returns TRUE if the specified item is a group item
* which can have children.
*
* Returns: TRUE if the item is a group, FALSE otherwise.
*
* Since: 2.8
**/
gboolean
gimp_item_is_group (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean group = FALSE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-is-group",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
group = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return group;
}
/**
* gimp_item_get_parent:
* @item: The item.
*
* Returns the item's parent item.
*
* This procedure returns the item's parent item, if any.
*
* Returns: (transfer none): The item's parent item.
*
* Since: 2.8
**/
GimpItem *
gimp_item_get_parent (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
GimpItem *parent = NULL;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-parent",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
parent = GIMP_VALUES_GET_ITEM (return_vals, 1);
gimp_value_array_unref (return_vals);
return parent;
}
/**
* gimp_item_get_children: (skip)
* @item: The item.
* @num_children: (out): The item's number of children.
*
* Returns the item's list of children.
*
* This procedure returns the list of items which are children of the
* specified item. The order is topmost to bottommost.
*
* Returns: (array length=num_children) (element-type GimpItem) (transfer container):
* The item's list of children.
* The returned value must be freed with g_free().
*
* Since: 2.8
**/
GimpItem **
gimp_item_get_children (GimpItem *item,
gint *num_children)
{
GimpValueArray *args;
GimpValueArray *return_vals;
GimpItem **children = NULL;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-children",
args);
gimp_value_array_unref (args);
*num_children = 0;
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
{
*num_children = GIMP_VALUES_GET_INT (return_vals, 1);
{ GimpObjectArray *a = g_value_get_boxed (gimp_value_array_index (return_vals, 2)); if (a) children = g_memdup2 (a->data, a->length * sizeof (gpointer)); };
}
gimp_value_array_unref (return_vals);
return children;
}
/**
* gimp_item_get_expanded:
* @item: The item.
*
* Returns whether the item is expanded.
*
* This procedure returns TRUE if the specified item is expanded.
*
* Returns: TRUE if the item is expanded, FALSE otherwise.
*
* Since: 2.10
**/
gboolean
gimp_item_get_expanded (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean expanded = FALSE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-expanded",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
expanded = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return expanded;
}
/**
* gimp_item_set_expanded:
* @item: The item.
* @expanded: TRUE to expand the item, FALSE to collapse the item.
*
* Sets the expanded state of the item.
*
* This procedure expands or collapses the item.
*
* Returns: TRUE on success.
*
* Since: 2.10
**/
gboolean
gimp_item_set_expanded (GimpItem *item,
gboolean expanded)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_BOOLEAN, expanded,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-expanded",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_name:
* @item: The item.
*
* Get the name of the specified item.
*
* This procedure returns the specified item's name.
*
* Returns: (transfer full): The item name.
* The returned value must be freed with g_free().
*
* Since: 2.8
**/
gchar *
gimp_item_get_name (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gchar *name = NULL;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-name",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
name = GIMP_VALUES_DUP_STRING (return_vals, 1);
gimp_value_array_unref (return_vals);
return name;
}
/**
* gimp_item_set_name:
* @item: The item.
* @name: The new item name.
*
* Set the name of the specified item.
*
* This procedure sets the specified item's name.
*
* Returns: TRUE on success.
*
* Since: 2.8
**/
gboolean
gimp_item_set_name (GimpItem *item,
const gchar *name)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_STRING, name,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-name",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_visible:
* @item: The item.
*
* Get the visibility of the specified item.
*
* This procedure returns the specified item's visibility.
*
* Returns: The item visibility.
*
* Since: 2.8
**/
gboolean
gimp_item_get_visible (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean visible = FALSE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-visible",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
visible = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return visible;
}
/**
* gimp_item_set_visible:
* @item: The item.
* @visible: The new item visibility.
*
* Set the visibility of the specified item.
*
* This procedure sets the specified item's visibility.
*
* Returns: TRUE on success.
*
* Since: 2.8
**/
gboolean
gimp_item_set_visible (GimpItem *item,
gboolean visible)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_BOOLEAN, visible,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-visible",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_lock_content:
* @item: The item.
*
* Get the 'lock content' state of the specified item.
*
* This procedure returns the specified item's lock content state.
*
* Returns: Whether the item's contents are locked.
*
* Since: 2.8
**/
gboolean
gimp_item_get_lock_content (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean lock_content = FALSE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-lock-content",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
lock_content = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return lock_content;
}
/**
* gimp_item_set_lock_content:
* @item: The item.
* @lock_content: The new item 'lock content' state.
*
* Set the 'lock content' state of the specified item.
*
* This procedure sets the specified item's lock content state.
*
* Returns: TRUE on success.
*
* Since: 2.8
**/
gboolean
gimp_item_set_lock_content (GimpItem *item,
gboolean lock_content)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_BOOLEAN, lock_content,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-lock-content",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_lock_position:
* @item: The item.
*
* Get the 'lock position' state of the specified item.
*
* This procedure returns the specified item's lock position state.
*
* Returns: Whether the item's position is locked.
*
* Since: 2.10
**/
gboolean
gimp_item_get_lock_position (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean lock_position = FALSE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-lock-position",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
lock_position = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return lock_position;
}
/**
* gimp_item_set_lock_position:
* @item: The item.
* @lock_position: The new item 'lock position' state.
*
* Set the 'lock position' state of the specified item.
*
* This procedure sets the specified item's lock position state.
*
* Returns: TRUE on success.
*
* Since: 2.10
**/
gboolean
gimp_item_set_lock_position (GimpItem *item,
gboolean lock_position)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_BOOLEAN, lock_position,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-lock-position",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_lock_visibility:
* @item: The item.
*
* Get the 'lock visibility' state of the specified item.
*
* This procedure returns the specified item's lock visibility state.
*
* Returns: Whether the item's visibility is locked.
*
* Since: 3.0
**/
gboolean
gimp_item_get_lock_visibility (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean lock_visibility = FALSE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-lock-visibility",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
lock_visibility = GIMP_VALUES_GET_BOOLEAN (return_vals, 1);
gimp_value_array_unref (return_vals);
return lock_visibility;
}
/**
* gimp_item_set_lock_visibility:
* @item: The item.
* @lock_visibility: The new item 'lock visibility' state.
*
* Set the 'lock visibility' state of the specified item.
*
* This procedure sets the specified item's lock visibility state.
*
* Returns: TRUE on success.
*
* Since: 3.0
**/
gboolean
gimp_item_set_lock_visibility (GimpItem *item,
gboolean lock_visibility)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_BOOLEAN, lock_visibility,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-lock-visibility",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_color_tag:
* @item: The item.
*
* Get the color tag of the specified item.
*
* This procedure returns the specified item's color tag.
*
* Returns: The item's color tag.
*
* Since: 2.10
**/
GimpColorTag
gimp_item_get_color_tag (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
GimpColorTag color_tag = 0;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-color-tag",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
color_tag = GIMP_VALUES_GET_ENUM (return_vals, 1);
gimp_value_array_unref (return_vals);
return color_tag;
}
/**
* gimp_item_set_color_tag:
* @item: The item.
* @color_tag: The new item color tag.
*
* Set the color tag of the specified item.
*
* This procedure sets the specified item's color tag.
*
* Returns: TRUE on success.
*
* Since: 2.10
**/
gboolean
gimp_item_set_color_tag (GimpItem *item,
GimpColorTag color_tag)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
GIMP_TYPE_COLOR_TAG, color_tag,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-color-tag",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_tattoo:
* @item: The item.
*
* Get the tattoo of the specified item.
*
* This procedure returns the specified item's tattoo. A tattoo is a
* unique and permanent identifier attached to a item that can be used
* to uniquely identify a item within an image even between sessions.
*
* Returns: The item tattoo.
*
* Since: 2.8
**/
guint
gimp_item_get_tattoo (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
guint tattoo = 0;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-tattoo",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
tattoo = GIMP_VALUES_GET_UINT (return_vals, 1);
gimp_value_array_unref (return_vals);
return tattoo;
}
/**
* gimp_item_set_tattoo:
* @item: The item.
* @tattoo: The new item tattoo.
*
* Set the tattoo of the specified item.
*
* This procedure sets the specified item's tattoo. A tattoo is a
* unique and permanent identifier attached to a item that can be used
* to uniquely identify a item within an image even between sessions.
*
* Returns: TRUE on success.
*
* Since: 2.8
**/
gboolean
gimp_item_set_tattoo (GimpItem *item,
guint tattoo)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_UINT, tattoo,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-set-tattoo",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_attach_parasite:
* @item: The item.
* @parasite: The parasite to attach to the item.
*
* Add a parasite to an item.
*
* This procedure attaches a parasite to an item. It has no return
* values.
*
* Returns: TRUE on success.
*
* Since: 2.8
**/
gboolean
gimp_item_attach_parasite (GimpItem *item,
const GimpParasite *parasite)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
GIMP_TYPE_PARASITE, parasite,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-attach-parasite",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_detach_parasite:
* @item: The item.
* @name: The name of the parasite to detach from the item.
*
* Removes a parasite from an item.
*
* This procedure detaches a parasite from an item. It has no return
* values.
*
* Returns: TRUE on success.
*
* Since: 2.8
**/
gboolean
gimp_item_detach_parasite (GimpItem *item,
const gchar *name)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gboolean success = TRUE;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_STRING, name,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-detach-parasite",
args);
gimp_value_array_unref (args);
success = GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS;
gimp_value_array_unref (return_vals);
return success;
}
/**
* gimp_item_get_parasite:
* @item: The item.
* @name: The name of the parasite to find.
*
* Look up a parasite in an item
*
* Finds and returns the parasite that is attached to an item.
*
* Returns: (transfer full): The found parasite.
*
* Since: 2.8
**/
GimpParasite *
gimp_item_get_parasite (GimpItem *item,
const gchar *name)
{
GimpValueArray *args;
GimpValueArray *return_vals;
GimpParasite *parasite = NULL;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_STRING, name,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-parasite",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
parasite = GIMP_VALUES_DUP_PARASITE (return_vals, 1);
gimp_value_array_unref (return_vals);
return parasite;
}
/**
* gimp_item_get_parasite_list:
* @item: The item.
*
* List all parasites.
*
* Returns a list of all parasites currently attached the an item.
*
* Returns: (array zero-terminated=1) (transfer full):
* The names of currently attached parasites.
* The returned value must be freed with g_strfreev().
*
* Since: 2.8
**/
gchar **
gimp_item_get_parasite_list (GimpItem *item)
{
GimpValueArray *args;
GimpValueArray *return_vals;
gchar **parasites = NULL;
args = gimp_value_array_new_from_types (NULL,
GIMP_TYPE_ITEM, item,
G_TYPE_NONE);
return_vals = gimp_pdb_run_procedure_array (gimp_get_pdb (),
"gimp-item-get-parasite-list",
args);
gimp_value_array_unref (args);
if (GIMP_VALUES_GET_ENUM (return_vals, 0) == GIMP_PDB_SUCCESS)
parasites = GIMP_VALUES_DUP_STRV (return_vals, 1);
gimp_value_array_unref (return_vals);
return parasites;
}