1#!/usr/bin/env ruby
2#########################################################
3#
4#  set Tk.encoding = 'utf-8' for a utf8 charecter
5#
6#########################################################
7require 'tk'
8require 'tkextlib/iwidgets'
9
10Tk.encoding = 'utf-8'
11
12TkOption.add('*textBackground', 'white')
13
14ef  = Tk::Iwidgets::Entryfield.new(:command=>proc{puts "Return Pressed"})
15
16fef = Tk::Iwidgets::Entryfield.new(:labeltext=>'Fixed:',
17                                   :fixed=>10, :width=>12)
18
19nef = Tk::Iwidgets::Entryfield.new(:labeltext=>'Numeric:',
20                                   :validate=>:numeric, :width=>12)
21
22aef = Tk::Iwidgets::Entryfield.new(:labeltext=>'Alphabetic:',
23                                   :validate=>:alphabetic, :width=>12,
24                                   :invalid=>proc{
25                                     puts "Alphabetic contents invalid"
26                                   })
27
28pef = Tk::Iwidgets::Entryfield.new(:labeltext=>'Password:', :width=>12,
29                                   :show=>"\267",  ## <=== utf8 character
30                                   :command=>proc{puts "Return Pressed"})
31
32Tk::Iwidgets::Labeledwidget.alignlabels(ef, fef, nef, aef, pef)
33
34ef.pack(:fil=>:x,  :expand=>true, :padx=>10, :pady=>5)
35fef.pack(:fil=>:x,  :expand=>true, :padx=>10, :pady=>5)
36nef.pack(:fil=>:x,  :expand=>true, :padx=>10, :pady=>5)
37aef.pack(:fil=>:x,  :expand=>true, :padx=>10, :pady=>5)
38pef.pack(:fil=>:x,  :expand=>true, :padx=>10, :pady=>5)
39
40Tk.mainloop
41