
2015-04-11 4:00 GMT+02:00 Martin Owens <doctormo@...400...>:
2a) Exposing API via DBus is more difficult than just making a binding.
Is it? Only if one were experienced with one and not the other.
We have a scripting language binding. It's not great. It requires invoking from inkscape, a complete build of said language for mac and windows distributions and is very very poky. It's amazing we get so much out of it.
What we have is not a binding at all, it's just a means to pipe the raw XML from Inkscape to an arbitrary filter program, with Glade-like .inx files that let you specify the UI for additional parameters, and receive back modified output. The scripts do not invoke any functions within Inkscape, they are entirely self-contained.
For such a model, allowing arbitrary implementation languages is OK, since to Inkscape the script is just a black box with one input, one output and some extra command line parameters.
A better reason would be the lack of current DBus support in Windows. Although that could be solved in later Gtk releases/builds.
DBus is not part of GTK
2c) The API of the existing DBus binding is really poor.
So is the python scripting 'binding'. That's not a reason to not do a job well.
For the existing Python extensions there is no API at all. The only point of interface between Inkscape and script extensions are the .inx files that specify how the UI for extra parameters should look, and these are reasonably well designed.
Regards, Krzysztof