For the content part, the current Node/SPObject API is pretty good already. We can modify the Node
and use the NodeObserver to get the modification which is done inside the inkscape. Since the SPObject
is an instance of GObject, the reference count is maintained. The Node is an issue since it is not GObject.
Therefore, we will not save the reference to it and use the SPObject instead.

However, we need more than that. For example, we need to know the selection set is changed so that we
can display some information according to the current selection. I can bind the signal or callback, which
is available in the curretn codebase. But, it's better if there is an official interface for the UI related stuff.

I can image that we need
* Intercept some signals to know the UI change made by users
* Register a new menu item or toolbar item
* Add dock item into any part of the UI
* Call inkscape functions. It is equal to change the current selection set and then send the verb.

DBus is not a good idea since the Windows port is very important because our extension
is to provide a tools for the art designer, who typically use Windows.

2010/12/13 Jon Cruz <jon@...18...>

On Dec 12, 2010, at 5:56 AM, Krzysztof Kosi??ski wrote:

> 2010/12/11 Yu-Chung Wang <wycc@...233.....2510...>:
>> The other possibility is not to put the python into the code base directly.
>> Instead, define
>> an binding interface which should be used by any system like ours so that we
>> can develop
>> our stuff outside the code base safely. You can decide to include our stuff
>> or not until
>> the technical issue is clear.
>
>
> There is a DBus API available in the development version. It currently
> works only on Linux. You may use it as a language-neutral binding.


Just take care that the *content* and form of the API is not ready for full extensions, and the GSoC project that added it was only focused on getting *some* DBus interface running, not in getting the final interface Inkscape will be providing in the long term.


------------------------------------------------------------------------------
Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
new data types, scalar functions, improved concurrency, built-in packages,
OCI, SQL*Plus, data movement tools, best practices and more.
http://p.sf.net/sfu/oracle-sfdev2dev
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...1794...s.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/inkscape-devel