1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
#!/usr/bin/env ruby
require 'tk'
require 'tkextlib/iwidgets'
mw = Tk::Iwidgets::Mainwindow.new
mw.menubar.add(:menubutton, 'file', :text=>'File', :underline=>0,
:padx=>8, :pady=>2, :menu=>[
[:options, {:tearoff=>false}],
[:command, 'new', {
:label=>'New', :underline=>0,
:helpstr=>'Create a new file'
}
],
[:command, 'open', {
:label=>'Open ...', :underline=>0,
:helpstr=>'Open an existing file'
}
],
[:command, 'save', {
:label=>'Save', :underline=>0,
:helpstr=>'Save the current file'
}
],
[:command, 'saveas', {
:label=>'Save As', :underline=>5,
:helpstr=>'Save the file as a different name'
}
],
[:command, 'print', {
:label=>'Print', :underline=>0,
:helpstr=>'Print the file'
}
],
[:separator, 'sep1'],
[:command, 'close', {
:label=>'Close', :underline=>0,
:helpstr=>'Close the file'
}
],
[:separator, 'sep2'],
[:command, 'exit', {
:label=>'Exit', :underline=>1,
:helpstr=>'Exit this application'
}
],
nil
])
Tk::Iwidgets::Scrolledtext.new(mw.child_site).pack(:fill=>:both, :expand=>true)
mw.activate
Tk.mainloop
|