On Fri, 2011-09-30 at 01:55 -0700, Jon Cruz wrote:
When the connectors were being worked out, I was told that most of the could would be able to handle multiple potential connection points in general, but the code to get them in as source was not done.
The code had a few errors which prevented multiple connectors working, but on the whole that's to be expected when the logic was never tested. I can say however that it did appear to be leaning heavily towards multiple points, although there is a lot of code which didn't seem to do anything, or at least nothing I could activate.
It might be worth looking into, since it sounds like you're on track with at least some other of the connectors cleanup.
The text of a path stuff is interesting, but what the connector work needs is relative coords. So I cheated by using the center points in child objects of groups. At the moment I detect only rectangles inside a group, but I think a better solution would be to use an inkscape attribute on the object probably loaded in sp_item or sp_object.
The only difficulty is having groups where some of the child objects are deliberately invisible to the renderer but are used as connector points for functionality. Mixing on canvas elements and editor information is something I don't like, but this solution was too interesting not to try.
Not sure if the connector code can be cleaned up, it's hard to know what we have and what we want it to continue to do.
Martin.