summaryrefslogtreecommitdiff
path: root/git-gui/lib/commit.tcl
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2007-08-29 21:45:21 +1000
committerPaul Mackerras <paulus@samba.org>2007-08-29 21:45:21 +1000
commit0380081c65c3e8a46caad9aebe8e97ff65510453 (patch)
tree9b86b7a94a0396d6282a791565347bea3f2f947a /git-gui/lib/commit.tcl
parent8f0bc7e95e41673a853a53e17708c6f4f46e6420 (diff)
downloadgit-0380081c65c3e8a46caad9aebe8e97ff65510453.tar.gz
gitk: Do only the parts of the layout that are needed
This changes layoutrows and optimize_rows to make it possible to lay out only a little bit more of the graph than is visible, rather than having to lay out the whole graph from top to bottom. To lay out some of the graph without starting at the top, we use the new make_idlist procedure for the first row, then lay it out proceeding downwards as before. Empty list elements in rowidlist are used to denote rows that haven't been laid out yet. Optimizing happens much as before except that we don't try to optimize unless we have three consecutive rows laid out (or the top 2 rows). We have a new list, rowisopt, to record which rows have been optimized. If we change a row that has already been drawn, we set a flag which causes drawcommits to throw away everything drawn on the canvas and redraw the visible rows. Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'git-gui/lib/commit.tcl')
0 files changed, 0 insertions, 0 deletions