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

Gimp-user Digest, Vol 8, Issue 19

This discussion is connected to the gimp-user-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.

3 of 4 messages available
Toggle history

Please log in to manage your subscriptions.

20030522191255.3A3151020C@l... 07 Oct 20:15
  Gimp-user Digest, Vol 8, Issue 19 Michael J. Hammel 22 May 21:38
   Gimp-user Digest, Vol 8, Issue 19 Sven Neumann 22 May 22:14
  Gimp-user Digest, Vol 8, Issue 19 Michael J. Hammel 22 May 21:49
Michael J. Hammel
2003-05-22 21:38:21 UTC (almost 21 years ago)

Gimp-user Digest, Vol 8, Issue 19

On Thu, 2003-05-22 at 14:12, kenny.law@net-tribe.com wrote

I am just new to programming plugins for Gimp. I've been surfing around trying to get information on the web, but most information is outdated or too messy.

I am trying to understand the sourcecodes for plugins that came with the gimp package(the C plugins).

Assuming you're running under Linux, open a browser and view the file file:///usr/share/gimp/1.2/devel-docs/html/libgimp/index.html

This is the API documentation for Plug-Ins. Its very handy information.

Thing is, I have no idea where the gimp library is and descriptions on it= s
use. I would also like to find a function that deals with mouse events, and most I've seen is something called Gimp Drawing Kit(GDK), but I have no idea where to get it or how to use it.

The GIMP library is called libgimp. To find it, try "gimp-config --libs". If you have "gimp-config" in your path, then this will print out the line you need to use when linking your GIMP plug-in. gimp-config has other useful information for compiling your plug-in too. Try "gimp-config --help" for more information.

GDK is a toolkit that handles platform specific interfaces. For Linux, this means it handles low level drawing routines. I use it extensively in some of my plug-ins (a new version of which, with lots of new plug-ins, will be out sometime in the next month, I hope). Mouse events within your plug-in can be handled with GDK. Mouse events that occur in an actual Canvas (re: Image) window cannot be passed to your plug-in, so you'll want to make a "preview" window in your plug-in and handle mouse events there.

Hope that someone can point me to some links. gimp.org is not that helpful at all.

I should probably write an article on this at some point. I don't think anyone has done so yet. But because the lead time on articles is usually rather long, and the schedule for GIMP releases is not very strict, I always worry if the article will be out of date by the time it gets published. I still haven't looked at the changes from 1.2 to 1.3 for the GIMP plug-in API. Hopefully it isn't drastically changed.

Anyway, hope that helps a little.

Michael J. Hammel
2003-05-22 21:49:14 UTC (almost 21 years ago)

Gimp-user Digest, Vol 8, Issue 19

On Thu, 2003-05-22 at 14:12, Markus Tacker wrote

anyone knowing a free software for page layouts similar to=20 Quark XPress or Indesign for Linux.

WYSIWYG page layout under Linux (or open source) is not well supported yet. You can try Sodipodi, which is a start, but its more of a vector drawing program. There was one other project, I think, but for the life of me I can't remember its name (and its not in my graphics tools catalog at http://www.graphics-muse.com).

Sven Neumann
2003-05-22 22:14:14 UTC (almost 21 years ago)

Gimp-user Digest, Vol 8, Issue 19

Hi,

"Michael J. Hammel" writes:

I should probably write an article on this at some point. I don't think anyone has done so yet. But because the lead time on articles is usually rather long, and the schedule for GIMP releases is not very strict, I always worry if the article will be out of date by the time it gets published. I still haven't looked at the changes from 1.2 to 1.3 for the GIMP plug-in API. Hopefully it isn't drastically changed.

The changes are not drastic. We need to write a proper document about what changed from 1.2 but it porting a plug-in boils down to:

- Port your plug-in to gtk+-2.0. Depending on the GUI of your plug-in this is trivial or a major rewrite. For a lot of plug-ins, no changes are necessary.
- Replace "drawable->id" with "drawable->drawable_id". - Include gimpcompat.h.

Your plug-in should compile now. But we are not yet done:

- Look at gimpcompat.h and do the changes shown there to your code. Then remove the inclusion of gimpcompat.h again.

Sven