Merge with gitk.

This merges commit
    b664550c06
from gitk into our head commit
    bf57030315

Sincerely,
    jit-merge command.
This commit is contained in:
Junio C Hamano 2005-08-11 18:24:35 -07:00
commit 2b64f88f09

43
gitk
View File

@ -31,7 +31,7 @@ proc getcommits {rargs} {
set phase getcommits
set startmsecs [clock clicks -milliseconds]
set nextupdate [expr $startmsecs + 100]
set ncmupdate 0
set ncmupdate 1
if [catch {
set parse_args [concat --default HEAD $rargs]
set parsed_args [split [eval exec git-rev-parse $parse_args] "\n"]
@ -62,7 +62,6 @@ proc getcommitlines {commfd} {
global commits parents cdate children nchildren
global commitlisted phase commitinfo nextupdate
global stopped redisplaying leftover
global numcommits ncmupdate
set stuff [read $commfd]
if {$stuff == {}} {
@ -110,10 +109,8 @@ to allow selection of commits to be displayed.)}
set commitlisted($id) 1
parsecommit $id $cmit 1
drawcommit $id
if {[clock clicks -milliseconds] >= $nextupdate
&& $numcommits >= $ncmupdate + 100} {
doupdate
set ncmupdate $numcommits
if {[clock clicks -milliseconds] >= $nextupdate} {
doupdate 1
}
while {$redisplaying} {
set redisplaying 0
@ -123,10 +120,8 @@ to allow selection of commits to be displayed.)}
foreach id $commits {
drawcommit $id
if {$stopped} break
if {[clock clicks -milliseconds] >= $nextupdate
&& $numcommits >= $ncmupdate + 100} {
doupdate
set ncmupdate $numcommits
if {[clock clicks -milliseconds] >= $nextupdate} {
doupdate 1
}
}
}
@ -134,14 +129,25 @@ to allow selection of commits to be displayed.)}
}
}
proc doupdate {} {
global commfd nextupdate
proc doupdate {reading} {
global commfd nextupdate numcommits ncmupdate
incr nextupdate 100
if {$reading} {
fileevent $commfd readable {}
}
update
set nextupdate [expr {[clock clicks -milliseconds] + 100}]
if {$numcommits < 100} {
set ncmupdate [expr {$numcommits + 1}]
} elseif {$numcommits < 10000} {
set ncmupdate [expr {$numcommits + 10}]
} else {
set ncmupdate [expr {$numcommits + 100}]
}
if {$reading} {
fileevent $commfd readable [list getcommitlines $commfd]
}
}
proc readcommit {id} {
if [catch {set contents [exec git-cat-file commit $id]}] return
@ -1127,8 +1133,7 @@ proc drawcommit {id} {
}
if {[clock clicks -milliseconds] >= $nextupdate
&& $numcommits >= $ncmupdate} {
doupdate
set ncmupdate $numcommits
doupdate 1
if {$stopped} break
}
}
@ -1171,7 +1176,7 @@ proc drawgraph {} {
if {$startcommits == {}} return
set startmsecs [clock clicks -milliseconds]
set nextupdate [expr $startmsecs + 100]
set ncmupdate 0
set ncmupdate 1
initgraph
set todo [lindex $startcommits 0]
drawrest 0 1
@ -1210,10 +1215,8 @@ proc drawrest {level startix} {
drawslants $level
}
if {[clock clicks -milliseconds] >= $nextupdate
&& $numcommits >= $ncmupdate + 100} {
update
incr nextupdate 100
set ncmupdate $numcommits
&& $numcommits >= $ncmupdate} {
doupdate 0
}
}
}