diff --git a/devel-docs/libgimp/libgimp3-sections.txt b/devel-docs/libgimp/libgimp3-sections.txt index 20ddc3e71c..9570b7646b 100644 --- a/devel-docs/libgimp/libgimp3-sections.txt +++ b/devel-docs/libgimp/libgimp3-sections.txt @@ -906,6 +906,8 @@ gimp_patterns_set_popup
gimpplugin GimpPlugIn +GimpPlugIn +GimpPlugInClass gimp_plug_in_set_translation_domain gimp_plug_in_set_help_domain gimp_plug_in_add_menu_branch @@ -925,8 +927,6 @@ GIMP_PLUG_IN GIMP_PLUG_IN_CLASS GIMP_PLUG_IN_GET_CLASS GIMP_TYPE_PLUG_IN -GimpPlugIn -GimpPlugInClass GimpPlugInPrivate gimp_plug_in_get_type
diff --git a/libgimp/gimpplugin.c b/libgimp/gimpplugin.c index 10665f9fb8..ab9f9b8fbd 100644 --- a/libgimp/gimpplugin.c +++ b/libgimp/gimpplugin.c @@ -323,9 +323,11 @@ gimp_plug_in_get_property (GObject *object, * 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 function can only be called in the - * GimpPlugIn::query() function of a plug-in and it has to be called - * before any procedure is installed. + * location. + * + * This function can only be called in the #GimpPlugInClass.query() + * function of a plug-in and it has to be called before any procedure + * is installed. * * Since: 3.0 **/ @@ -358,6 +360,9 @@ gimp_plug_in_set_translation_domain (GimpPlugIn *plug_in, * supported language there should be a file called 'gimp-help.xml' * that maps the help IDs to the actual help files. * + * This function can only be called in the #GimpPlugInClass.query() + * function of a plug-in. + * * Since: 3.0 **/ void @@ -425,8 +430,8 @@ gimp_plug_in_add_menu_branch (GimpPlugIn *plug_in, * %GIMP_PDB_PROC_TYPE_EXTENSION procedures it implements is invoked. * * This function will only ever be called with names returned by - * implementations of GimpPlugInClass::init_procedures() or - * GimpPlugInClass::query_procedures(). + * implementations of #GimpPlugInClass.init_procedures() or + * #GimpPlugInClass.query_procedures(). * * Returns: (transfer full): The newly created #GimpProcedure. **/ @@ -451,7 +456,7 @@ gimp_plug_in_create_procedure (GimpPlugIn *plug_in, * * This function adds a temporary procedure to @plug_in. It is usually * called from a %GIMP_PDB_PROC_TYPE_EXTENSION procedure's - * GimpProcedure::run(). + * #GimpProcedureClass.run(). * * A temporary procedure is a procedure which is only available while * one of your plug-in's "real" procedures is running. diff --git a/libgimp/gimpplugin.h b/libgimp/gimpplugin.h index 5cc12d1184..f6f36a614f 100644 --- a/libgimp/gimpplugin.h +++ b/libgimp/gimpplugin.h @@ -49,73 +49,46 @@ struct _GimpPlugIn GimpPlugInPrivate *priv; }; +/** + * GimpPlugInClass: + * @query_procedures: This method can be overridden by all plug-ins to + * return a newly allocated GList of allocated strings naming the + * procedures registered by this plug-in. See documentation of + * #GimpPlugInClass.init_procedures() for differences. + * @init_procedures: This method can be overridden by all plug-ins to + * return a newly allocated #GList of allocated strings naming + * procedures registered by this plug-in. + * It is different from #GimpPlugInClass.query_procedures() in that + * init happens at every startup, whereas query happens only once in + * the life of a plug-in (right after installation or update). Hence + * #GimpPlugInClass.init_procedures() typically returns procedures + * dependent to runtime conditions (such as the presence of a + * third-party tool), whereas #GimpPlugInClass.query_procedures() + * would usually return unconditional and always available procedures. + * Most of the time, you only want to override + * #GimpPlugInClass.query_procedures() and leave + * #GimpPlugInClass.init_procedures() untouched. + * @create_procedure: This method should be overridden by all plug-ins + * and return a newly allocated #GimpProcedure named @name. It will + * be called for every @name as returned by + * #GimpPlugInClass.query_procedures() and + * #GimpPlugInClass.init_procedures() so care must be taken to handle + * them all. + * @quit: This method can be overridden by a plug-in which needs to + * perform some actions upon quitting. + * + * Since: 3.0 + **/ struct _GimpPlugInClass { GObjectClass parent_class; - /** - * GimpPlugInClass::query_procedures: - * @plug_in: a #GimpPlugIn. - * - * This method can be overridden by all plug-ins to return a newly - * allocated GList of allocated strings naming the procedures - * registered by this plug-in. - * - * See documentation of GimpPlugInClass::init_procedures() for - * differences. - * - * Returns: (element-type gchar*) (transfer full): - * the names of the procedures registered by @plug_in. - */ GList * (* query_procedures) (GimpPlugIn *plug_in); - - /** - * GimpPlugInClass::init_procedures: - * @plug_in: a #GimpPlugIn. - * - * This method can be overridden by all plug-ins to return a newly - * allocated #GList of allocated strings naming procedures registered - * by this plug-in. - * - * It is different from GimpPlugInClass::query_procedures() in that - * init happens at every startup, whereas query happens only once in - * the life of a plug-in (right after installation or update). Hence - * GimpPlugInClass::init_procedures() typically returns procedures - * dependent to runtime conditions (such as the presence of a - * third-party tool), whereas GimpPlugInClass::query_procedures() - * would usually return unconditional and always available - * procedures. Most of the time, you only want to override - * GimpPlugInClass::query_procedures() and leave - * GimpPlugInClass::init_procedures() untouched. - * - * Returns: (element-type gchar*) (transfer full): - * the names of the procedures registered by @plug_in. - */ GList * (* init_procedures) (GimpPlugIn *plug_in); - /** - * GimpPlugInClass::create_procedure: - * @plug_in: a #GimpPlugIn. - * @procedure_name: procedure name. - * - * This method should be overridden by all plug-ins and return a newly - * allocated #GimpProcedure named @name. - * It will be called for every @name as returned by query_procedures() - * and init_procedures() so care must be taken to handle them all. - * - * Returns: (transfer full): - * the procedure to be registered by @plug_in. - */ GimpProcedure * (* create_procedure) (GimpPlugIn *plug_in, const gchar *procedure_name); - /** - * GimpPlugInClass::quit: - * @plug_in: a #GimpPlugIn. - * - * This method can be overridden by a plug-in which needs to perform - * some actions upon quitting. - */ void (* quit) (GimpPlugIn *plug_in); /* Padding for future expansion */