summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Bert Wesarg <bert.wesarg@googlemail.com>2011-10-13 15:48:14 +0200
committerLibravatar Pat Thoyts <patthoyts@users.sourceforge.net>2011-10-15 23:13:32 +0100
commit59252107ac24d5efb0d411ef4c2b279aa217cd7d (patch)
tree38e57c5430daafcf160d7299a3e891d3c3762d34
parentgit-gui: search and linenumber input are mutual exclusive in the blame view (diff)
downloadtgif-59252107ac24d5efb0d411ef4c2b279aa217cd7d.tar.xz
git-gui: only accept numbers in the goto-line input
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
-rw-r--r--lib/line.tcl13
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/line.tcl b/lib/line.tcl
index 4913bdd9a8..904722e677 100644
--- a/lib/line.tcl
+++ b/lib/line.tcl
@@ -15,7 +15,11 @@ constructor new {i_w i_text args} {
${NS}::frame $w
${NS}::label $w.l -text [mc "Goto Line:"]
- entry $w.ent -textvariable ${__this}::linenum -background lightgreen
+ entry $w.ent \
+ -textvariable ${__this}::linenum \
+ -background lightgreen \
+ -validate key \
+ -validatecommand [cb _validate %P]
${NS}::button $w.bn -text [mc Go] -command [cb _incrgoto]
pack $w.l -side left
@@ -26,7 +30,7 @@ constructor new {i_w i_text args} {
grid remove $w
bind $w.ent <Return> [cb _incrgoto]
- bind $w.ent <Escape> [list linebar::hide $this]
+ bind $w.ent <Escape> [cb hide]
bind $w <Destroy> [list delete_this $this]
return $this
@@ -54,6 +58,11 @@ method editor {} {
return $w.ent
}
+method _validate {P} {
+ # only accept numbers as input
+ string is integer $P
+}
+
method _incrgoto {} {
if {$linenum ne {}} {
$ctext see $linenum.0