Signed-off-by: Bert Wesarg <bert.wesarg@xxxxxxxxxxxxxx> --- lib/line.tcl | 16 ++++++++++++++-- 1 files changed, 14 insertions(+), 2 deletions(-) diff --git a/lib/line.tcl b/lib/line.tcl index 692485a..70785e1 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 @@ -55,6 +59,14 @@ method editor {} { return $w.ent } +method _validate {P} { + # only accept numbers as input + if {[regexp {\d*} $P]} { + return 1 + } + return 0 +} + method _incrgoto {} { if {$linenum ne {}} { $ctext see $linenum.0 -- 1.7.6.789.gb4599 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html