diff options
Diffstat (limited to '')
-rw-r--r-- | libgimp/gimpplugin_pdb.c | 357 |
1 files changed, 357 insertions, 0 deletions
diff --git a/libgimp/gimpplugin_pdb.c b/libgimp/gimpplugin_pdb.c new file mode 100644 index 0000000..0cf6766 --- /dev/null +++ b/libgimp/gimpplugin_pdb.c @@ -0,0 +1,357 @@ +/* LIBGIMP - The GIMP Library + * Copyright (C) 1995-2003 Peter Mattis and Spencer Kimball + * + * gimpplugin_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 "gimp.h" + + +/** + * SECTION: gimpplugin + * @title: gimpplugin + * @short_description: Functions useful for plug-ins, e.g. registration and progress indicators. + * + * Functions useful for plug-ins, e.g. registration and progress + * indicators. + **/ + + +/** + * gimp_plugin_domain_register: + * @domain_name: The name of the textdomain (must be unique). + * @domain_path: The absolute path to the compiled message catalog (may be NULL). + * + * Registers a textdomain for localisation. + * + * This procedure adds a textdomain to the list of domains Gimp + * searches for strings when translating its menu entries. There is no + * need to call this function for plug-ins that have their strings + * included in the 'gimp-std-plugins' domain as that is used by + * default. If the compiled message catalog is not in the standard + * location, you may specify an absolute path to another location. This + * procedure can only be called in the query function of a plug-in and + * it has to be called before any procedure is installed. + * + * Returns: TRUE on success. + **/ +gboolean +gimp_plugin_domain_register (const gchar *domain_name, + const gchar *domain_path) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean success = TRUE; + + return_vals = gimp_run_procedure ("gimp-plugin-domain-register", + &nreturn_vals, + GIMP_PDB_STRING, domain_name, + GIMP_PDB_STRING, domain_path, + GIMP_PDB_END); + + success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS; + + gimp_destroy_params (return_vals, nreturn_vals); + + return success; +} + +/** + * gimp_plugin_help_register: + * @domain_name: The XML namespace of the plug-in's help pages. + * @domain_uri: The root URI of the plug-in's help pages. + * + * Register a help path for a plug-in. + * + * This procedure registers user documentation for the calling plug-in + * with the GIMP help system. The domain_uri parameter points to the + * root directory where the plug-in help is installed. For each + * supported language there should be a file called 'gimp-help.xml' + * that maps the help IDs to the actual help files. + * + * Returns: TRUE on success. + **/ +gboolean +gimp_plugin_help_register (const gchar *domain_name, + const gchar *domain_uri) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean success = TRUE; + + return_vals = gimp_run_procedure ("gimp-plugin-help-register", + &nreturn_vals, + GIMP_PDB_STRING, domain_name, + GIMP_PDB_STRING, domain_uri, + GIMP_PDB_END); + + success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS; + + gimp_destroy_params (return_vals, nreturn_vals); + + return success; +} + +/** + * gimp_plugin_menu_register: + * @procedure_name: The procedure for which to install the menu path. + * @menu_path: The procedure's additional menu path. + * + * Register an additional menu path for a plug-in procedure. + * + * This procedure installs an additional menu entry for the given + * procedure. + * + * Returns: TRUE on success. + * + * Since: 2.2 + **/ +gboolean +gimp_plugin_menu_register (const gchar *procedure_name, + const gchar *menu_path) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean success = TRUE; + + return_vals = gimp_run_procedure ("gimp-plugin-menu-register", + &nreturn_vals, + GIMP_PDB_STRING, procedure_name, + GIMP_PDB_STRING, menu_path, + GIMP_PDB_END); + + success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS; + + gimp_destroy_params (return_vals, nreturn_vals); + + return success; +} + +/** + * gimp_plugin_menu_branch_register: + * @menu_path: The sub-menu's menu path. + * @menu_name: The name of the sub-menu. + * + * Register a sub-menu. + * + * This procedure installs a sub-menu which does not belong to any + * procedure. The menu-name should be the untranslated menu label. GIMP + * will look up the translation in the textdomain registered for the + * plug-in. + * + * Returns: TRUE on success. + * + * Since: 2.4 + **/ +gboolean +gimp_plugin_menu_branch_register (const gchar *menu_path, + const gchar *menu_name) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean success = TRUE; + + return_vals = gimp_run_procedure ("gimp-plugin-menu-branch-register", + &nreturn_vals, + GIMP_PDB_STRING, menu_path, + GIMP_PDB_STRING, menu_name, + GIMP_PDB_END); + + success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS; + + gimp_destroy_params (return_vals, nreturn_vals); + + return success; +} + +/** + * _gimp_plugin_icon_register: + * @procedure_name: The procedure for which to install the icon. + * @icon_type: The type of the icon. + * @icon_data_length: The length of 'icon-data'. + * @icon_data: The procedure's icon. The format depends on the 'icon_type' parameter. + * + * Register an icon for a plug-in procedure. + * + * This procedure installs an icon for the given procedure. + * + * Returns: TRUE on success. + * + * Since: 2.2 + **/ +gboolean +_gimp_plugin_icon_register (const gchar *procedure_name, + GimpIconType icon_type, + gint icon_data_length, + const guint8 *icon_data) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean success = TRUE; + + return_vals = gimp_run_procedure ("gimp-plugin-icon-register", + &nreturn_vals, + GIMP_PDB_STRING, procedure_name, + GIMP_PDB_INT32, icon_type, + GIMP_PDB_INT32, icon_data_length, + GIMP_PDB_INT8ARRAY, icon_data, + GIMP_PDB_END); + + success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS; + + gimp_destroy_params (return_vals, nreturn_vals); + + return success; +} + +/** + * gimp_plugin_set_pdb_error_handler: + * @handler: Who is responsible for handling procedure call errors. + * + * Sets an error handler for procedure calls. + * + * This procedure changes the way that errors in procedure calls are + * handled. By default GIMP will raise an error dialog if a procedure + * call made by a plug-in fails. Using this procedure the plug-in can + * change this behavior. If the error handler is set to + * %GIMP_PDB_ERROR_HANDLER_PLUGIN, then the plug-in is responsible for + * calling gimp_get_pdb_error() and handling the error whenever one if + * its procedure calls fails. It can do this by displaying the error + * message or by forwarding it in its own return values. + * + * Returns: TRUE on success. + * + * Since: 2.6 + **/ +gboolean +gimp_plugin_set_pdb_error_handler (GimpPDBErrorHandler handler) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean success = TRUE; + + return_vals = gimp_run_procedure ("gimp-plugin-set-pdb-error-handler", + &nreturn_vals, + GIMP_PDB_INT32, handler, + GIMP_PDB_END); + + success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS; + + gimp_destroy_params (return_vals, nreturn_vals); + + return success; +} + +/** + * gimp_plugin_get_pdb_error_handler: + * + * Retrieves the active error handler for procedure calls. + * + * This procedure retrieves the currently active error handler for + * procedure calls made by the calling plug-in. See + * gimp_plugin_set_pdb_error_handler() for details. + * + * Returns: Who is responsible for handling procedure call errors. + * + * Since: 2.6 + **/ +GimpPDBErrorHandler +gimp_plugin_get_pdb_error_handler (void) +{ + GimpParam *return_vals; + gint nreturn_vals; + GimpPDBErrorHandler handler = 0; + + return_vals = gimp_run_procedure ("gimp-plugin-get-pdb-error-handler", + &nreturn_vals, + GIMP_PDB_END); + + if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS) + handler = return_vals[1].data.d_int32; + + gimp_destroy_params (return_vals, nreturn_vals); + + return handler; +} + +/** + * gimp_plugin_enable_precision: + * + * Switches this plug-in to using the real bit depth of drawables. + * + * Switches this plug-in to using the real bit depth of drawables. This + * setting can only be enabled, and not disabled again during the + * lifetime of the plug-in. Using gimp_drawable_get_buffer(), + * gimp_drawable_get_shadow_buffer() or gimp_drawable_get_format() will + * automatically call this function. + * + * Returns: TRUE on success. + * + * Since: 2.10 + **/ +gboolean +gimp_plugin_enable_precision (void) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean success = TRUE; + + return_vals = gimp_run_procedure ("gimp-plugin-enable-precision", + &nreturn_vals, + GIMP_PDB_END); + + success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS; + + gimp_destroy_params (return_vals, nreturn_vals); + + return success; +} + +/** + * gimp_plugin_precision_enabled: + * + * Whether this plug-in is using the real bit depth of drawables. + * + * Returns whether this plug-in is using the real bit depth of + * drawables, which can be more than 8 bits per channel. + * + * Returns: Whether precision is enabled. + * + * Since: 2.10 + **/ +gboolean +gimp_plugin_precision_enabled (void) +{ + GimpParam *return_vals; + gint nreturn_vals; + gboolean enabled = FALSE; + + return_vals = gimp_run_procedure ("gimp-plugin-precision-enabled", + &nreturn_vals, + GIMP_PDB_END); + + if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS) + enabled = return_vals[1].data.d_int32; + + gimp_destroy_params (return_vals, nreturn_vals); + + return enabled; +} |