Ted, Bryce, thanks for your detailed response and your suggestions. Since you offered help further down the road, I'd now like to ask for your advice again.
I was thinking that "up" and "down" are pretty overloaded already -- infact all the arrow keys are. So something like "o" and "p" might work better, or something with a modifier. I think we're going to have to start requiring second keyboards ;)
Sorry for the misleading labeling, I really wasn't thinking of the arrow keys. The Flash IDE uses "," and ".", but of course any two keys next to each other would do the job.
Unfortunately it is pretty much a full replacement today. Plus with serializing everything into files, it really isn't high performance. I'm not saying it's impossible with enough hardware, but I don't think using a script will work for you today.
This approach might be interesting for a proof of concept, but this really sounds like something more geared for the DOM-based embedded scripting approach.
Yes, but C++ works too. :) Implementing an effect in C++ is also pretty easy (if you know C++) as the interface is already well defined. I hope that we can get loadable C++ extensions working someday also.
I am almost as inexperienced and uncomfortable with C++ as I am with Python, so I wouldn't mind using C++. :-)
You just need to subclass the Inkscape::Extension::Implementation::Implementation object and implement the functions you're interested in (probably effect). You should look at blur and grid for examples.
Alright, the effect method is passed an Inkscape::UI::View::View as a "document" parameter. How do I get the current active layer from here? In the docs, I found these two layer functions:
((SPDesktop*)document)->selection->activeContext() ((SPDesktop*)document)->currentLayer()
"currentLayer" looks better to me, but the Doxygen comment says it's actually the top layer???
And once I got the layer, how do I set it to visible/invisible? At first glance, the method SPItem::setExplicitlyHidden(bool const) looks like it'd do the job. Can I safely cast the SPObject pointers to SPItem? What is the actual class of the layer nodes?
Finally, how do I register the extension class and bind it to keystrokes? Is there an example?
Thanks a lot for your advice! Gerrit
_________________________________________________________________ Express yourself instantly with MSN Messenger! Download today it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/