X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gitk;h=a57e84cef7143839af954e2aa1fcb3d633befe41;hb=467592ea926d105e1cb78b2471b28bf37e8c62c6;hp=9ddff3e7f7b011564c56fb619f57bed66d875f7e;hpb=9ca72f4f60269fb6328bc9c4034d19b9479637ea;p=git.git diff --git a/gitk b/gitk index 9ddff3e7f..a57e84cef 100755 --- a/gitk +++ b/gitk @@ -593,6 +593,7 @@ proc makewindow {} { frame .bleft -width $geometry(botwidth) -height $geometry(botheight) } frame .bleft.top + frame .bleft.mid button .bleft.top.search -text "Search" -command dosearch \ -font $uifont @@ -602,12 +603,20 @@ proc makewindow {} { lappend entries $sstring trace add variable searchstring write incrsearch pack $sstring -side left -expand 1 -fill x + radiobutton .bleft.mid.diff -text "Diff" \ + -command changediffdisp -variable diffelide -value {0 0} + radiobutton .bleft.mid.old -text "Old version" \ + -command changediffdisp -variable diffelide -value {0 1} + radiobutton .bleft.mid.new -text "New version" \ + -command changediffdisp -variable diffelide -value {1 0} + pack .bleft.mid.diff .bleft.mid.old .bleft.mid.new -side left set ctext .bleft.ctext text $ctext -background $bgcolor -foreground $fgcolor \ -state disabled -font $textfont \ -yscrollcommand scrolltext -wrap none scrollbar .bleft.sb -command "$ctext yview" pack .bleft.top -side top -fill x + pack .bleft.mid -side top -fill x pack .bleft.sb -side right -fill y pack $ctext -side left -fill both -expand 1 lappend bglist $ctext @@ -648,8 +657,10 @@ proc makewindow {} { frame .bright.mode radiobutton .bright.mode.patch -text "Patch" \ -command reselectline -variable cmitmode -value "patch" + .bright.mode.patch configure -font $uifont radiobutton .bright.mode.tree -text "Tree" \ -command reselectline -variable cmitmode -value "tree" + .bright.mode.tree configure -font $uifont grid .bright.mode.patch .bright.mode.tree -sticky ew pack .bright.mode -side top -fill x set cflist .bright.cfiles @@ -720,6 +731,7 @@ proc makewindow {} { bindkey {findnext 0} bindkey ? findprev bindkey f nextfile + bindkey updatecommits bind . doquit bind . dofind bind . {findnext 0} @@ -921,6 +933,7 @@ proc bindall {event action} { } proc about {} { + global uifont set w .about if {[winfo exists $w]} { raise $w @@ -934,13 +947,19 @@ Gitk - a commit viewer for git Copyright © 2005-2006 Paul Mackerras Use and redistribute under the terms of the GNU General Public License} \ - -justify center -aspect 400 - pack $w.m -side top -fill x -padx 20 -pady 20 - button $w.ok -text Close -command "destroy $w" + -justify center -aspect 400 -border 2 -bg white -relief groove + pack $w.m -side top -fill x -padx 2 -pady 2 + $w.m configure -font $uifont + button $w.ok -text Close -command "destroy $w" -default active pack $w.ok -side bottom + $w.ok configure -font $uifont + bind $w "focus $w.ok" + bind $w "destroy $w" + bind $w "destroy $w" } proc keys {} { + global uifont set w .keys if {[winfo exists $w]} { raise $w @@ -985,11 +1004,17 @@ f Scroll diff view to next file Increase font size Decrease font size Decrease font size + Update } \ - -justify left -bg white -border 2 -relief sunken - pack $w.m -side top -fill both - button $w.ok -text Close -command "destroy $w" + -justify left -bg white -border 2 -relief groove + pack $w.m -side top -fill both -padx 2 -pady 2 + $w.m configure -font $uifont + button $w.ok -text Close -command "destroy $w" -default active pack $w.ok -side bottom + $w.ok configure -font $uifont + bind $w "focus $w.ok" + bind $w "destroy $w" + bind $w "destroy $w" } # Procedures for manipulating the file list window at the @@ -1455,20 +1480,21 @@ proc vieweditor {top n title} { toplevel $top wm title $top $title label $top.nl -text "Name" -font $uifont - entry $top.name -width 20 -textvariable newviewname($n) + entry $top.name -width 20 -textvariable newviewname($n) -font $uifont grid $top.nl $top.name -sticky w -pady 5 - checkbutton $top.perm -text "Remember this view" -variable newviewperm($n) + checkbutton $top.perm -text "Remember this view" -variable newviewperm($n) \ + -font $uifont grid $top.perm - -pady 5 -sticky w message $top.al -aspect 1000 -font $uifont \ -text "Commits to include (arguments to git rev-list):" grid $top.al - -sticky w -pady 5 entry $top.args -width 50 -textvariable newviewargs($n) \ - -background white + -background white -font $uifont grid $top.args - -sticky ew -padx 5 message $top.l -aspect 1000 -font $uifont \ -text "Enter files and directories to include, one per line:" grid $top.l - -sticky w - text $top.t -width 40 -height 10 -background white + text $top.t -width 40 -height 10 -background white -font $uifont if {[info exists viewfiles($n)]} { foreach f $viewfiles($n) { $top.t insert end $f @@ -1479,8 +1505,10 @@ proc vieweditor {top n title} { } grid $top.t - -sticky ew -padx 5 frame $top.buts - button $top.buts.ok -text "OK" -command [list newviewok $top $n] - button $top.buts.can -text "Cancel" -command [list destroy $top] + button $top.buts.ok -text "OK" -command [list newviewok $top $n] \ + -font $uifont + button $top.buts.can -text "Cancel" -command [list destroy $top] \ + -font $uifont grid $top.buts.ok $top.buts.can grid columnconfigure $top.buts 0 -weight 1 -uniform a grid columnconfigure $top.buts 1 -weight 1 -uniform a @@ -1904,7 +1932,7 @@ proc do_file_hl {serial} { } else { set gdtargs [list "-S$highlight_files"] } - set cmd [concat | git-diff-tree -r -s --stdin $gdtargs] + set cmd [concat | git diff-tree -r -s --stdin $gdtargs] set filehighlight [open $cmd r+] fconfigure $filehighlight -blocking 0 fileevent $filehighlight readable readfhighlight @@ -1956,7 +1984,7 @@ proc readfhighlight {} { } if {[eof $filehighlight]} { # strange... - puts "oops, git-diff-tree died" + puts "oops, git diff-tree died" catch {close $filehighlight} unset filehighlight } @@ -4467,6 +4495,13 @@ proc getblobdiffline {bdf ids} { } } +proc changediffdisp {} { + global ctext diffelide + + $ctext tag conf d0 -elide [lindex $diffelide 0] + $ctext tag conf d1 -elide [lindex $diffelide 1] +} + proc prevfile {} { global difffilestart ctext set prev [lindex $difffilestart 0] @@ -5811,6 +5846,7 @@ proc doprefs {} { global maxwidth maxgraphpct diffopts global oldprefs prefstop showneartags global bgcolor fgcolor ctext diffcolors + global uifont set top .gitkprefs set prefstop $top @@ -5824,6 +5860,7 @@ proc doprefs {} { toplevel $top wm title $top "Gitk preferences" label $top.ldisp -text "Commit list display options" + $top.ldisp configure -font $uifont grid $top.ldisp - -sticky w -pady 10 label $top.spacer -text " " label $top.maxwidthl -text "Maximum graph width (lines)" \ @@ -5836,6 +5873,7 @@ proc doprefs {} { grid x $top.maxpctl $top.maxpct -sticky w label $top.ddisp -text "Diff display options" + $top.ddisp configure -font $uifont grid $top.ddisp - -sticky w -pady 10 label $top.diffoptl -text "Options for diff program" \ -font optionfont @@ -5848,6 +5886,7 @@ proc doprefs {} { grid x $top.ntag -sticky w label $top.cdisp -text "Colors: press to choose" + $top.cdisp configure -font $uifont grid $top.cdisp - -sticky w -pady 10 label $top.bg -padx 40 -relief sunk -background $bgcolor button $top.bgbut -text "Background" -font optionfont \ @@ -5875,12 +5914,15 @@ proc doprefs {} { grid x $top.hunksepbut $top.hunksep -sticky w frame $top.buts - button $top.buts.ok -text "OK" -command prefsok - button $top.buts.can -text "Cancel" -command prefscan + button $top.buts.ok -text "OK" -command prefsok -default active + $top.buts.ok configure -font $uifont + button $top.buts.can -text "Cancel" -command prefscan -default normal + $top.buts.can configure -font $uifont grid $top.buts.ok $top.buts.can grid columnconfigure $top.buts 0 -weight 1 -uniform a grid columnconfigure $top.buts 1 -weight 1 -uniform a grid $top.buts - - -pady 10 -sticky ew + bind $top "focus $top.buts.ok" } proc choosecolor {v vi w x cmd} { @@ -6304,6 +6346,7 @@ set highlight_paths {} set searchdirn -forwards set boldrows {} set boldnamerows {} +set diffelide {0 0} set optim_delay 16