gimp/app/plug-in/plug-in-def.h
Michael Natterer 1f2c75e507 Completed the new help infrastructure. Needs some polishing but basically
2003-08-28  Michael Natterer  <mitch@gimp.org>

	Completed the new help infrastructure. Needs some polishing but
	basically works as proposed:

	* tools/pdbgen/pdb/plug_in.pdb: changed gimp_plugin_help_register()
	to take a "domain_name" (which is the XML namespace) and a
	"domain_uri" (which is the root of the plug-in's help pages).

	* tools/pdbgen/pdb/help.pdb: changed gimp_help() to take help_id
	instead of a non-UTF-8 help_path.

	* app/plug-in/plug-in-def.[ch]
	* app/plug-in/plug-in-proc.[ch]
	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-ins.[ch]: remember the plug-ins' help_domain
	and help_uri instead of just help_path. Changed all plug-in APIs
	to reflect this change.

	* app/widgets/gimphelp.[ch]: on helpbrowser startup, pass it the
	whole list of help domains. The actual help request is now made
	using the browser's temporary procedure.

	* app/core/gimp.h
	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/plug-in-menus.[ch]
	* app/widgets/gimpitemfactory.c: changed accordingly.

	* app/pdb/help_cmds.c
	* app/pdb/plug_in_cmds.c
	* libgimp/gimphelp_pdb.[ch]
	* libgimp/gimpplugin_pdb.[ch]: regenerated.

	Changed the help broser to load the pages according to the
	new system:

	- moved the browser window stuff to dialog.[ch]
	- moved help domain handling to domain.[ch]
	- added gimp-help.xml parsing to domain.c
	- tons of cleanup

	* plug-ins/helpbrowser/Makefile.am
	* plug-ins/helpbrowser/dialog.[ch]
	* plug-ins/helpbrowser/domain.[ch]: new files.
	* plug-ins/helpbrowser/helpbrowser.c: chopped.
2003-08-28 18:49:11 +00:00

64 lines
2.7 KiB
C

/* The GIMP -- an image manipulation program
* Copyright (C) 1995 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.
*/
#ifndef __PLUG_IN_DEF_H__
#define __PLUG_IN_DEF_H__
#include <time.h>
struct _PlugInDef
{
gchar *prog;
GSList *proc_defs;
gchar *locale_domain_name;
gchar *locale_domain_path;
gchar *help_domain_name;
gchar *help_domain_uri;
time_t mtime;
gboolean needs_query; /* Does the plug-in need to be queried ? */
gboolean has_init; /* Does the plug-in need to be initialized ? */
};
PlugInDef * plug_in_def_new (const gchar *prog);
void plug_in_def_free (PlugInDef *plug_in_def,
gboolean free_proc_defs);
void plug_in_def_add_proc_def (PlugInDef *plug_in_def,
PlugInProcDef *proc_def);
void plug_in_def_set_locale_domain_name (PlugInDef *plug_in_def,
const gchar *domain_name);
void plug_in_def_set_locale_domain_path (PlugInDef *plug_in_def,
const gchar *domain_path);
void plug_in_def_set_help_domain_name (PlugInDef *plug_in_def,
const gchar *domain_name);
void plug_in_def_set_help_domain_uri (PlugInDef *plug_in_def,
const gchar *domain_uri);
void plug_in_def_set_mtime (PlugInDef *plug_in_def,
time_t mtime);
void plug_in_def_set_needs_query (PlugInDef *plug_in_def,
gboolean needs_query);
void plug_in_def_set_has_init (PlugInDef *plug_in_def,
gboolean has_init);
#endif /* __PLUG_IN_DEF_H__ */