Hello all,
Haven't posted a message here in a long time -- hope things are going well!
I've received a message asking about the best way to access Inkscape's document data as it's changed. His project involves serving document data from Inkscape to locally-running programs, for which he plans to use DBus. The questioner prefers to remain anonymous for now.
My initial response recommended implementing Inkscape::UndoStackObserver, much as Inkboard did, as it's an easy way to obtain a stream of transactions on the document. However, questioner's concern with this approach was that listening for changes on the undo stack wouldn't capture intermediate states of actions, e.g. motion along a path. He brought up another possibility, which was to send changes in batches at short intervals (using, say, Inkscape::XML::NodeObserver).
I'm no longer familiar enough with the Inkscape codebase to give an opinion on how well this would work, nor do I know if there's been any changes in the past few years that would make this sort of thing easier. Can anyone help out?
I can offer clarifications as necessary.
Thanks,
- David