/* The GIMP -- an image manipulation program * Copyright (C) 1995-2003 Spencer Kimball and Peter Mattis * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* NOTE: This file is autogenerated by pdbgen.pl. */ #include "config.h" #include #include "libgimpbase/gimpbase.h" #include "pdb-types.h" #include "procedural_db.h" #include "core/gimp-parasites.h" #include "core/gimpdrawable.h" #include "core/gimpimage.h" static ProcRecord parasite_find_proc; static ProcRecord parasite_attach_proc; static ProcRecord parasite_detach_proc; static ProcRecord parasite_list_proc; static ProcRecord drawable_parasite_find_proc; static ProcRecord drawable_parasite_attach_proc; static ProcRecord drawable_parasite_detach_proc; static ProcRecord drawable_parasite_list_proc; static ProcRecord image_parasite_find_proc; static ProcRecord image_parasite_attach_proc; static ProcRecord image_parasite_detach_proc; static ProcRecord image_parasite_list_proc; void register_parasite_procs (Gimp *gimp) { procedural_db_register (gimp, ¶site_find_proc); procedural_db_register (gimp, ¶site_attach_proc); procedural_db_register (gimp, ¶site_detach_proc); procedural_db_register (gimp, ¶site_list_proc); procedural_db_register (gimp, &drawable_parasite_find_proc); procedural_db_register (gimp, &drawable_parasite_attach_proc); procedural_db_register (gimp, &drawable_parasite_detach_proc); procedural_db_register (gimp, &drawable_parasite_list_proc); procedural_db_register (gimp, &image_parasite_find_proc); procedural_db_register (gimp, &image_parasite_attach_proc); procedural_db_register (gimp, &image_parasite_detach_proc); procedural_db_register (gimp, &image_parasite_list_proc); } static Argument * parasite_find_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; Argument *return_args; gchar *name; GimpParasite *parasite = NULL; name = (gchar *) args[0].value.pdb_pointer; if (name == NULL || !g_utf8_validate (name, -1, NULL)) success = FALSE; if (success) { parasite = gimp_parasite_copy (gimp_parasite_find (gimp, name)); success = parasite != NULL; } return_args = procedural_db_return_args (¶site_find_proc, success); if (success) return_args[1].value.pdb_pointer = parasite; return return_args; } static ProcArg parasite_find_inargs[] = { { GIMP_PDB_STRING, "name", "The name of the parasite to find" } }; static ProcArg parasite_find_outargs[] = { { GIMP_PDB_PARASITE, "parasite", "The found parasite" } }; static ProcRecord parasite_find_proc = { "gimp-parasite-find", "gimp-parasite-find", "Finds the named parasite.", "Finds and returns the named parasite that was previously attached to the gimp.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 1, parasite_find_inargs, 1, parasite_find_outargs, { { parasite_find_invoker } } }; static Argument * parasite_attach_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; GimpParasite *parasite; parasite = (GimpParasite *) args[0].value.pdb_pointer; if (parasite == NULL || parasite->name == NULL || !g_utf8_validate (parasite->name, -1, NULL)) success = FALSE; if (success) gimp_parasite_attach (gimp, parasite); return procedural_db_return_args (¶site_attach_proc, success); } static ProcArg parasite_attach_inargs[] = { { GIMP_PDB_PARASITE, "parasite", "The parasite to attach to the gimp" } }; static ProcRecord parasite_attach_proc = { "gimp-parasite-attach", "gimp-parasite-attach", "Add a parasite to the gimp.", "This procedure attaches a parasite to the gimp. It has no return values.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 1, parasite_attach_inargs, 0, NULL, { { parasite_attach_invoker } } }; static Argument * parasite_detach_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; gchar *name; name = (gchar *) args[0].value.pdb_pointer; if (name == NULL || !g_utf8_validate (name, -1, NULL)) success = FALSE; if (success) gimp_parasite_detach (gimp, name); return procedural_db_return_args (¶site_detach_proc, success); } static ProcArg parasite_detach_inargs[] = { { GIMP_PDB_STRING, "name", "The name of the parasite to detach from the gimp." } }; static ProcRecord parasite_detach_proc = { "gimp-parasite-detach", "gimp-parasite-detach", "Removes a parasite from the gimp.", "This procedure detaches a parasite from the gimp. It has no return values.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 1, parasite_detach_inargs, 0, NULL, { { parasite_detach_invoker } } }; static Argument * parasite_list_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { Argument *return_args; gint32 num_parasites; gchar **parasites; parasites = gimp_parasite_list (gimp, &num_parasites); return_args = procedural_db_return_args (¶site_list_proc, TRUE); return_args[1].value.pdb_int = num_parasites; return_args[2].value.pdb_pointer = parasites; return return_args; } static ProcArg parasite_list_outargs[] = { { GIMP_PDB_INT32, "num-parasites", "The number of attached parasites" }, { GIMP_PDB_STRINGARRAY, "parasites", "The names of currently attached parasites" } }; static ProcRecord parasite_list_proc = { "gimp-parasite-list", "gimp-parasite-list", "List all parasites.", "Returns a list of all currently attached parasites.", "Marc Lehmann", "Marc Lehmann", "1999", NULL, GIMP_INTERNAL, 0, NULL, 2, parasite_list_outargs, { { parasite_list_invoker } } }; static Argument * drawable_parasite_find_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; Argument *return_args; GimpDrawable *drawable; gchar *name; GimpParasite *parasite = NULL; drawable = (GimpDrawable *) gimp_item_get_by_ID (gimp, args[0].value.pdb_int); if (! (GIMP_IS_DRAWABLE (drawable) && ! gimp_item_is_removed (GIMP_ITEM (drawable)))) success = FALSE; name = (gchar *) args[1].value.pdb_pointer; if (name == NULL || !g_utf8_validate (name, -1, NULL)) success = FALSE; if (success) { parasite = gimp_parasite_copy (gimp_item_parasite_find (GIMP_ITEM (drawable), name)); success = parasite != NULL; } return_args = procedural_db_return_args (&drawable_parasite_find_proc, success); if (success) return_args[1].value.pdb_pointer = parasite; return return_args; } static ProcArg drawable_parasite_find_inargs[] = { { GIMP_PDB_DRAWABLE, "drawable", "The drawable" }, { GIMP_PDB_STRING, "name", "The name of the parasite to find" } }; static ProcArg drawable_parasite_find_outargs[] = { { GIMP_PDB_PARASITE, "parasite", "The found parasite" } }; static ProcRecord drawable_parasite_find_proc = { "gimp-drawable-parasite-find", "gimp-drawable-parasite-find", "Finds the named parasite in a drawable", "Finds and returns the named parasite that was previously attached to a drawable.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 2, drawable_parasite_find_inargs, 1, drawable_parasite_find_outargs, { { drawable_parasite_find_invoker } } }; static Argument * drawable_parasite_attach_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; GimpDrawable *drawable; GimpParasite *parasite; drawable = (GimpDrawable *) gimp_item_get_by_ID (gimp, args[0].value.pdb_int); if (! (GIMP_IS_DRAWABLE (drawable) && ! gimp_item_is_removed (GIMP_ITEM (drawable)))) success = FALSE; parasite = (GimpParasite *) args[1].value.pdb_pointer; if (parasite == NULL || parasite->name == NULL || !g_utf8_validate (parasite->name, -1, NULL)) success = FALSE; if (success) gimp_item_parasite_attach (GIMP_ITEM (drawable), parasite); return procedural_db_return_args (&drawable_parasite_attach_proc, success); } static ProcArg drawable_parasite_attach_inargs[] = { { GIMP_PDB_DRAWABLE, "drawable", "The drawable" }, { GIMP_PDB_PARASITE, "parasite", "The parasite to attach to a drawable" } }; static ProcRecord drawable_parasite_attach_proc = { "gimp-drawable-parasite-attach", "gimp-drawable-parasite-attach", "Add a parasite to a drawable.", "This procedure attaches a parasite to a drawable. It has no return values.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 2, drawable_parasite_attach_inargs, 0, NULL, { { drawable_parasite_attach_invoker } } }; static Argument * drawable_parasite_detach_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; GimpDrawable *drawable; gchar *name; drawable = (GimpDrawable *) gimp_item_get_by_ID (gimp, args[0].value.pdb_int); if (! (GIMP_IS_DRAWABLE (drawable) && ! gimp_item_is_removed (GIMP_ITEM (drawable)))) success = FALSE; name = (gchar *) args[1].value.pdb_pointer; if (name == NULL || !g_utf8_validate (name, -1, NULL)) success = FALSE; if (success) gimp_item_parasite_detach (GIMP_ITEM (drawable), name); return procedural_db_return_args (&drawable_parasite_detach_proc, success); } static ProcArg drawable_parasite_detach_inargs[] = { { GIMP_PDB_DRAWABLE, "drawable", "The drawable" }, { GIMP_PDB_STRING, "name", "The name of the parasite to detach from a drawable." } }; static ProcRecord drawable_parasite_detach_proc = { "gimp-drawable-parasite-detach", "gimp-drawable-parasite-detach", "Removes a parasite from a drawable.", "This procedure detaches a parasite from a drawable. It has no return values.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 2, drawable_parasite_detach_inargs, 0, NULL, { { drawable_parasite_detach_invoker } } }; static Argument * drawable_parasite_list_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; Argument *return_args; GimpDrawable *drawable; gint32 num_parasites; gchar **parasites = NULL; drawable = (GimpDrawable *) gimp_item_get_by_ID (gimp, args[0].value.pdb_int); if (! (GIMP_IS_DRAWABLE (drawable) && ! gimp_item_is_removed (GIMP_ITEM (drawable)))) success = FALSE; if (success) parasites = gimp_item_parasite_list (GIMP_ITEM (drawable), &num_parasites); return_args = procedural_db_return_args (&drawable_parasite_list_proc, success); if (success) { return_args[1].value.pdb_int = num_parasites; return_args[2].value.pdb_pointer = parasites; } return return_args; } static ProcArg drawable_parasite_list_inargs[] = { { GIMP_PDB_DRAWABLE, "drawable", "The drawable" } }; static ProcArg drawable_parasite_list_outargs[] = { { GIMP_PDB_INT32, "num-parasites", "The number of attached parasites" }, { GIMP_PDB_STRINGARRAY, "parasites", "The names of currently attached parasites" } }; static ProcRecord drawable_parasite_list_proc = { "gimp-drawable-parasite-list", "gimp-drawable-parasite-list", "List all parasites.", "Returns a list of all currently attached parasites.", "Marc Lehmann", "Marc Lehmann", "1999", NULL, GIMP_INTERNAL, 1, drawable_parasite_list_inargs, 2, drawable_parasite_list_outargs, { { drawable_parasite_list_invoker } } }; static Argument * image_parasite_find_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; Argument *return_args; GimpImage *gimage; gchar *name; GimpParasite *parasite = NULL; gimage = gimp_image_get_by_ID (gimp, args[0].value.pdb_int); if (! GIMP_IS_IMAGE (gimage)) success = FALSE; name = (gchar *) args[1].value.pdb_pointer; if (name == NULL || !g_utf8_validate (name, -1, NULL)) success = FALSE; if (success) { parasite = gimp_parasite_copy (gimp_image_parasite_find (gimage, name)); success = parasite != NULL; } return_args = procedural_db_return_args (&image_parasite_find_proc, success); if (success) return_args[1].value.pdb_pointer = parasite; return return_args; } static ProcArg image_parasite_find_inargs[] = { { GIMP_PDB_IMAGE, "image", "The image" }, { GIMP_PDB_STRING, "name", "The name of the parasite to find" } }; static ProcArg image_parasite_find_outargs[] = { { GIMP_PDB_PARASITE, "parasite", "The found parasite" } }; static ProcRecord image_parasite_find_proc = { "gimp-image-parasite-find", "gimp-image-parasite-find", "Finds the named parasite in an image", "Finds and returns the named parasite that was previously attached to an image.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 2, image_parasite_find_inargs, 1, image_parasite_find_outargs, { { image_parasite_find_invoker } } }; static Argument * image_parasite_attach_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; GimpImage *gimage; GimpParasite *parasite; gimage = gimp_image_get_by_ID (gimp, args[0].value.pdb_int); if (! GIMP_IS_IMAGE (gimage)) success = FALSE; parasite = (GimpParasite *) args[1].value.pdb_pointer; if (parasite == NULL || parasite->name == NULL || !g_utf8_validate (parasite->name, -1, NULL)) success = FALSE; if (success) gimp_image_parasite_attach (gimage, parasite); return procedural_db_return_args (&image_parasite_attach_proc, success); } static ProcArg image_parasite_attach_inargs[] = { { GIMP_PDB_IMAGE, "image", "The image" }, { GIMP_PDB_PARASITE, "parasite", "The parasite to attach to an image" } }; static ProcRecord image_parasite_attach_proc = { "gimp-image-parasite-attach", "gimp-image-parasite-attach", "Add a parasite to an image.", "This procedure attaches a parasite to an image. It has no return values.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 2, image_parasite_attach_inargs, 0, NULL, { { image_parasite_attach_invoker } } }; static Argument * image_parasite_detach_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; GimpImage *gimage; gchar *name; gimage = gimp_image_get_by_ID (gimp, args[0].value.pdb_int); if (! GIMP_IS_IMAGE (gimage)) success = FALSE; name = (gchar *) args[1].value.pdb_pointer; if (name == NULL || !g_utf8_validate (name, -1, NULL)) success = FALSE; if (success) gimp_image_parasite_detach (gimage, name); return procedural_db_return_args (&image_parasite_detach_proc, success); } static ProcArg image_parasite_detach_inargs[] = { { GIMP_PDB_IMAGE, "image", "The image" }, { GIMP_PDB_STRING, "name", "The name of the parasite to detach from an image." } }; static ProcRecord image_parasite_detach_proc = { "gimp-image-parasite-detach", "gimp-image-parasite-detach", "Removes a parasite from an image.", "This procedure detaches a parasite from an image. It has no return values.", "Jay Cox", "Jay Cox", "1998", NULL, GIMP_INTERNAL, 2, image_parasite_detach_inargs, 0, NULL, { { image_parasite_detach_invoker } } }; static Argument * image_parasite_list_invoker (Gimp *gimp, GimpContext *context, GimpProgress *progress, Argument *args) { gboolean success = TRUE; Argument *return_args; GimpImage *gimage; gint32 num_parasites; gchar **parasites = NULL; gimage = gimp_image_get_by_ID (gimp, args[0].value.pdb_int); if (! GIMP_IS_IMAGE (gimage)) success = FALSE; if (success) parasites = gimp_image_parasite_list (gimage, &num_parasites); return_args = procedural_db_return_args (&image_parasite_list_proc, success); if (success) { return_args[1].value.pdb_int = num_parasites; return_args[2].value.pdb_pointer = parasites; } return return_args; } static ProcArg image_parasite_list_inargs[] = { { GIMP_PDB_IMAGE, "image", "The image" } }; static ProcArg image_parasite_list_outargs[] = { { GIMP_PDB_INT32, "num-parasites", "The number of attached parasites" }, { GIMP_PDB_STRINGARRAY, "parasites", "The names of currently attached parasites" } }; static ProcRecord image_parasite_list_proc = { "gimp-image-parasite-list", "gimp-image-parasite-list", "List all parasites.", "Returns a list of all currently attached parasites.", "Marc Lehmann", "Marc Lehmann", "1999", NULL, GIMP_INTERNAL, 1, image_parasite_list_inargs, 2, image_parasite_list_outargs, { { image_parasite_list_invoker } } };