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>
This commit is contained in:
13
lib/line.tcl
13
lib/line.tcl
@ -15,7 +15,11 @@ constructor new {i_w i_text args} {
|
|||||||
|
|
||||||
${NS}::frame $w
|
${NS}::frame $w
|
||||||
${NS}::label $w.l -text [mc "Goto Line:"]
|
${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]
|
${NS}::button $w.bn -text [mc Go] -command [cb _incrgoto]
|
||||||
|
|
||||||
pack $w.l -side left
|
pack $w.l -side left
|
||||||
@ -26,7 +30,7 @@ constructor new {i_w i_text args} {
|
|||||||
grid remove $w
|
grid remove $w
|
||||||
|
|
||||||
bind $w.ent <Return> [cb _incrgoto]
|
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]
|
bind $w <Destroy> [list delete_this $this]
|
||||||
return $this
|
return $this
|
||||||
@ -54,6 +58,11 @@ method editor {} {
|
|||||||
return $w.ent
|
return $w.ent
|
||||||
}
|
}
|
||||||
|
|
||||||
|
method _validate {P} {
|
||||||
|
# only accept numbers as input
|
||||||
|
string is integer $P
|
||||||
|
}
|
||||||
|
|
||||||
method _incrgoto {} {
|
method _incrgoto {} {
|
||||||
if {$linenum ne {}} {
|
if {$linenum ne {}} {
|
||||||
$ctext see $linenum.0
|
$ctext see $linenum.0
|
||||||
|
Reference in New Issue
Block a user