cneben / QuickQanava

:link: C++17 network / graph visualization library - Qt6 / QML node editor.
http://cneben.github.io/QuickQanava/index.html
Other
1.15k stars 229 forks source link

Feature request: edge control point offsets/anchors #203

Open petrmanek opened 1 year ago

petrmanek commented 1 year ago

I am implementing my own node, port and edge items and discovered a feature that I am missing in the library. Perhaps I am have just overlooked it -- in that case please feel free to point it out.

I would like to be able to specify anchors for edge control points. This is useful when ports use more complex shapes than just circles. Here is an example from my app (WIP):

20230303_16h38m04s_grim

You can see that by default, control points are placed in the center of a port. This works for circles but not for my lines + "half-diamonds". Ideally, I would like to be able to specify some sort of anchor point within the port, from which control points are derived. To maintain compatibility, the default implementation can place this anchor in the center of the port item, however the convenient part would then be that components like mine could override this behavior.

Here is a reference to the code which I think is responsible for placing anchors in the center of the port item. Of course this is just one case of edge types (there are multiple variants of the same logic in similar functions in this file).

petrmanek commented 1 year ago

Ping @cneben

petrmanek commented 1 year ago

Anyone here?

petrmanek commented 1 year ago

This issue is now over a month old, and still has no response. I am more than happy to lend my time & energy in an effort to implement this feature, however this will be much more difficult for me to do without pointers and feedback from the maintainers. Please respond.

petrmanek commented 1 year ago

Ping @cneben