On 2015-11-08 22:05, Elle Stone wrote:
On 11/08/2015 11:40 AM, Jehan wrote:

Le 6 nov. 2015 à 08:18, Elle Stone <ellest...@ninedegreesbelow.com> a
écrit :

A generic "other editing operation" icon/cursor might be a nice thing
to display when the selected editing operation doesn't have an
editing-operation-specific" icon/cursor.

What is the defining difference between a filter and a tool, other
than the place they show up in the menu and whether they can be put in
the toolbox?

Filters are basically plugins/scripts made to edit pixels (though
nowadays they have mostly been re-implemented as GEGL operations
instead), and as such they have a very limited interaction with GIMP GUI
as of today (limited by the API GIMP provides).

Thanks! That makes sense. So GEGL operations under "Tools" are also filters?

They are different from the old-style filters in the implementation perspective, but we can say they are the same conceptually, i.e. basically some "operations" which transform an input image into another. Nowadays we are trying to get rid of old-style filters (upstream at least. I think third-party dev would still be able to create old-style filters without making a GEGL op, even though these are not upstream preferences anymore).

As far as I know, GIMP
has no API to change the cursor to be used over the main canvas.
Moreover you can perfectly run several plugins at once (which in many
cases — in particular for these plugins which actually edit pixels —
would not be wise), so how would this be dealt with anyway?

Hmm, I think I've accidentally run more than one filter at a time, and
it doesn't seem like a good idea, I think I might even have crashed
GIMP once or twice doing that. Is there any advantage to keeping this

It's less an "option" than a lack in our API. Also some plugins are not meant to edit the image (they are not really filters). For instance the animation plugin could run for a very long time alongside other filters and not be much of a problem. Well it's not entirely true currently (for instance removing a layer in particular can be a problem), but it should be. This is a preview plugin which should be able to run while you modify your image.

In any case, these are just daily proofs that our API is still too limited. Because you are right: a plugin which modifies deeply an image should be able to advertize to GIMP it cannot run alongside another similar plugin. And plugins should be able to receive "updates" from GIMP about modified images, and so on.


Tools are hard-coded in GIMP, not through plugins, and you can only
select one tool at a time. Being hard coded in GIMP core, they have
access to any part of a GUI that you are willing to implement. But users are not able to create their own tools without going through the normal
upstream validation.

Thanks! That's a very clear explanation.


Reply via email to