On Fri, 2004-06-11 at 13:26, Kees Cook wrote:
How difficult is this?
- Defining a UI for locking/unlocking nodes. When in "node edit" mode,
something needs to happen to change the view so a second node can be selected from another object.
- I assume SVG doesn't have any concept of this, so another
inkscape-named identifier would need to be added to describe locked nodes.
- The preview renderer probably won't show the "true" result, since it
would probably only work on the selected object?
Well, I don't think that implementing it is as difficult as how do you make it so that it is easy to use - and make it work within other uses of Inkscape. Obviously artistic works aren't as interested in linking lines as in technical diagrams.
Here are some thoughts on displaying it that I had a while ago (but I haven't really fleshed out entirely)
http://gould.cx/ted/blog/Inkscape_links.html
(and I'm still playing with the whole idea of a blog thing - I don't know if I like them or not yet - so bear with me)
But, let me put forth a vision on how I could see things working in the future - more or less try to put some thoughts in an e-mail. They are pretty raw thoughts though.
I think the next place that extensions need to go is doing effects. Eventually that will get done right, and the next logical place to extend them is to tools. So people have have a spiral tool, and a stop sign tool, and a (whatever) tool. Plus, if you don't use any of those they don't get loaded. But, the problem that this creates is there is going to be more tools than there is space on the screen.
The solution that I see to this is 'toolsets'. So there would be some predefined sets, and you can define your own. But basically someone could have the 'Artistic' toolset and the 'Technical Toolset' (and I'd love to see a 'Kids' toolset) which basically setup which tools are available on the bar on the left side of Inkscape.
From all of this I see two tools emerging that would be very useful for
technical drawing. One would be drawing lines that autoroute so that they don't cover other objects. The second would be drawing lines that link to objects. And perhaps some way to link the objects. The objects themselves would just then have a callback when they are modified which would then modify other objects. (so moving one would move, or transform, another).
So, to summarize, I think it would be a very cool feature for Inkscape to have - but getting it worked into the UI might be more difficult. Everything I'm saying can be considered "future looking statements" (to quote every press release out now) and would probably only come true if I worked on Inkscape in a vacuum - which we know is not true. (and they probably wouldn't come true very quickly ;)
I think implementing the actual object motion and responsiveness to each other wouldn't be that hard. Infact, it might be cool to add as something that is only really useful through the XML editor so that we could refine it a little bit first. I think getting a simple, useful UI for all of this is going to be the real trick though.
--Ted