LightningIsMyName wrote:

Thanks a lot for your help!

With a just a little of refactoring I've managed to let the plugin be 
launched at startup as an extension,
and handling procedures as temps. Works great and I could dynamically 
change the menu items after a procedure
has been executed.

The only "problem" - the plugin has to be damn clean since it will live 
as long as gimp does.
> 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