On 09/23/2013 11:20 AM, Tavmjong Bah wrote:
Hi Sebastian,
Today is the last day of GSoC! How is it going? I am eagerly waiting one last code check in.
I finished merging with the current trunk, porting everything to the new C++y object tree and am now tracking one segfault with libavoid connectors. I changed the UI a bit according to Josh's suggestions (I just sent a separate mail about this to inkscape-devel). There are two bugs left that I am aware of: Apparently, I managed to break libavoid object movement tracking and sporadically, when jamming the mouse to randomly create and destroy lots of points, Inkscape will segfault.
One UI issue is left, which stems from Inkscape's selection implementation: If a group contains SPPoints and the group is selected in the connector tool, the points are (correctly) displayed as selected, since any change to the group would affect them. However, when attempting to shift-unselect one of the points, the whole group is deselected and the point selected. The reason for this is that otherwise, four steps would be necessary: 1) find out whether the clicked item is in the selection 1a) if so, deselect and return 2) find out whether the clicked item is the descendant of any item of the selection 2a) if not so, select and return 3) deselect the selected ancestor of the clicked item 4) select any descendands of the ancestor just deselected, minus the clicked item I did not yet implement this since I do not know whether that really is the right approach.
Sebastian