On 09/19/2013 03:29 PM, Tavmjong Bah wrote:
Hi,
There are only a few more days until the end of GSOC. Can you provide a status report? A list of action items would be good, including a list of known bugs.
Things to finish up:
- Documentation (nothing fancy... could be on the Inkscape Wiki or some
other web page).
I have documented the changes and UI here: http://wiki.inkscape.org/wiki/index.php/Connectors
- A comparison of functionality to the existing code.
I tried to do this in the above wiki page. The only removal I did was the code finding shape's centers and intersecting connectors with shape outlines.
- Update to latest trunk.
I am currently doing that, but I have a SEGFAULT left. The porting to the new C++ SPObject tree was pretty straightforward and mostly consisted of adding "virtual" keywords and removing shim code.
- Bugs, particularly any segfaults.
Here is one bug I just found:
- Select and move a connector (the path, not the ends).
- Undo.
- Move one of the objects the connector is attached to.
The path reverts to the moved position.
I will look into that.
Sebastian
Hi Sebastian,
Today is the last day of GSoC! How is it going? I am eagerly waiting one last code check in.
On Sat, 2013-09-21 at 12:46 +0200, Sebastian Götte wrote:
On 09/19/2013 03:29 PM, Tavmjong Bah wrote:
Hi,
There are only a few more days until the end of GSOC. Can you provide a status report? A list of action items would be good, including a list of known bugs.
Things to finish up:
- Documentation (nothing fancy... could be on the Inkscape Wiki or some
other web page).
I have documented the changes and UI here: http://wiki.inkscape.org/wiki/index.php/Connectors
Good
- A comparison of functionality to the existing code.
I tried to do this in the above wiki page. The only removal I did was the code finding shape's centers and intersecting connectors with shape outlines.
OK. The SVG Working Group expressed some interest in having this functionality but it is not critical at the moment. (BTW, the WG discussed my connector proposal a week ago and the reception was favorable.)
- Update to latest trunk.
I am currently doing that, but I have a SEGFAULT left. The porting to the new C++ SPObject tree was pretty straightforward and mostly consisted of adding "virtual" keywords and removing shim code.
What is the status of the segfault?
- Bugs, particularly any segfaults.
Here is one bug I just found:
- Select and move a connector (the path, not the ends).
- Undo.
- Move one of the objects the connector is attached to.
The path reverts to the moved position.
I will look into that.
Any news about this?
Tav
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
On 23-9-2013 16:32, Sebastian Götte wrote:
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:
- 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.
I'm not 100% sure if I understand you correctly. The current behavior (release), is that when one group of objects is selected, and you shift-click an object in that group, the whole group is unselected. Which is desired behavior I believe. I do not understand the reason for step 4) in your description. Step 4 seems undesirable.
regards, Johan
On 09/23/2013 08:26 PM, Johan Engelen wrote:
On 23-9-2013 16:32, Sebastian Götte wrote:
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:
- 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.
I'm not 100% sure if I understand you correctly. The current behavior (release), is that when one group of objects is selected, and you shift-click an object in that group, the whole group is unselected. Which is desired behavior I believe. I do not understand the reason for step 4) in your description. Step 4 seems undesirable.
Yes. The confusing thing with this behavior is that any points in this group are displayed as selected and one can not distinguish between a point that is selected because it is part of the group and a point that is selected individually. However, when shift-clicking a point that is part of the group, the whole group gets deselected whereas when clicking a point that is not part of the group the point is deselected individually. Perhaps I have to add another control color scheme to distinguish between these two states.
Sebastian
participants (3)
-
Johan Engelen
-
Sebastian Götte
-
Tavmjong Bah