DEFINITIONS
This source file includes following functions.
1 #! /usr/local/bin/ruby -vd
2
3 # tcltklib ライブラリのテスト
4
5 require "tcltklib"
6
7 def test
8 # インタプリタを生成する
9 ip1 = TclTkIp.new()
10
11 # 評価してみる
12 print ip1._return_value().inspect, "\n"
13 print ip1._eval("puts {abc}").inspect, "\n"
14
15 # ボタンを作ってみる
16 print ip1._return_value().inspect, "\n"
17 print ip1._eval("button .lab -text exit -command \"destroy .\"").inspect,
18 "\n"
19 print ip1._return_value().inspect, "\n"
20 print ip1._eval("pack .lab").inspect, "\n"
21 print ip1._return_value().inspect, "\n"
22
23 # インタプリタから ruby コマンドを評価してみる
24 # print ip1._eval(%q/ruby {print "print by ruby\n"}/).inspect, "\n"
25 print ip1._eval(%q+puts [ruby {print "print by ruby\n"; "puts by tcl/tk"}]+).inspect, "\n"
26 print ip1._return_value().inspect, "\n"
27
28 # もう一つインタプリタを生成してみる
29 ip2 = TclTkIp.new()
30 ip2._eval("button .lab -text test -command \"puts test ; destroy .\"")
31 ip2._eval("pack .lab")
32
33 TclTkLib.mainloop
34 end
35
36 test
37 GC.start
38
39 print "exit\n"