$ perl -MTk -le " $_= Tk->findINC( 'demos/widget_lib' ) ; s!/!\\!g ; print " C:\perl\site\5.12.2\lib\MSWin32-x86-multi-thread\Tk\demos\widget_lib $ cd /d C:\perl\site\5.12.2\lib\MSWin32-x86-multi-thread\Tk\demos\widget_lib $ grep -ri textvariable . ./entry3.pl: -textvariable => \$e3_var, ./floor.pl: -textvariable/ => \$floor::current_room); ./image2.pl: my $dir_name = $TOP->Entry(-width => 30, -textvariable => \$demo_img); ./keysyms.pl: $mw->Label( qw/ -relief solid -width 20 /, -textvariable => \my $k )->pack; ./labframe.pl:$f->LabEntry(-label => "Testing", -textvariable => \$test)->pack; ./mega.pl:Here's an excerpt from a Text dervived mega-widget called TraceText; you can examine the complete code in another demonstration. This widget defines its content using a new -textvariable option. ./mega.pl: -textvariable => 'METHOD', 'textVariable', 'TextVariable', undef, ./mega.pl: sub textvariable { ./mega.pl: } # end textvariable ./mega.pl:Tk::TraceText::Populate defines the -textvariable option and provides a private method to establish the watchpoint. In Perl/Tk, all mega-widget options are specified via a ConfigSpecs() call, named after the C structure. ./mega.pl:Briefly, ConfigSpecs() names options and tells Perl/Tk what to do when one is specified on a configure() or cget() call. It also specifies the option's database name, class name and default value for option DB lookups. For our -textvariable option, the Perl/Tk framework invokes a METHOD (subroutine) by the same name as the option, minus the dash, of course. Other choices include CHILDREN, DECENDENTS, a name (or list of names) of a subwidget, etcetera. ./menbut.pl: -textvariable => $varref, ./menus.pl: -font => 'Helvetica 10', -textvariable => \$status_bar)-> ./menus2.pl: -font => 'Helvetica 10', -textvariable => \$status_bar)-> ./notebook.pl: -textvariable => \$name)->pack(-side => "top", -anchor => "nw"); ./notebook.pl: -textvariable => \$email)->pack(-side => "top", -anchor => "nw"); ./notebook.pl: -textvariable => \$os)->pack(-side => "top", -anchor => "nw"); ./Plot.pm: -textvariable => \$pinfo{'prcmd'}, ./search.pl: -textvariable => \$file_name)->pack(qw/-side left/); ./search.pl: -textvariable => \$search_string)->pack(qw/-side left/); ./showVars.pl: my $w_i_value = $w_i->Label(-textvariable => \${$i}); ./trace2.pl: -textvariable => [ 'METHOD', 'textVariable', 'TextVariable', undef ], ./trace2.pl:sub textvariable { ./trace2.pl:} # end textvariable ./trace2.pl: my $tt = $mw->Scrolled( 'TraceText', -textvariable => \my $frog )->grid; ./trace2.pl:just like a B widget. Additionally, B adds a -textvariable ./trace2.pl:=item B<-textvariable> ./trace2.pl: my $tt = $mw->TraceText( -textvariable => \$scalar ); ./twind.pl: -textvariable => \$embToggle,