diff options
Diffstat (limited to 'demos/textInput.tcl')
-rw-r--r-- | demos/textInput.tcl | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/demos/textInput.tcl b/demos/textInput.tcl new file mode 100644 index 0000000..32f8a7a --- /dev/null +++ b/demos/textInput.tcl @@ -0,0 +1,71 @@ +# these simple samples have been developped by C. Mertz mertz@cena.fr in perl +# tcl version by Jean-Paul Imbert imbert@cena.fr + + +if {![info exists zincDemo]} { + error "This script should be run from the zinc-widget demo." +} + +set w .textInput +catch {destroy $w} +toplevel $w +wm title $w "Zinc textInput Demonstration" +wm iconname $w textInput + +set defaultfont "-adobe-helvetica-bold-r-normal-*-120-*-*-*-*-*-*" + +frame $w.buttons +pack $w.buttons -side bottom -fill x -pady 2m +button $w.buttons.dismiss -text Dismiss -command "destroy $w" +button $w.buttons.code -text "See Code" -command "showCode $w" +pack $w.buttons.dismiss $w.buttons.code -side left -expand 1 + + + +########################################### +# Text zone +####################### +#################### + +text $w.text -relief sunken -borderwidth 2 -height 5 +pack $w.text -expand yes -fill both + +$w.text insert end {This toy-appli demonstrates the use of the Tk::ZincText module. This module is designed for facilitating text input a la emacs on text items or on fields of items such as tracks, waypoints or tabulars.} + + +########################################### +# Zinc +########################################## +zinc $w.zinc -width 500 -height 300 -font 10x20 -borderwidth 0 +pack $w.zinc + +#ZincText $w.zinc +# for mapping text input bindings on item with a 'text' tag. + + +### creating a tabular with 3 fields 2 of them being editable +set labelformat1 {130x100 x130x20+0+0 x130x20+0+20 x130x20+0+40} + +set x 120 +set y 6 +set track [$w.zinc add track 1 3 -position "$x $y" -speedvector {40 10} -labeldistance 30 -labelformat $labelformat1 -tags text] + +# moving the track to display past positions +for {set i 0} {$i<=5} {incr i} { + $w.zinc coords "$track" "[expr $x+$i*10] [expr $y+$i*2]" +} + +$w.zinc itemconfigure $track 0 -border contour -text {not editable} -sensitive 0 + +$w.zinc itemconfigure $track 1 -border contour -text editable -sensitive 1 + +$w.zinc itemconfigure $track 2 -border contour -text {editable too} -alignment center -sensitive 1 + + +# creating a text item tagged with "text" but not editable because +# it is not sensitive +$w.zinc add text 1 -position {220 160} -text "this text is not editable \nbecause it is not sensitive" -sensitive 0 -tags text + + +# creating an editable text item +$w.zinc add text 1 -position {50 230} -text {this text IS editable} -sensitive 1 -tags text |