G'Day! Peter and I have been working on a new grids and guides idea which extends the control handle idea of Dia and Visio 'correctly' (We can justify this claim quite strongly). There is a test bed version of it at:
http://bowman.csse.monash.edu.au/~pmoulder/guides-LATEST.tar.gz
To run it you will need python-gtk2 and python-numeric (also called numpy).
Please run it and tell us if the behaviour feels right - it is easier to try variations whilst the code is python, rather than C++ (although it is easier to know whether the behaviour feels right once we implement it in inkscape proper)
Feel free to ask questions about our intentions, and suggest extensions that would be helpful. Clearly the prototype is but a taste of what can be done with this new approach (We have several whiteboards worth of ideas to implement :), but it is important to work out the basic interface now.
In particular, what do people think about the two tools behaviour? Should this be folded into a modifier key on the selection tool? Can it be done well with only one tool? Is the breaking of constraint behaviour (which control point disconnects when you move something) reasonable, or can you suggest a better heuristic? (Currently the rule that is broken is chosen arbitrarily, perhaps it would be better to break the oldest created relationship, or perhaps the least recently moved?)
What do people think of the indicators for how control points are connected to guide lines and guide points? Suggestions?
In case you're wondering, our intent is to provide Dia level diagraming support, as well as strong CAD type design elements. Some things which we know how to do, but haven't added include: adjustable spacers, enforced alignment and distribution, clipart with programable control handles (like visio), and many other goodies :)
Thanks, njh