Files
gimp/devel-docs/libgimp/tmpl/gimpmodule.sgml
Michael Natterer b4ad2ab05b configure.in devel-docs/Makefile.am devel-docs/libgimpcolor/*
2001-05-04  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* devel-docs/Makefile.am
	* devel-docs/libgimpcolor/*
	* devel-docs/libgimpmath/*
	* devel-docs/libgimpwidgets/*: added new gtk-doc modules for
	libgimpcolor, libgimpmath and libgimpwidgets. Moved existing
	documentation from the old files to the new templates.

	* devel-docs/libgimp/*: regenerated all files and removed the
	stuff which is in the new modules now.

	* libgimpwidgets/gimpcolorarea.c
	* libgimpwidgets/gimpcolorbutton.[ch]: some documentation fixes.

	* po-libgimp/Makefile.in.in
	* po-plug-ins/Makefile.in.in
	* po-script-fu/Makefile.in.in: updated.
2001-05-04 20:39:29 +00:00

94 lines
2.5 KiB
Plaintext

<!-- ##### SECTION Title ##### -->
gimpmodule
<!-- ##### SECTION Short_Description ##### -->
Common definitions for creating a pluggable GIMP module.
<!-- ##### SECTION Long_Description ##### -->
<para>
Common definitions for creating a pluggable GIMP module.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
#GModule
</para>
<!-- ##### ENUM GimpModuleStatus ##### -->
<para>
</para>
@GIMP_MODULE_OK:
@GIMP_MODULE_UNLOAD:
<!-- ##### STRUCT GimpModuleInfo ##### -->
<para>
</para>
@shutdown_data:
@purpose:
@author:
@version:
@copyright:
@date:
<!-- ##### USER_FUNCTION GimpModuleInitFunc ##### -->
<para>
GIMP modules should #G_MODULE_EXPORT a function named "module_init"
of this type.
</para>
<para>
The "module_init" function is called by the GIMP at startup,
and should return either #GIMP_MODULE_OK if it sucessfully initialised or
#GIMP_MODULE_UNLOAD if the module failed to hook whatever functions
it wanted. #GIMP_MODULE_UNLOAD causes the module to be closed, so
the module must not have registered any internal functions or given
out pointers to its data to anyone.
</para>
<para>
If the module returns #GIMP_MODULE_OK, it should also return a
#GimpModuleInfo structure describing itself.
</para>
@module_info: Returns the #GimpModuleInfo desribing the module.
@Returns: A #GimpModuleStatus value indicating success.
<!-- ##### USER_FUNCTION GimpModuleCompletedCB ##### -->
<para>
The type of the @completed_cb passed to the "module_unload" function
(see below).
</para>
@completed_data: <para>
Must be the @completed_data pointer provided by the "module_unload"
function.
</para>
<!-- ##### USER_FUNCTION GimpModuleUnloadFunc ##### -->
<para>
If GIMP modules want to allow themselves to be unloaded, they
should #G_MODULE_EXPORT a function named "module_unload" of
this type.
</para>
<para>
GIMP calls the "module_unload" unload request function to ask
a module to prepare itself to be unloaded. It is called with the
value of @shutdown_data supplied in the #GimpModuleInfo struct.
The module should ensure that none of its code or data are being
used, and then call the supplied @completed_cb callback function with
the @completed_data provided. Typically the shutdown request function
will queue de-registration activities then return. Only when the
de-registration has finished should the @completed_cb be invoked.
</para>
@shutdown_data: The @shutdown_data supplied in the #GimpModuleInfo struct.
@completed_cb: The function to call after successful unload.
@completed_data: Has to be passed to the @completed_cb.