mirror of
https://github.com/git/git.git
synced 2024-11-01 06:47:52 +01:00
gitk: Move hard-coded colors to .gitk
The Preferences dialog gives control of the colors of some elements of the gitk user interface, but many are hard-coded in the gitk script. In order to allow these to be customized through the gitk config file, these other colors are stored in variables which can be set in the config file, thus providing a way for color schemes to be stored and shared. For win32, this makes the default foreground color that of window text rather than button text. Signed-off-by: Gauthier Östervall <gauthier@ostervall.se> [paulus@samba.org: Reworded commit message to be clearer, changed filesepfgcolor to black] Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
a8b38d9571
commit
252c52df9d
1 changed files with 110 additions and 39 deletions
149
gitk
149
gitk
|
@ -2026,6 +2026,9 @@ proc makewindow {} {
|
|||
global highlight_files gdttype
|
||||
global searchstring sstring
|
||||
global bgcolor fgcolor bglist fglist diffcolors selectbgcolor
|
||||
global uifgcolor uifgdisabledcolor
|
||||
global filesepbgcolor filesepfgcolor
|
||||
global mergecolors foundbgcolor currentsearchhitbgcolor
|
||||
global headctxmenu progresscanv progressitem progresscoords statusw
|
||||
global fprogitem fprogcoord lastprogupdate progupdatepending
|
||||
global rprogitem rprogcoord rownumsel numcommits
|
||||
|
@ -2177,10 +2180,10 @@ proc makewindow {} {
|
|||
0x00, 0x38, 0xff, 0x7f, 0xff, 0x7f, 0xff, 0x7f, 0x00, 0x38, 0x00, 0x1c,
|
||||
0x00, 0x0e, 0x00, 0x07, 0x80, 0x03, 0xc0, 0x01};
|
||||
}
|
||||
image create bitmap bm-left -data $bm_left_data
|
||||
image create bitmap bm-left-gray -data $bm_left_data -foreground "#999"
|
||||
image create bitmap bm-right -data $bm_right_data
|
||||
image create bitmap bm-right-gray -data $bm_right_data -foreground "#999"
|
||||
image create bitmap bm-left -data $bm_left_data -foreground $uifgcolor
|
||||
image create bitmap bm-left-gray -data $bm_left_data -foreground $uifgdisabledcolor
|
||||
image create bitmap bm-right -data $bm_right_data -foreground $uifgcolor
|
||||
image create bitmap bm-right-gray -data $bm_right_data -foreground $uifgdisabledcolor
|
||||
|
||||
${NS}::button .tf.bar.leftbut -command goback -state disabled -width 26
|
||||
if {$use_ttk} {
|
||||
|
@ -2349,32 +2352,32 @@ proc makewindow {} {
|
|||
lappend fglist $ctext
|
||||
|
||||
$ctext tag conf comment -wrap $wrapcomment
|
||||
$ctext tag conf filesep -font textfontbold -back "#aaaaaa"
|
||||
$ctext tag conf filesep -font textfontbold -fore $filesepfgcolor -back $filesepbgcolor
|
||||
$ctext tag conf hunksep -fore [lindex $diffcolors 2]
|
||||
$ctext tag conf d0 -fore [lindex $diffcolors 0]
|
||||
$ctext tag conf dresult -fore [lindex $diffcolors 1]
|
||||
$ctext tag conf m0 -fore red
|
||||
$ctext tag conf m1 -fore blue
|
||||
$ctext tag conf m2 -fore green
|
||||
$ctext tag conf m3 -fore purple
|
||||
$ctext tag conf m4 -fore brown
|
||||
$ctext tag conf m5 -fore "#009090"
|
||||
$ctext tag conf m6 -fore magenta
|
||||
$ctext tag conf m7 -fore "#808000"
|
||||
$ctext tag conf m8 -fore "#009000"
|
||||
$ctext tag conf m9 -fore "#ff0080"
|
||||
$ctext tag conf m10 -fore cyan
|
||||
$ctext tag conf m11 -fore "#b07070"
|
||||
$ctext tag conf m12 -fore "#70b0f0"
|
||||
$ctext tag conf m13 -fore "#70f0b0"
|
||||
$ctext tag conf m14 -fore "#f0b070"
|
||||
$ctext tag conf m15 -fore "#ff70b0"
|
||||
$ctext tag conf m0 -fore [lindex $mergecolors 0]
|
||||
$ctext tag conf m1 -fore [lindex $mergecolors 1]
|
||||
$ctext tag conf m2 -fore [lindex $mergecolors 2]
|
||||
$ctext tag conf m3 -fore [lindex $mergecolors 3]
|
||||
$ctext tag conf m4 -fore [lindex $mergecolors 4]
|
||||
$ctext tag conf m5 -fore [lindex $mergecolors 5]
|
||||
$ctext tag conf m6 -fore [lindex $mergecolors 6]
|
||||
$ctext tag conf m7 -fore [lindex $mergecolors 7]
|
||||
$ctext tag conf m8 -fore [lindex $mergecolors 8]
|
||||
$ctext tag conf m9 -fore [lindex $mergecolors 9]
|
||||
$ctext tag conf m10 -fore [lindex $mergecolors 10]
|
||||
$ctext tag conf m11 -fore [lindex $mergecolors 11]
|
||||
$ctext tag conf m12 -fore [lindex $mergecolors 12]
|
||||
$ctext tag conf m13 -fore [lindex $mergecolors 13]
|
||||
$ctext tag conf m14 -fore [lindex $mergecolors 14]
|
||||
$ctext tag conf m15 -fore [lindex $mergecolors 15]
|
||||
$ctext tag conf mmax -fore darkgrey
|
||||
set mergemax 16
|
||||
$ctext tag conf mresult -font textfontbold
|
||||
$ctext tag conf msep -font textfontbold
|
||||
$ctext tag conf found -back yellow
|
||||
$ctext tag conf currentsearchhit -back orange
|
||||
$ctext tag conf found -back $foundbgcolor
|
||||
$ctext tag conf currentsearchhit -back $currentsearchhitbgcolor
|
||||
$ctext tag conf wwrap -wrap word
|
||||
|
||||
.pwbottom add .bleft
|
||||
|
@ -2721,6 +2724,14 @@ proc savestuff {w} {
|
|||
global viewname viewfiles viewargs viewargscmd viewperm nextviewnum
|
||||
global cmitmode wrapcomment datetimeformat limitdiffs
|
||||
global colors uicolor bgcolor fgcolor diffcolors diffcontext selectbgcolor
|
||||
global uifgcolor uifgdisabledcolor
|
||||
global headbgcolor headfgcolor headoutlinecolor remotebgcolor
|
||||
global tagbgcolor tagfgcolor tagoutlinecolor
|
||||
global reflinecolor filesepbgcolor filesepfgcolor
|
||||
global mergecolors foundbgcolor currentsearchhitbgcolor
|
||||
global linehoverbgcolor linehoverfgcolor linehoveroutlinecolor circlecolors
|
||||
global mainheadcirclecolor workingfilescirclecolor indexcirclecolor
|
||||
global linkfgcolor circleoutlinecolor
|
||||
global autoselect autosellen extdifftool perfile_attrs markbgcolor use_ttk
|
||||
global hideremotes want_ttk maxrefs
|
||||
|
||||
|
@ -2753,13 +2764,37 @@ proc savestuff {w} {
|
|||
puts $f [list set want_ttk $want_ttk]
|
||||
puts $f [list set bgcolor $bgcolor]
|
||||
puts $f [list set fgcolor $fgcolor]
|
||||
puts $f [list set uifgcolor $uifgcolor]
|
||||
puts $f [list set uifgdisabledcolor $uifgdisabledcolor]
|
||||
puts $f [list set colors $colors]
|
||||
puts $f [list set diffcolors $diffcolors]
|
||||
puts $f [list set mergecolors $mergecolors]
|
||||
puts $f [list set markbgcolor $markbgcolor]
|
||||
puts $f [list set diffcontext $diffcontext]
|
||||
puts $f [list set selectbgcolor $selectbgcolor]
|
||||
puts $f [list set foundbgcolor $foundbgcolor]
|
||||
puts $f [list set currentsearchhitbgcolor $currentsearchhitbgcolor]
|
||||
puts $f [list set extdifftool $extdifftool]
|
||||
puts $f [list set perfile_attrs $perfile_attrs]
|
||||
puts $f [list set headbgcolor $headbgcolor]
|
||||
puts $f [list set headfgcolor $headfgcolor]
|
||||
puts $f [list set headoutlinecolor $headoutlinecolor]
|
||||
puts $f [list set remotebgcolor $remotebgcolor]
|
||||
puts $f [list set tagbgcolor $tagbgcolor]
|
||||
puts $f [list set tagfgcolor $tagfgcolor]
|
||||
puts $f [list set tagoutlinecolor $tagoutlinecolor]
|
||||
puts $f [list set reflinecolor $reflinecolor]
|
||||
puts $f [list set filesepbgcolor $filesepbgcolor]
|
||||
puts $f [list set filesepfgcolor $filesepfgcolor]
|
||||
puts $f [list set linehoverbgcolor $linehoverbgcolor]
|
||||
puts $f [list set linehoverfgcolor $linehoverfgcolor]
|
||||
puts $f [list set linehoveroutlinecolor $linehoveroutlinecolor]
|
||||
puts $f [list set mainheadcirclecolor $mainheadcirclecolor]
|
||||
puts $f [list set workingfilescirclecolor $workingfilescirclecolor]
|
||||
puts $f [list set indexcirclecolor $indexcirclecolor]
|
||||
puts $f [list set circlecolors $circlecolors]
|
||||
puts $f [list set linkfgcolor $linkfgcolor]
|
||||
puts $f [list set circleoutlinecolor $circleoutlinecolor]
|
||||
|
||||
puts $f "set geometry(main) [wm geometry .]"
|
||||
puts $f "set geometry(state) [wm state .]"
|
||||
|
@ -5925,15 +5960,17 @@ proc drawcmittext {id row col} {
|
|||
global linehtag linentag linedtag selectedline
|
||||
global canvxmax boldids boldnameids fgcolor markedid
|
||||
global mainheadid nullid nullid2 circleitem circlecolors ctxbut
|
||||
global mainheadcirclecolor workingfilescirclecolor indexcirclecolor
|
||||
global circleoutlinecolor
|
||||
|
||||
# listed is 0 for boundary, 1 for normal, 2 for negative, 3 for left, 4 for right
|
||||
set listed $cmitlisted($curview,$id)
|
||||
if {$id eq $nullid} {
|
||||
set ofill red
|
||||
set ofill $workingfilescirclecolor
|
||||
} elseif {$id eq $nullid2} {
|
||||
set ofill green
|
||||
set ofill $indexcirclecolor
|
||||
} elseif {$id eq $mainheadid} {
|
||||
set ofill yellow
|
||||
set ofill $mainheadcirclecolor
|
||||
} else {
|
||||
set ofill [lindex $circlecolors $listed]
|
||||
}
|
||||
|
@ -5943,21 +5980,21 @@ proc drawcmittext {id row col} {
|
|||
if {$listed <= 2} {
|
||||
set t [$canv create oval [expr {$x - $orad}] [expr {$y - $orad}] \
|
||||
[expr {$x + $orad - 1}] [expr {$y + $orad - 1}] \
|
||||
-fill $ofill -outline $fgcolor -width 1 -tags circle]
|
||||
-fill $ofill -outline $circleoutlinecolor -width 1 -tags circle]
|
||||
} elseif {$listed == 3} {
|
||||
# triangle pointing left for left-side commits
|
||||
set t [$canv create polygon \
|
||||
[expr {$x - $orad}] $y \
|
||||
[expr {$x + $orad - 1}] [expr {$y - $orad}] \
|
||||
[expr {$x + $orad - 1}] [expr {$y + $orad - 1}] \
|
||||
-fill $ofill -outline $fgcolor -width 1 -tags circle]
|
||||
-fill $ofill -outline $circleoutlinecolor -width 1 -tags circle]
|
||||
} else {
|
||||
# triangle pointing right for right-side commits
|
||||
set t [$canv create polygon \
|
||||
[expr {$x + $orad - 1}] $y \
|
||||
[expr {$x - $orad}] [expr {$y - $orad}] \
|
||||
[expr {$x - $orad}] [expr {$y + $orad - 1}] \
|
||||
-fill $ofill -outline $fgcolor -width 1 -tags circle]
|
||||
-fill $ofill -outline $circleoutlinecolor -width 1 -tags circle]
|
||||
}
|
||||
set circleitem($row) $t
|
||||
$canv raise $t
|
||||
|
@ -6345,6 +6382,9 @@ proc drawtags {id x xt y1} {
|
|||
global idtags idheads idotherrefs mainhead
|
||||
global linespc lthickness
|
||||
global canv rowtextx curview fgcolor bgcolor ctxbut
|
||||
global headbgcolor headfgcolor headoutlinecolor remotebgcolor
|
||||
global tagbgcolor tagfgcolor tagoutlinecolor
|
||||
global reflinecolor
|
||||
|
||||
set marks {}
|
||||
set ntags 0
|
||||
|
@ -6382,7 +6422,7 @@ proc drawtags {id x xt y1} {
|
|||
set xt [expr {$xt + $delta + $wid + $lthickness + $linespc}]
|
||||
}
|
||||
set t [$canv create line $x $y1 [lindex $xvals end] $y1 \
|
||||
-width $lthickness -fill black -tags tag.$id]
|
||||
-width $lthickness -fill $reflinecolor -tags tag.$id]
|
||||
$canv lower $t
|
||||
foreach tag $marks x $xvals wid $wvals {
|
||||
set tag_quoted [string map {% %%} $tag]
|
||||
|
@ -6393,13 +6433,14 @@ proc drawtags {id x xt y1} {
|
|||
# draw a tag
|
||||
set t [$canv create polygon $x [expr {$yt + $delta}] $xl $yt \
|
||||
$xr $yt $xr $yb $xl $yb $x [expr {$yb - $delta}] \
|
||||
-width 1 -outline black -fill yellow -tags tag.$id]
|
||||
-width 1 -outline $tagoutlinecolor -fill $tagbgcolor \
|
||||
-tags tag.$id]
|
||||
$canv bind $t <1> [list showtag $tag_quoted 1]
|
||||
set rowtextx([rowofcommit $id]) [expr {$xr + $linespc}]
|
||||
} else {
|
||||
# draw a head or other ref
|
||||
if {[incr nheads -1] >= 0} {
|
||||
set col green
|
||||
set col $headbgcolor
|
||||
if {$tag eq $mainhead} {
|
||||
set font mainfontbold
|
||||
}
|
||||
|
@ -6415,10 +6456,10 @@ proc drawtags {id x xt y1} {
|
|||
set yti [expr {$yt + 1}]
|
||||
set xri [expr {$x + $rwid}]
|
||||
$canv create polygon $xi $yti $xri $yti $xri $yb $xi $yb \
|
||||
-width 0 -fill "#ffddaa" -tags tag.$id
|
||||
-width 0 -fill $remotebgcolor -tags tag.$id
|
||||
}
|
||||
}
|
||||
set t [$canv create text $xl $y1 -anchor w -text $tag -fill $fgcolor \
|
||||
set t [$canv create text $xl $y1 -anchor w -text $tag -fill $headfgcolor \
|
||||
-font $font -tags [list tag.$id text]]
|
||||
if {$ntags >= 0} {
|
||||
$canv bind $t <1> [list showtag $tag_quoted 1]
|
||||
|
@ -6799,6 +6840,7 @@ proc appendwithlinks {text tags} {
|
|||
|
||||
proc setlink {id lk} {
|
||||
global curview ctext pendinglinks
|
||||
global linkfgcolor
|
||||
|
||||
if {[string range $id 0 1] eq "-g"} {
|
||||
set id [string range $id 2 end]
|
||||
|
@ -6816,7 +6858,7 @@ proc setlink {id lk} {
|
|||
set known [commitinview $id $curview]
|
||||
}
|
||||
if {$known} {
|
||||
$ctext tag conf $lk -foreground blue -underline 1
|
||||
$ctext tag conf $lk -foreground $linkfgcolor -underline 1
|
||||
$ctext tag bind $lk <1> [list selbyid $id]
|
||||
$ctext tag bind $lk <Enter> {linkcursor %W 1}
|
||||
$ctext tag bind $lk <Leave> {linkcursor %W -1}
|
||||
|
@ -8459,6 +8501,8 @@ proc lineleave {id} {
|
|||
proc linehover {} {
|
||||
global hoverx hovery hoverid hovertimer
|
||||
global canv linespc lthickness
|
||||
global linehoverbgcolor linehoverfgcolor linehoveroutlinecolor
|
||||
|
||||
global commitinfo
|
||||
|
||||
set text [lindex $commitinfo($hoverid) 0]
|
||||
|
@ -8472,10 +8516,11 @@ proc linehover {} {
|
|||
set x1 [expr {$x + [font measure mainfont $text] + 2 * $lthickness}]
|
||||
set y1 [expr {$y + $linespc + 2 * $lthickness}]
|
||||
set t [$canv create rectangle $x0 $y0 $x1 $y1 \
|
||||
-fill \#ffff80 -outline black -width 1 -tags hover]
|
||||
-fill $linehoverbgcolor -outline $linehoveroutlinecolor \
|
||||
-width 1 -tags hover]
|
||||
$canv raise $t
|
||||
set t [$canv create text $x $y -anchor nw -text $text -tags hover \
|
||||
-font mainfont]
|
||||
-font mainfont -fill $linehoverfgcolor]
|
||||
$canv raise $t
|
||||
}
|
||||
|
||||
|
@ -9039,12 +9084,13 @@ proc domktag {} {
|
|||
proc redrawtags {id} {
|
||||
global canv linehtag idpos currentid curview cmitlisted markedid
|
||||
global canvxmax iddrawn circleitem mainheadid circlecolors
|
||||
global mainheadcirclecolor
|
||||
|
||||
if {![commitinview $id $curview]} return
|
||||
if {![info exists iddrawn($id)]} return
|
||||
set row [rowofcommit $id]
|
||||
if {$id eq $mainheadid} {
|
||||
set ofill yellow
|
||||
set ofill $mainheadcirclecolor
|
||||
} else {
|
||||
set ofill [lindex $circlecolors $cmitlisted($curview,$id)]
|
||||
}
|
||||
|
@ -11728,22 +11774,47 @@ if {[tk windowingsystem] eq "aqua"} {
|
|||
set colors {green red blue magenta darkgrey brown orange}
|
||||
if {[tk windowingsystem] eq "win32"} {
|
||||
set uicolor SystemButtonFace
|
||||
set uifgcolor SystemButtonText
|
||||
set uifgdisabledcolor SystemDisabledText
|
||||
set bgcolor SystemWindow
|
||||
set fgcolor SystemButtonText
|
||||
set fgcolor SystemWindowText
|
||||
set selectbgcolor SystemHighlight
|
||||
} else {
|
||||
set uicolor grey85
|
||||
set uifgcolor black
|
||||
set uifgdisabledcolor "#999"
|
||||
set bgcolor white
|
||||
set fgcolor black
|
||||
set selectbgcolor gray85
|
||||
}
|
||||
set diffcolors {red "#00a000" blue}
|
||||
set diffcontext 3
|
||||
set mergecolors {red blue green purple brown "#009090" magenta "#808000" "#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0" "#f0b070" "#ff70b0"}
|
||||
set ignorespace 0
|
||||
set worddiff ""
|
||||
set markbgcolor "#e0e0ff"
|
||||
|
||||
set headbgcolor green
|
||||
set headfgcolor black
|
||||
set headoutlinecolor black
|
||||
set remotebgcolor #ffddaa
|
||||
set tagbgcolor yellow
|
||||
set tagfgcolor black
|
||||
set tagoutlinecolor black
|
||||
set reflinecolor black
|
||||
set filesepbgcolor #aaaaaa
|
||||
set filesepfgcolor black
|
||||
set linehoverbgcolor #ffff80
|
||||
set linehoverfgcolor black
|
||||
set linehoveroutlinecolor black
|
||||
set mainheadcirclecolor yellow
|
||||
set workingfilescirclecolor red
|
||||
set indexcirclecolor green
|
||||
set circlecolors {white blue gray blue blue}
|
||||
set linkfgcolor blue
|
||||
set circleoutlinecolor $fgcolor
|
||||
set foundbgcolor yellow
|
||||
set currentsearchhitbgcolor orange
|
||||
|
||||
# button for popping up context menus
|
||||
if {[tk windowingsystem] eq "aqua"} {
|
||||
|
|
Loading…
Reference in a new issue