Comment 1 by Thomas Keller, Oct 7, 2010
I actually had this on my list for quite some time now and even have a untested / half-way implementation of a gitk-like revision view in trunk, but was never able to get completly through it. QGraphicsScene is around since Qt 4.2 and the issue is not primarily how to draw revisions and their connections on the screen, but how to do the layouting for the underlying DAG. There was once a Qt-based library which aimed at implementing that (Qanava), but this project somehow died off and the domain (libqanava.org) has vanished as well. Other existing options include using dot from Graphviz, which I neglected a bit because it requires having the graphviz package installed for that. (I read that you could use dot as some kind of library as well, but never got around implementing that.) The other option I know of is boost::graph (The Boost Graph Library), but to be honest I'm not smart enough to understand the needed math or highly templated C++ for that either. So in short, its something which I wanted to have in guitone for a long, long time, but which I abandoned to implement fully for various reasons until now. If you want to give it a shot, be my guest! Here is a PDF which explains the embedding for Graphviz' dot better and could serve as a starting point: http://www.graphviz.org/pdf/libguide.pdf
Comment 2 by Thomas Keller, Apr 20, 2011
There is a preliminary and unfinished implementation in the current development branch for this. Most important missing things: - zooming - packaging support (graphviz is a nightmare to package on mac for example)
Status:
Started
Owner: tommyd
Owner: tommyd
Comment 3 by Thomas Keller, May 11, 2011
Basic zoom support has been added, OSX packaging is still left to do.
Sign in to reply to this comment.
Reported by Thomas Keller, Oct 7, 2010