c382fdd795
In several places, only the background colour is set to an explicit value, sometimes even "white". This does not work well with dark colour themes. This patch tries to set the foreground colour to "black" in those situations, where an explicit background colour is set without defining any foreground colour. Signed-off-by: Philipp A. Hartmann <ph@sorgh.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
117 lines
2.4 KiB
Tcl
117 lines
2.4 KiB
Tcl
# git-gui branch (create/delete) support
|
|
# Copyright (C) 2006, 2007 Shawn Pearce
|
|
|
|
proc _error_parent {} {
|
|
set p [grab current .]
|
|
if {$p eq {}} {
|
|
return .
|
|
}
|
|
return $p
|
|
}
|
|
|
|
proc error_popup {msg} {
|
|
set title [appname]
|
|
if {[reponame] ne {}} {
|
|
append title " ([reponame])"
|
|
}
|
|
set cmd [list tk_messageBox \
|
|
-icon error \
|
|
-type ok \
|
|
-title [append "$title: " [mc "error"]] \
|
|
-message $msg]
|
|
if {[winfo ismapped [_error_parent]]} {
|
|
lappend cmd -parent [_error_parent]
|
|
}
|
|
eval $cmd
|
|
}
|
|
|
|
proc warn_popup {msg} {
|
|
set title [appname]
|
|
if {[reponame] ne {}} {
|
|
append title " ([reponame])"
|
|
}
|
|
set cmd [list tk_messageBox \
|
|
-icon warning \
|
|
-type ok \
|
|
-title [append "$title: " [mc "warning"]] \
|
|
-message $msg]
|
|
if {[winfo ismapped [_error_parent]]} {
|
|
lappend cmd -parent [_error_parent]
|
|
}
|
|
eval $cmd
|
|
}
|
|
|
|
proc info_popup {msg} {
|
|
set title [appname]
|
|
if {[reponame] ne {}} {
|
|
append title " ([reponame])"
|
|
}
|
|
tk_messageBox \
|
|
-parent [_error_parent] \
|
|
-icon info \
|
|
-type ok \
|
|
-title $title \
|
|
-message $msg
|
|
}
|
|
|
|
proc ask_popup {msg} {
|
|
set title [appname]
|
|
if {[reponame] ne {}} {
|
|
append title " ([reponame])"
|
|
}
|
|
set cmd [list tk_messageBox \
|
|
-icon question \
|
|
-type yesno \
|
|
-title $title \
|
|
-message $msg]
|
|
if {[winfo ismapped [_error_parent]]} {
|
|
lappend cmd -parent [_error_parent]
|
|
}
|
|
eval $cmd
|
|
}
|
|
|
|
proc hook_failed_popup {hook msg {is_fatal 1}} {
|
|
set w .hookfail
|
|
toplevel $w
|
|
|
|
frame $w.m
|
|
label $w.m.l1 -text "$hook hook failed:" \
|
|
-anchor w \
|
|
-justify left \
|
|
-font font_uibold
|
|
text $w.m.t \
|
|
-background white \
|
|
-foreground black \
|
|
-borderwidth 1 \
|
|
-relief sunken \
|
|
-width 80 -height 10 \
|
|
-font font_diff \
|
|
-yscrollcommand [list $w.m.sby set]
|
|
scrollbar $w.m.sby -command [list $w.m.t yview]
|
|
pack $w.m.l1 -side top -fill x
|
|
if {$is_fatal} {
|
|
label $w.m.l2 \
|
|
-text [mc "You must correct the above errors before committing."] \
|
|
-anchor w \
|
|
-justify left \
|
|
-font font_uibold
|
|
pack $w.m.l2 -side bottom -fill x
|
|
}
|
|
pack $w.m.sby -side right -fill y
|
|
pack $w.m.t -side left -fill both -expand 1
|
|
pack $w.m -side top -fill both -expand 1 -padx 5 -pady 10
|
|
|
|
$w.m.t insert 1.0 $msg
|
|
$w.m.t conf -state disabled
|
|
|
|
button $w.ok -text OK \
|
|
-width 15 \
|
|
-command "destroy $w"
|
|
pack $w.ok -side bottom -anchor e -pady 10 -padx 10
|
|
|
|
bind $w <Visibility> "grab $w; focus $w"
|
|
bind $w <Key-Return> "destroy $w"
|
|
wm title $w [strcat "[appname] ([reponame]): " [mc "error"]]
|
|
tkwait window $w
|
|
}
|