On 10 June 2013 00:43, Roger Booth <rbooth@kabooth.com> wrote:
On 06/09/2013 07:18 AM, Lex Trotman wrote:
[...]

But if I'm going to *improve* the docs, I *still* have an outstanding (in a manner of speaking) question:

Why does the function plugin_init() accept the one parameter GeanyData*?

The reason that is a question is that the three global variables

GeanyPlugin         *geany_plugin;
GeanyData           *geany_data;
GeanyFunctions      *geany_functions;

are available to a plugin and you will notice that one of those global variables is geany_data which is suspiciously similar to the parameter to plugin_init().

Yes it is the same.
 

So either there is no reason to pass the parameter to plugin_init() or there is a good reason to pass the parameter to plugin_init().

Since it is generally acknowledged that globals are bad, possibly someone started the process of removing the globals by switching to passing as parameters, but did not get time to finish the process or ran into other problems, but there is no indication I can find of why its that way.
 
[...]

Cheers
Lex
 
_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel




_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel
So when I document plugin_init(), you are OK with me saying that the developer can use the global variable geany_data interchangeably with the parameter to plugin_init(), and this behavior will not change until -- gee, is this when the ABI changes?

Yes that would be an ABI change, and an API change.

I am not aware of anyone proposing to change this at the moment, so you should be ok.

Cheers
Lex
 

_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel