RSS/Atom feed Twitter
Site is read-only, email is disabled

plug-in update questions

This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.

This is a read-only list on gimpusers.com so this discussion thread is read-only, too.

2 of 2 messages available
Toggle history

Please log in to manage your subscriptions.

plug-in update questions Steve Lipa 12 Dec 19:19
  plug-in update questions Sven Neumann 12 Dec 20:31
Steve Lipa
2003-12-12 19:19:41 UTC (over 20 years ago)

plug-in update questions

Hello GIMP developers:

I am in the process of updating my plug-in (p2m-plugin) to work with GIMP 1.3. My GIMP is based on the gimp-1.3.23.tar.bz2 tarball. Getting the plug-in to work with 1.3 has been fairly straightforward, but I was hoping to get your advice on a couple of topics:

1) My plug-in converts images into integrated circuit or printed circuit board layouts. (You might use it to put your company logo on a chip.) Thus it registers file save handlers. On the other hand, it does not make sense to try to convert layouts to images, so there are no corresponding file load handlers. However, after using my plugin to save logo.jpg as logo.cif, for example, the File/Open Recent menu will include an entry for logo.cif. Is there anything my save handler can do to dissuade GIMP from adding logo.cif to this list?

2) I haven't quite figured out how the help system works. I think I have all of the software installed correctly, including the CVS version of gtkhtml2 and all of the stuff mentioned in devel-docs/README.gtkdoc. When I hit the F1 button, the GIMP Help Browser appears but so does a GIMP Message informing me that my gimp-help.xml file is missing. I am further confused by the fact that gimp-plugin-template-1.3.2 installs PREFIX/share/gimp-plugin-template/help/C/gimp-plugin-template.html while the RGB-mixer plug-in (which seems to be based on the gimp-plugin-template) installs its help as PREFIX/share/gimp/1.3/help/C/filters/RGB-mixer.html I notice that the RGB-mixer plug-in has a GTK_STOCK_HELP button in its dialog but none of the standard plug-ins seem to. Is there any particular reason that I should either include or not include a GTK_STOCK_HELP button? Also, I cannot type anything into what appears to be a URL entry area in the GIMP Help Browser. Is this possibly because I have installed something wrong? Could someone please provide a simplified overview of how the help system works and maybe point me towards what I need to read to figure out how to test my plug-in's help pages? I am mainly interested in knowing if I need to provide xml files (I don't know anything about xml but will learn if I have to...) or if I can get away with html, where they really need to be installed, and how to tell the GIMP where to find them.

Thanks very much for any help you can offer, and for your work on the GIMP. 1.3.23 is very nice.

Steve

Sven Neumann
2003-12-12 20:31:00 UTC (over 20 years ago)

plug-in update questions

Hi,

Steve Lipa writes:

1) My plug-in converts images into integrated circuit or printed circuit board layouts. (You might use it to put your company logo on a chip.) Thus it registers file save handlers. On the other hand, it does not make sense to try to convert layouts to images, so there are no corresponding file load handlers. However, after using my plugin to save logo.jpg as logo.cif, for example, the File/Open Recent menu will include an entry for logo.cif. Is there anything my save handler can do to dissuade GIMP from adding logo.cif to this list?

I don't think there's a way to prevent that from happening.

2) I haven't quite figured out how the help system works. I think I have all of the software installed correctly, including the CVS version of gtkhtml2 and all of the stuff mentioned in devel-docs/README.gtkdoc. When I hit the F1 button, the GIMP Help Browser appears but so does a GIMP Message informing me that my gimp-help.xml file is missing.

Look at the latest release of the gimp-plugin-template or gimp-freetype (from CVS). They install the gimp-help.xml file that defines how to map help IDs to URLs.

I am further confused by the fact that gimp-plugin-template-1.3.2 installs
PREFIX/share/gimp-plugin-template/help/C/gimp-plugin-template.html while the RGB-mixer plug-in (which seems to be based on the gimp-plugin-template) installs its help as PREFIX/share/gimp/1.3/help/C/filters/RGB-mixer.html

The latter is wrong since the plug-in should install into it's own prefix. But as long as the gimp-help.xml is installed into a unique place, it doesn't really matter since the plug-in also registers the base URL for the help pages. See http://developer.gimp.org/api/1.3/libgimp/libgimp-gimpplugin.html#gimp-plugin-help-register

I notice that the RGB-mixer plug-in has a GTK_STOCK_HELP button in its dialog but none of the standard plug-ins seem to. Is there any particular reason that I should either include or not include a GTK_STOCK_HELP button?

The standard setup for GIMP plug-ins is not to have a help button but to bind to F1 for help.

Also, I cannot type anything into what appears to be a URL entry area in the GIMP Help Browser. Is this possibly because I have installed something wrong?

No, the combo box is simply not supposed to be used to type things into.

Could someone please provide a simplified overview of how the help system works and maybe point me towards what I need to read to figure out how to test my plug-in's help pages? I am mainly interested in knowing if I need to provide xml files (I don't know anything about xml but will learn if I have to...) or if I can get away with html, where they really need to be installed, and how to tell the GIMP where to find them.

You need to install a (very simple) gimp-help.xml file that defines where the help (in HTML format) is installed and how it is associated to the identifier(s) your plug-in registers. You will not need anything but a vague idea about XML in order to adapt the example XML file to your needs. If you really want to understand how it works, you will need a basic understanding of XML namespaces though.

Detailed instructions appeared earlier here on this list when the implementation was discussed. You should be able to find them in the list archives.

Sven