Hello Gena,

I tried to browse the source of the script-fu plugin to answer your
question, and this is what I came up with:

> "A temporary procedure is a procedure which is only available while one
> of your plug-in's "real" procedures is running. "

That is correct - If you will look at line 107
http://git.gnome.org/browse/gimp/tree/plug-ins/script-fu/script-fu.c#n107,
you will see that the plugin is registerd as an extension and not as a
regular GIMP plugin. On line 217 and 221, the plugin registers itself
as an extension, and this way it allows itself to run from the moment
gimp starts up, untill GIMP is exited.
When registering an extension instead of a "normal" GIMP plugin, the
run procedure will be called during GIMP's start-up, and the plugin
will then be able to register temporary procedures (exactly like the
Script-Fu scripts) that will be available untill GIMP exits.

Just to show you how the script-fu extension continues to run after it
was intialized, look at the list of all the running procedures on your
computer and you should see that as long as gimp is open, there is
also a procedure called script-fu running.

After creating the temporary procedures with your extension, you can
unregister them using gimp_uninstall_temp_proc, and the register them
again inside another menu.
What I suggested is probably not the best way in the world, but it's
the only way I can think of.

Hope this helps,
~ LightningIsMyName

On Tue, Feb 16, 2010 at 10:27 AM, Gena Batsyan <gbat...@gmail.com> wrote:
> Hi!
> I've been trying to find a way for a plugin to update menu entries it
> has initially registered from query() via gimp_install_procedure()
>
> When the plugin is being run it wishes to update the menu entries, for
> instance putting some named presets previously selected in the plugin
> interface to be easily and directly accessible from the gimp menu
> without opening plugin interface again.
>
> Is there a way to affect menu entries generated by a plugin after it's
> query() has been called?
>
> I thought maybe using gimp_install_temp_proc instead of
> gimp_install_procedure would do the trick, but documentation says:
>
> "A temporary procedure is a procedure which is only available while one
> of your plug-in's "real" procedures is running. "
>
> What exactly does it mean "while my 'real' procedure is RUNNING"?
>
> gimp_install_temp_proc does also accept the menu spec, so the procedure
> should also be available in menu, but at which times?
>
> Kind regards
> _______________________________________________
> Gimp-developer mailing list
> Gimp-developer@lists.XCF.Berkeley.EDU
> https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer
>
_______________________________________________
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer

Reply via email to