ruby-iup 0.1.0-x86-mswin32-60
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +3 -0
- data/MANIFEST +8 -0
- data/MIT-LICENSE +18 -0
- data/README +12 -0
- data/Rakefile +85 -0
- data/doc/README +10 -0
- data/doc/build_install.txt +74 -0
- data/examples/README +16 -0
- data/examples/ctrl/cbox.rb +220 -0
- data/examples/ctrl/checkboard.rb +33 -0
- data/examples/ctrl/degrade.rb +76 -0
- data/examples/ctrl/example1.rb +53 -0
- data/examples/ctrl/example2.rb +39 -0
- data/examples/ctrl/iupcolorbar.rb +95 -0
- data/examples/ctrl/iupcolorbrowser.rb +45 -0
- data/examples/ctrl/iupdial.rb +117 -0
- data/examples/ctrl/iupgauge.rb +242 -0
- data/examples/ctrl/iupgetcolor.rb +8 -0
- data/examples/ctrl/iupgetparam.rb +62 -0
- data/examples/ctrl/iupglcanvas.rb +172 -0
- data/examples/ctrl/iupmask.rb +13 -0
- data/examples/ctrl/iupmatrix.rb +39 -0
- data/examples/ctrl/iupplot2.rb +601 -0
- data/examples/ctrl/iuptabs.rb +22 -0
- data/examples/ctrl/iuptree.rb +190 -0
- data/examples/ctrl/iupval.rb +71 -0
- data/examples/ctrl/numbering.rb +46 -0
- data/examples/ctrl/sample.rb +166 -0
- data/examples/dlg/iupalarm.rb +16 -0
- data/examples/dlg/iupfiledlg.rb +19 -0
- data/examples/dlg/iupgetfile.rb +19 -0
- data/examples/dlg/iuplistdialog.rb +26 -0
- data/examples/dlg/iupmessage.rb +5 -0
- data/examples/dlg/iupscanf.rb +17 -0
- data/examples/elem/iupbutton.rb +180 -0
- data/examples/elem/iupcanvas.rb +29 -0
- data/examples/elem/iupcanvas2.rb +114 -0
- data/examples/elem/iupcanvas3.rb +52 -0
- data/examples/elem/iupdialog.rb +67 -0
- data/examples/elem/iupdialog2.rb +25 -0
- data/examples/elem/iupfill.rb +51 -0
- data/examples/elem/iupframe.rb +25 -0
- data/examples/elem/iuphbox.rb +68 -0
- data/examples/elem/iupimage.rb +113 -0
- data/examples/elem/iupitem.rb +60 -0
- data/examples/elem/iuplabel.rb +57 -0
- data/examples/elem/iuplist.rb +41 -0
- data/examples/elem/iuplist2.rb +125 -0
- data/examples/elem/iupmenu.rb +32 -0
- data/examples/elem/iupmultiline.rb +24 -0
- data/examples/elem/iupmultiline2.rb +156 -0
- data/examples/elem/iupradio.rb +32 -0
- data/examples/elem/iupseparator.rb +81 -0
- data/examples/elem/iupsubmenu.rb +85 -0
- data/examples/elem/iuptimer.rb +36 -0
- data/examples/elem/iuptoggle.rb +110 -0
- data/examples/elem/iupvbox.rb +87 -0
- data/examples/elem/iupzbox.rb +60 -0
- data/examples/elem/mdisample.rb +377 -0
- data/examples/elem/progressbar.rb +280 -0
- data/examples/elem/scrollbar.rb +66 -0
- data/examples/elem/tray.rb +90 -0
- data/examples/func/iupgetattribute.rb +32 -0
- data/examples/func/iupidle.rb +48 -0
- data/lib/iup.so +0 -0
- data/ruby-iup.gemspec +26 -0
- data/test/test_ruby_iup.rb +25 -0
- metadata +132 -0
@@ -0,0 +1,85 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
item_help_cb = lambda do |ih|
|
5
|
+
Iup.Message("Warning", "Only Help and Exit items performs an operation")
|
6
|
+
|
7
|
+
Iup::DEFAULT
|
8
|
+
end
|
9
|
+
|
10
|
+
|
11
|
+
item_exit_cb = lambda do |ih|
|
12
|
+
Iup::CLOSE
|
13
|
+
end
|
14
|
+
|
15
|
+
# Creates a multiline */
|
16
|
+
text = Iup.Text()
|
17
|
+
|
18
|
+
# Sets value of the text and turns on expand */
|
19
|
+
text.attr = "VALUE = \"This text is here only to compose\", EXPAND = YES"
|
20
|
+
|
21
|
+
# Creates items of menu file */
|
22
|
+
item_new = Iup.Item("New")
|
23
|
+
item_open = Iup.Item("Open")
|
24
|
+
item_close = Iup.Item("Close")
|
25
|
+
item_exit = Iup.Item("Exit", "item_exit_act")
|
26
|
+
|
27
|
+
# Creates items of menu edit */
|
28
|
+
item_copy = Iup.Item("Copy")
|
29
|
+
item_paste = Iup.Item("Paste")
|
30
|
+
|
31
|
+
# Creates items for menu triangle */
|
32
|
+
item_scalenus = Iup.Item("Scalenus")
|
33
|
+
item_isoceles = Iup.Item("Isoceles")
|
34
|
+
item_equilateral = Iup.Item("Equilateral")
|
35
|
+
|
36
|
+
# Create menu triangle */
|
37
|
+
menu_triangle = Iup.Menu([item_equilateral, item_isoceles, item_scalenus])
|
38
|
+
|
39
|
+
# Creates submenu triangle */
|
40
|
+
submenu_triangle = Iup.Submenu("Triangle", menu_triangle)
|
41
|
+
|
42
|
+
# Creates items for menu create */
|
43
|
+
item_line = Iup.Item("Line")
|
44
|
+
item_circle = Iup.Item("Circle")
|
45
|
+
|
46
|
+
# Creates menu create */
|
47
|
+
menu_create = Iup.Menu([item_line, item_circle, submenu_triangle])
|
48
|
+
|
49
|
+
# Creates submenu create */
|
50
|
+
submenu_create = Iup.Submenu("Create", menu_create)
|
51
|
+
|
52
|
+
# Creates items of menu help */
|
53
|
+
item_help = Iup.Item("Help", "item_help_act")
|
54
|
+
|
55
|
+
# Creates three menus */
|
56
|
+
menu_file = Iup.Menu([item_new, item_open, item_close, Iup.Separator(), item_exit])
|
57
|
+
menu_edit = Iup.Menu([item_copy, item_paste, Iup.Separator(), submenu_create])
|
58
|
+
menu_help = Iup.Menu([item_help])
|
59
|
+
|
60
|
+
# Creates three submenus */
|
61
|
+
submenu_file = Iup.Submenu("File", menu_file)
|
62
|
+
submenu_edit = Iup.Submenu("Edit", menu_edit)
|
63
|
+
submenu_help = Iup.Submenu("Help", menu_help)
|
64
|
+
|
65
|
+
# Creates main menu with file menu */
|
66
|
+
menu = Iup.Menu([submenu_file, submenu_edit, submenu_help])
|
67
|
+
|
68
|
+
# Registers callbacks */
|
69
|
+
item_help.action = item_help_cb
|
70
|
+
item_exit.action = item_exit_cb
|
71
|
+
|
72
|
+
# Creates dialog with a text */
|
73
|
+
dlg = Iup.Dialog(text,:menu=>menu)
|
74
|
+
|
75
|
+
# Sets title and size of the dialog and associates a menu to it */
|
76
|
+
dlg.attr = "TITLE=\"Iup.Submenu Example\", SIZE = QUARTERxEIGHTH"
|
77
|
+
|
78
|
+
# Shows dialog in the center of the screen */
|
79
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
80
|
+
|
81
|
+
# Initializes IUP main loop */
|
82
|
+
Iup.MainLoop()
|
83
|
+
|
84
|
+
dlg.Destroy()
|
85
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
|
5
|
+
text = Iup.Label("Timer example")
|
6
|
+
|
7
|
+
# Creating main dialog */
|
8
|
+
dialog = Iup.Dialog(Iup.Vbox([text]),:title=>"timer example",:size=>"200x200")
|
9
|
+
dialog.ShowXY(Iup::CENTER, Iup::CENTER)
|
10
|
+
|
11
|
+
timer1 = Iup.Timer()
|
12
|
+
timer2 = Iup.Timer()
|
13
|
+
|
14
|
+
timer_cb = lambda do |n|
|
15
|
+
if(n == timer1)
|
16
|
+
puts("timer 1 called")
|
17
|
+
end
|
18
|
+
if(n == timer2)
|
19
|
+
puts("timer 2 called")
|
20
|
+
return Iup::CLOSE
|
21
|
+
end
|
22
|
+
|
23
|
+
Iup::DEFAULT
|
24
|
+
end
|
25
|
+
|
26
|
+
timer1.time = 100
|
27
|
+
timer1.run = "YES"
|
28
|
+
timer1.action_cb = timer_cb
|
29
|
+
|
30
|
+
timer2.time = 400
|
31
|
+
timer2.run = "YES"
|
32
|
+
timer2.action_cb = timer_cb
|
33
|
+
|
34
|
+
Iup.MainLoop()
|
35
|
+
timer1.Destroy()
|
36
|
+
timer2.Destroy()
|
@@ -0,0 +1,110 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
img_1 = [
|
5
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
6
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
7
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
8
|
+
1,1,1,1,1,1,2,2,1,1,1,1,1,1,1,1,
|
9
|
+
1,1,1,1,1,2,1,2,1,1,1,1,1,1,1,1,
|
10
|
+
1,1,1,1,2,1,1,2,1,1,1,1,1,1,1,1,
|
11
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
12
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
13
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
14
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
15
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
16
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
17
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
18
|
+
1,1,1,2,2,2,2,2,2,2,2,2,1,1,1,1,
|
19
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
20
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
|
21
|
+
]
|
22
|
+
|
23
|
+
img_2 = [
|
24
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
25
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
26
|
+
1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,1,
|
27
|
+
1,1,1,2,1,1,1,1,1,1,2,1,1,1,1,1,
|
28
|
+
1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,
|
29
|
+
1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,
|
30
|
+
1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,
|
31
|
+
1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,
|
32
|
+
1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,
|
33
|
+
1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,
|
34
|
+
1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,
|
35
|
+
1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,
|
36
|
+
1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,
|
37
|
+
1,1,1,2,2,2,2,2,2,2,2,2,1,1,1,1,
|
38
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
39
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
|
40
|
+
]
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
toggle1cb = lambda do |ih,v|
|
45
|
+
if(v == 1)
|
46
|
+
Iup.Message("Toggle 1","pressed")
|
47
|
+
else
|
48
|
+
Iup.Message("Toggle 1","released")
|
49
|
+
end
|
50
|
+
|
51
|
+
Iup::DEFAULT
|
52
|
+
end
|
53
|
+
|
54
|
+
img1 = Iup.Image(16,16, img_1)
|
55
|
+
img2 = Iup.Image(16,16, img_2)
|
56
|
+
img1["1"] = "255 255 255"
|
57
|
+
img1["2"] = "0 192 0"
|
58
|
+
img2["1"] = "255 255 255"
|
59
|
+
img2["2"] = "0 192 0"
|
60
|
+
|
61
|
+
toggle1 = Iup.Toggle("toggle with image")
|
62
|
+
toggle2 = Iup.Toggle("deactivated toggle with image")
|
63
|
+
toggle3 = Iup.Toggle("regular toggle")
|
64
|
+
toggle4 = Iup.Toggle("toggle with blue foreground color")
|
65
|
+
toggle5 = Iup.Toggle("toggle with red background color")
|
66
|
+
toggle6 = Iup.Toggle("toggle with black background color and green foreground color")
|
67
|
+
toggle7 = Iup.Toggle("deactivated toggle")
|
68
|
+
toggle8 = Iup.Toggle("toggle with Courier 14 Bold font")
|
69
|
+
toggle9 = Iup.Toggle("toggle with size EIGHTxEIGHT")
|
70
|
+
|
71
|
+
toggle1.action = toggle1cb
|
72
|
+
|
73
|
+
toggle1.image = img1 # Toggle 1 uses image
|
74
|
+
toggle2.image = img2 # Toggle 2 uses image
|
75
|
+
toggle2.active = "NO" # Toggle 2 inactive
|
76
|
+
toggle4.fgcolor = "0 0 255" # Toggle 4 has blue foreground color
|
77
|
+
toggle5.bgcolor = "255 0 0" # Toggle 5 has red background color
|
78
|
+
toggle6.fgcolor = "0 255 0" # Toggle 6 has green foreground color
|
79
|
+
toggle6.bgcolor = "0 0 0" # Toggle 6 has black background color
|
80
|
+
toggle7.active = "NO" # Toggle 7 inactive
|
81
|
+
toggle8.font = "COURIER_BOLD_14" # Toggle 8 has Courier 14 Bold font
|
82
|
+
toggle9.size = "EIGHTHxEIGHTH" # Toggle 9 has size EIGHTxEIGHT
|
83
|
+
|
84
|
+
# Creating box that contains the toggles
|
85
|
+
caixa =
|
86
|
+
Iup.Vbox([
|
87
|
+
toggle1,
|
88
|
+
toggle2,
|
89
|
+
toggle3,
|
90
|
+
toggle4,
|
91
|
+
toggle5,
|
92
|
+
toggle6,
|
93
|
+
toggle7,
|
94
|
+
toggle8,
|
95
|
+
toggle9])
|
96
|
+
|
97
|
+
toggles = Iup.Radio( caixa ) # Grouping toggles
|
98
|
+
toggles.expand = "YES"
|
99
|
+
|
100
|
+
# Dialog
|
101
|
+
dlg = Iup.Dialog(toggles)
|
102
|
+
dlg.tile = "IupToggle"
|
103
|
+
dlg.attr = "MARGIN=5x5, GAP=5, RESIZE=NO"
|
104
|
+
|
105
|
+
# Associates a menu to the dialog
|
106
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
107
|
+
Iup.MainLoop()
|
108
|
+
dlg.Destroy()
|
109
|
+
img1.Destroy
|
110
|
+
img2.Destroy
|
@@ -0,0 +1,87 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# Creates frame 1
|
5
|
+
frm_1 = Iup.Frame(
|
6
|
+
Iup.Hbox([
|
7
|
+
Iup.Fill(),
|
8
|
+
vbox_1 = Iup.Vbox([
|
9
|
+
btn_11=Iup.Button("1"),
|
10
|
+
btn_12=Iup.Button("2"),
|
11
|
+
btn_13=Iup.Button("3")]),
|
12
|
+
Iup.Fill()])
|
13
|
+
)
|
14
|
+
|
15
|
+
# Sets title of frame 1
|
16
|
+
frm_1.title = "ALIGNMENT = ALEFT, GAP = 10"
|
17
|
+
|
18
|
+
# Sets attributes of buttons inside frame 1
|
19
|
+
btn_11.size = "20x30"
|
20
|
+
btn_12.size = "30x30"
|
21
|
+
btn_13.size = "40x30"
|
22
|
+
|
23
|
+
# Sets attributes of vbox 1
|
24
|
+
vbox_1.attr = "ALIGNMENT = ALEFT, GAP = 10"
|
25
|
+
|
26
|
+
# Creates frame 2
|
27
|
+
frm_2 = Iup.Frame(
|
28
|
+
Iup.Hbox([
|
29
|
+
Iup.Fill(),
|
30
|
+
vbox_2 = Iup.Vbox([
|
31
|
+
btn_21 = Iup.Button("1"),
|
32
|
+
btn_22 = Iup.Button("2"),
|
33
|
+
btn_23 = Iup.Button("3")]),
|
34
|
+
Iup.Fill()])
|
35
|
+
)
|
36
|
+
|
37
|
+
# Sets title of frame 1
|
38
|
+
frm_2.title = "ALIGNMENT = ACENTER, MARGIN = 15"
|
39
|
+
|
40
|
+
# Sets attributes of buttons inside frame 2
|
41
|
+
btn_21.size = "20x30"
|
42
|
+
btn_22.size = "30x30"
|
43
|
+
btn_23.size = "40x30"
|
44
|
+
|
45
|
+
# Sets attributes of vbox 2
|
46
|
+
vbox_2.attr = "ALIGNMENT = ACENTER, MARGIN = 15"
|
47
|
+
|
48
|
+
# Creates frame 3
|
49
|
+
frm_3 = Iup.Frame(
|
50
|
+
Iup.Hbox([
|
51
|
+
Iup.Fill(),
|
52
|
+
vbox_3 = Iup.Vbox([
|
53
|
+
btn_31=Iup.Button("1"),
|
54
|
+
btn_32=Iup.Button("2"),
|
55
|
+
btn_33=Iup.Button("3")]),
|
56
|
+
Iup.Fill()])
|
57
|
+
)
|
58
|
+
|
59
|
+
# Sets title of frame 3
|
60
|
+
frm_3.title = "ALIGNMENT = ARIGHT, SIZE = 20"
|
61
|
+
|
62
|
+
# Sets attributes of buttons inside frame 3
|
63
|
+
btn_31.size = "20x30"
|
64
|
+
btn_32.size = "30x30"
|
65
|
+
btn_33.size = "40x30"
|
66
|
+
|
67
|
+
# Sets attributes of vbox 3
|
68
|
+
vbox_3.attr = "ALIGNMENT = ARIGHT, SIZE = 20"
|
69
|
+
|
70
|
+
# Creates dialog with three frames inside a vbo_
|
71
|
+
dlg = Iup.Dialog(
|
72
|
+
Iup.Vbox([
|
73
|
+
frm_1,
|
74
|
+
frm_2,
|
75
|
+
frm_3])
|
76
|
+
)
|
77
|
+
|
78
|
+
# Sets title and size of the dialog
|
79
|
+
dlg.attr = "TITLE = \"Iup.Vbox Example\", SIZE = QUARTER"
|
80
|
+
|
81
|
+
# Shows dialog in the center of the screen
|
82
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
83
|
+
|
84
|
+
# Initializes IUP main loop
|
85
|
+
Iup.MainLoop()
|
86
|
+
|
87
|
+
dlg.Destroy()
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
|
5
|
+
fill = Iup.Fill()
|
6
|
+
|
7
|
+
text = Iup.Text()
|
8
|
+
|
9
|
+
text.attr = "EXPAND = YES, VALUE = \"Enter your text here\""
|
10
|
+
|
11
|
+
# Creates a label
|
12
|
+
lbl = Iup.Label("This element is a label")
|
13
|
+
|
14
|
+
# Creatas a button
|
15
|
+
btn = Iup.Button("This button does nothing")
|
16
|
+
|
17
|
+
|
18
|
+
# Creates zbox with four elements
|
19
|
+
zbox = Iup.Zbox([fill, text, lbl, btn])
|
20
|
+
|
21
|
+
# Creates handles for manipulating the zbox VALUE
|
22
|
+
zbox.fill = fill
|
23
|
+
zbox.text = text
|
24
|
+
zbox.lbl = lbl
|
25
|
+
zbox.btn = btn
|
26
|
+
|
27
|
+
list_cb = lambda do |h,t, o, selected|
|
28
|
+
if(selected == 1)
|
29
|
+
zbox.value = zbox[t]
|
30
|
+
end
|
31
|
+
Iup::DEFAULT
|
32
|
+
end
|
33
|
+
|
34
|
+
# Sets zbox alignment
|
35
|
+
zbox.alignment = "ACENTER"
|
36
|
+
|
37
|
+
# Creates frame
|
38
|
+
frm = Iup.Frame(
|
39
|
+
Iup.Hbox([
|
40
|
+
Iup.Fill(),
|
41
|
+
list = Iup.List(),
|
42
|
+
Iup.Fill()])
|
43
|
+
)
|
44
|
+
|
45
|
+
# Creates dialog
|
46
|
+
dlg = Iup.Dialog(
|
47
|
+
Iup.Vbox([
|
48
|
+
frm,
|
49
|
+
zbox])
|
50
|
+
)
|
51
|
+
|
52
|
+
list.attr = "1 = fill, 2 = text, 3 = lbl, 4 = btn"
|
53
|
+
frm.title = "Select an element"
|
54
|
+
dlg.attr = "SIZE = QUARTER, TITLE = \"Iup.Zbox Example\""
|
55
|
+
list.action = list_cb
|
56
|
+
|
57
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER )
|
58
|
+
Iup.MainLoop()
|
59
|
+
dlg.Destroy()
|
60
|
+
|
@@ -0,0 +1,377 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
class MdiTest
|
5
|
+
|
6
|
+
def createImages()
|
7
|
+
img_bits1 = [
|
8
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,
|
9
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,
|
10
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,
|
11
|
+
1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,
|
12
|
+
1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,
|
13
|
+
1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,
|
14
|
+
1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,
|
15
|
+
1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,
|
16
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
17
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
18
|
+
2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
19
|
+
2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
20
|
+
2,2,2,0,2,0,2,0,2,2,0,2,2,2,0,0,0,2,2,2,0,0,2,0,2,2,0,0,0,2,2,2,
|
21
|
+
2,2,2,0,2,0,0,2,0,0,2,0,2,0,2,2,2,0,2,0,2,2,0,0,2,0,2,2,2,0,2,2,
|
22
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,2,2,2,2,0,2,0,2,2,2,0,2,0,2,2,2,0,2,2,
|
23
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,2,0,0,0,0,2,0,2,2,2,0,2,0,0,0,0,0,2,2,
|
24
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,0,2,2,2,0,2,0,2,2,2,0,2,0,2,2,2,2,2,2,
|
25
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,0,2,2,2,0,2,0,2,2,0,0,2,0,2,2,2,0,2,2,
|
26
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,2,0,0,0,0,2,2,0,0,2,0,2,2,0,0,0,2,2,2,
|
27
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,2,2,2,2,2,
|
28
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,0,2,2,2,2,2,2,2,2,
|
29
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,2,2,2,2,2,2,2,2,2,
|
30
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
31
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
32
|
+
1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,
|
33
|
+
1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,
|
34
|
+
1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
35
|
+
1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
36
|
+
1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
37
|
+
1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
38
|
+
1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
39
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
|
40
|
+
]
|
41
|
+
|
42
|
+
img_bits2 = [
|
43
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,
|
44
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,
|
45
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,
|
46
|
+
2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,
|
47
|
+
2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,
|
48
|
+
2,2,2,2,2,2,2,2,2,2,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,
|
49
|
+
2,2,2,2,2,2,2,2,2,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,
|
50
|
+
2,2,2,2,2,2,2,2,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,
|
51
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
|
52
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
|
53
|
+
3,3,3,0,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
|
54
|
+
3,3,3,0,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
|
55
|
+
3,3,3,0,3,0,3,0,3,3,0,3,3,3,1,1,0,3,3,3,0,0,3,0,3,3,0,0,0,3,3,3,
|
56
|
+
3,3,3,0,3,0,0,3,0,0,3,0,3,0,1,1,3,0,3,0,3,3,0,0,3,0,3,3,3,0,3,3,
|
57
|
+
3,3,3,0,3,0,3,3,0,3,3,0,3,3,1,1,3,0,3,0,3,3,3,0,3,0,3,3,3,0,3,3,
|
58
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
59
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
60
|
+
3,3,3,0,3,0,3,3,0,3,3,0,3,0,1,1,3,0,3,0,3,3,0,0,3,0,3,3,3,0,3,3,
|
61
|
+
3,3,3,0,3,0,3,3,0,3,3,0,3,3,1,1,0,0,3,3,0,0,3,0,3,3,0,0,0,3,3,3,
|
62
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,
|
63
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,0,3,3,3,0,3,3,3,3,3,3,3,3,
|
64
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,0,0,0,3,3,3,3,3,3,3,3,3,
|
65
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
|
66
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
|
67
|
+
2,2,2,2,2,2,2,3,3,3,3,3,3,3,1,1,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,
|
68
|
+
2,2,2,2,2,2,3,3,3,3,3,3,3,3,1,1,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,
|
69
|
+
2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
70
|
+
2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
71
|
+
2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
72
|
+
2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
73
|
+
2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
74
|
+
3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
75
|
+
]
|
76
|
+
|
77
|
+
@img1 = Iup.Image(32,32, img_bits1)
|
78
|
+
@img1["0"] = "0 0 0"
|
79
|
+
@img1["1"] = "BGCOLOR"
|
80
|
+
@img1["2"] = "255 0 0"
|
81
|
+
|
82
|
+
@img2 = Iup.Image(32,32, img_bits2)
|
83
|
+
@img2["0"] = "0 0 0"
|
84
|
+
@img2["1"] = "0 255 0"
|
85
|
+
@img2["2"] = "BGCOLOR"
|
86
|
+
@img2["3"] = "255 0 0"
|
87
|
+
end
|
88
|
+
|
89
|
+
def set_callbacks(ctrl)
|
90
|
+
|
91
|
+
action = lambda do |ih|
|
92
|
+
printf("%2d-action(%s#%s) Value=%s\n", @line, ih.GetClassName(), ih.cindex, ih.value)
|
93
|
+
@line+=1
|
94
|
+
Iup::DEFAULT
|
95
|
+
end
|
96
|
+
|
97
|
+
getfocus_cb = lambda do |ih|
|
98
|
+
printf("%2d-getfocus(%s#%s)\n", @line, ih.GetClassName(), ih.cindex)
|
99
|
+
@line += 1
|
100
|
+
Iup::DEFAULT
|
101
|
+
end
|
102
|
+
|
103
|
+
killfocus_cb = lambda do |ih|
|
104
|
+
printf("%2d-killfocus(%s#%s)\n", @line, ih.GetClassName(), ih.cindex)
|
105
|
+
@line+=1
|
106
|
+
Iup::DEFAULT
|
107
|
+
end
|
108
|
+
|
109
|
+
ctrl.getfocus_cb = getfocus_cb
|
110
|
+
ctrl.killfocus_cb = killfocus_cb
|
111
|
+
# ctrl.action = action
|
112
|
+
|
113
|
+
child = Iup.GetNextChild(ctrl, nil)
|
114
|
+
while (child)
|
115
|
+
set_callbacks(child)
|
116
|
+
child = Iup.GetNextChild(ctrl, child)
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
def createDialog()
|
121
|
+
|
122
|
+
_frm_1 = Iup.Frame(
|
123
|
+
Iup.Vbox([
|
124
|
+
Iup.Button(:title=>"Button Text",:attr=>"CINDEX=1"),
|
125
|
+
Iup.Button(:attr=> "CINDEX=2, BGCOLOR=\"255 128 0\", RASTERSIZE=30x30"),
|
126
|
+
Iup.Button(:image=>@img1,:attr=> "CINDEX=3"),
|
127
|
+
Iup.Button(:image=>@img1,:attr=> "CINDEX=4, FLAT=YES"),
|
128
|
+
Iup.Button(:image=>@img1,:impress=>@img2,:attr=> "CINDEX=5")
|
129
|
+
]),:title=>"IupButton")
|
130
|
+
|
131
|
+
_frm_2 = Iup.Frame(
|
132
|
+
Iup.Vbox([
|
133
|
+
Iup.Label(:title=>"Label Text\nLine 2\nLine 3",:attr=> "CINDEX=1"),
|
134
|
+
Iup.Label(:title=>"",:attr => "SEPARATOR=HORIZONTAL,CINDEX=2"),
|
135
|
+
Iup.Label(:title=>"",:image=>@img1,:attr => "CINDEX=3")
|
136
|
+
]),:title=>"IupLabel")
|
137
|
+
|
138
|
+
_frm_3 = Iup.Frame(
|
139
|
+
Iup.Vbox([
|
140
|
+
Iup.Toggle(:title=>"Toggle Text",:attr=>"VALUE=ON,CINDEX=1"),
|
141
|
+
Iup.Toggle(:title=>"3State Text",:attr=>"VALUE=NOTDEF,CINDEX=2,3STATE=YES"),
|
142
|
+
Iup.Toggle(:title=>"",:image=>@img1,:impress=>@img2,:attr=> "CINDEX=3"),
|
143
|
+
Iup.Frame(Iup.Radio(Iup.Vbox([
|
144
|
+
Iup.Toggle(:title=>"Toggle Text",:cindex=>4),
|
145
|
+
Iup.Toggle(:title=>"Toggle Text",:cindex=>5)
|
146
|
+
])), :title=>"IupRadio")
|
147
|
+
]),:title=>"IupToggle")
|
148
|
+
|
149
|
+
_text_1 = Iup.Text( )
|
150
|
+
_text_1.value = "IupText Text"
|
151
|
+
# _text_1.size = "80x"
|
152
|
+
_text_1.cindex = 1
|
153
|
+
|
154
|
+
_ml_1 = Iup.MultiLine( )
|
155
|
+
_ml_1.value = "IupMultiline Text\nSecond line\nThird line"
|
156
|
+
# _ml_1.size = "50x30"
|
157
|
+
# _ml_1.expand = "YES"
|
158
|
+
# _ml_1.size = "80x60"
|
159
|
+
_ml_1.cindex = 1
|
160
|
+
|
161
|
+
_frm_4 = Iup.Frame(Iup.Vbox([
|
162
|
+
_text_1,
|
163
|
+
_ml_1,
|
164
|
+
]),:title=>"IupText/IupMultiline")
|
165
|
+
|
166
|
+
_list_1 = Iup.List()
|
167
|
+
_list_1.expand = "YES"
|
168
|
+
# _list_1.size = "50x40"
|
169
|
+
_list_1.value = 1
|
170
|
+
_list_1.multiple = "YES"
|
171
|
+
_list_1["1"] = "Item 1 Text"
|
172
|
+
_list_1["2"] = "Item 2 Text"
|
173
|
+
_list_1["3"] = "Item 3 Text Big Item"
|
174
|
+
_list_1["4"] = "Item 4 Text"
|
175
|
+
_list_1["5"] = "Item 5 Text"
|
176
|
+
_list_1["6"] = "Item 6 Text"
|
177
|
+
_list_1.cindex = 1
|
178
|
+
|
179
|
+
_list_2 = Iup.List( )
|
180
|
+
_list_2.dropdown="YES"
|
181
|
+
_list_2.expand="YES"
|
182
|
+
_list_2.visible_items= 3
|
183
|
+
# _list_2.size= "50x"
|
184
|
+
_list_2.value=2
|
185
|
+
_list_2["1"]="Item 1 Text"
|
186
|
+
_list_2["2"]="Item 2 Text Big Item"
|
187
|
+
_list_2["3"]="Item 3 Text"
|
188
|
+
_list_2["4"]="Item 4 Text"
|
189
|
+
_list_2["5"]="Item 5 Text"
|
190
|
+
_list_2["6"]="Item 6 Text"
|
191
|
+
_list_2.cindex=2
|
192
|
+
|
193
|
+
_list_3 = Iup.List( )
|
194
|
+
_list_3.editbox="YES"
|
195
|
+
_list_3.xpand="YES"
|
196
|
+
# _list_3.size="50x40"
|
197
|
+
_list_3.value="Test Value"
|
198
|
+
_list_3["1"]="Item 1 Text"
|
199
|
+
_list_3["2"]="Item 2 Text Big Item"
|
200
|
+
_list_3["3"]="Item 3 Text"
|
201
|
+
_list_3["4"]="Item 4 Text"
|
202
|
+
_list_3["5"]="Item 5 Text"
|
203
|
+
_list_3["6"]="Item 6 Text"
|
204
|
+
_list_3.cindex = 3
|
205
|
+
|
206
|
+
_list_4 = Iup.List( )
|
207
|
+
_list_4.editbox = "YES"
|
208
|
+
_list_4.dropdown="YES"
|
209
|
+
_list_4.expand="YES"
|
210
|
+
_list_4.visible_items = 3
|
211
|
+
# _list_4.size = "50x10"
|
212
|
+
_list_4.value = "Test Value"
|
213
|
+
_list_4["1"] = "Item 1 Text"
|
214
|
+
_list_4["2"] = "Item 2 Text Big Item"
|
215
|
+
_list_4["3"] = "Item 3 Text"
|
216
|
+
_list_4["4"] = "Item 4 Text"
|
217
|
+
_list_4["5"] = "Item 5 Text"
|
218
|
+
_list_4["6"] = "Item 6 Text"
|
219
|
+
_list_4.cindex="4"
|
220
|
+
|
221
|
+
_frm_5 = Iup.Frame(Iup.Vbox([
|
222
|
+
_list_1,
|
223
|
+
_list_2,
|
224
|
+
_list_3,
|
225
|
+
_list_4
|
226
|
+
]))
|
227
|
+
_frm_5.title = "IupList"
|
228
|
+
|
229
|
+
_hbox_1 = Iup.Hbox([
|
230
|
+
_frm_1,
|
231
|
+
_frm_2,
|
232
|
+
_frm_3,
|
233
|
+
_frm_4,
|
234
|
+
_frm_5
|
235
|
+
])
|
236
|
+
|
237
|
+
_cnv_1 = Iup.Canvas( "do_nothing")
|
238
|
+
_cnv_1.bgcolor = "128 255 0"
|
239
|
+
|
240
|
+
_vbox_1 = Iup.Vbox([
|
241
|
+
# Iup.Tabs(_hbox_1, NULL),
|
242
|
+
_hbox_1,
|
243
|
+
_cnv_1
|
244
|
+
])
|
245
|
+
_vbox_1.margin = "5x5"
|
246
|
+
_vbox_1.alignment = "ARIGHT"
|
247
|
+
_vbox_1.gap = "5"
|
248
|
+
|
249
|
+
set_callbacks(_vbox_1)
|
250
|
+
|
251
|
+
dlg = Iup.Dialog(_vbox_1)
|
252
|
+
dlg.title = "MDI Child"
|
253
|
+
# dlg.shrink = "YES"
|
254
|
+
# dlg.size = "500x200"
|
255
|
+
|
256
|
+
# dlg.bgcolor = "255 0 255"
|
257
|
+
# dlg.font","Times New Roman:ITALIC:10"
|
258
|
+
# dlg.font = "TIMES_BOLD_14"
|
259
|
+
# _vbox_1.active = "NO"
|
260
|
+
|
261
|
+
#dlg.composited = "YES"
|
262
|
+
#dlg.layered = "YES"
|
263
|
+
#dlg.layeralpha = 192
|
264
|
+
|
265
|
+
# dlg.Map()
|
266
|
+
# dlg.size = nil
|
267
|
+
|
268
|
+
return dlg
|
269
|
+
end
|
270
|
+
|
271
|
+
|
272
|
+
def createMenu()
|
273
|
+
|
274
|
+
mdi_tilehoriz = lambda do |ih|
|
275
|
+
Iup.GetDialog(ih).mdiarrange = "TILEHORIZONTAL"
|
276
|
+
Iup::DEFAULT
|
277
|
+
end
|
278
|
+
|
279
|
+
mdi_tilevert = lambda do |ih|
|
280
|
+
Iup.GetDialog(ih).mdiarrange= "TILEVERTICAL"
|
281
|
+
Iup::DEFAULT
|
282
|
+
end
|
283
|
+
|
284
|
+
mdi_cascade = lambda do |ih|
|
285
|
+
Iup.GetDialog(ih).mdiarrange= "CASCADE"
|
286
|
+
Iup::DEFAULT
|
287
|
+
end
|
288
|
+
|
289
|
+
mdi_icon = lambda do |ih|
|
290
|
+
Iup.GetDialog(ih).mdiarrange = "ICON"
|
291
|
+
Iup::DEFAULT
|
292
|
+
end
|
293
|
+
|
294
|
+
mdi_next = lambda do |ih|
|
295
|
+
Iup.GetDialog(ih).mdiactivate = "NEXT"
|
296
|
+
Iup::DEFAULT
|
297
|
+
end
|
298
|
+
|
299
|
+
mdi_previous = lambda do |ih|
|
300
|
+
Iup.GetDialog(ih).mdiactivate = "PREVIOUS"
|
301
|
+
return Iup::DEFAULT
|
302
|
+
end
|
303
|
+
|
304
|
+
mdi_closeall = lambda do |ih|
|
305
|
+
Iup.GetDialog(ih).mdicloseall = nil
|
306
|
+
Iup::DEFAULT
|
307
|
+
end
|
308
|
+
|
309
|
+
mdi_activate = lambda do |ih|
|
310
|
+
printf("%2d-mdi_activate(%s)\n", @line, Iup.GetName(ih))
|
311
|
+
@line+=1
|
312
|
+
Iup::DEFAULT
|
313
|
+
end
|
314
|
+
|
315
|
+
mdi_new = lambda do |ih|
|
316
|
+
dlg = createDialog()
|
317
|
+
dlg.mdichild = "YES"
|
318
|
+
dlg.parentdialog = "mdiFrame"
|
319
|
+
dlg.mdiclient = @mdiClient
|
320
|
+
#dlg.mdiactivate_cb = mdi_activate
|
321
|
+
#dlg.placement = "MAXIMIZED"
|
322
|
+
dlg.Show()
|
323
|
+
|
324
|
+
Iup::DEFAULT
|
325
|
+
end
|
326
|
+
|
327
|
+
mnu = Iup.Menu([
|
328
|
+
Iup.Submenu("MDI",Iup.Menu([
|
329
|
+
Iup.Item("New",mdi_new)])),
|
330
|
+
winmenu = Iup.Submenu("Window",
|
331
|
+
Iup.Menu([
|
332
|
+
Iup.Item("Tile Horizontal", mdi_tilehoriz),
|
333
|
+
Iup.Item("Tile Vertical", mdi_tilevert),
|
334
|
+
Iup.Item("Cascade", mdi_cascade),
|
335
|
+
Iup.Item("Icon Arrange", mdi_icon),
|
336
|
+
Iup.Item("Close All", mdi_closeall),
|
337
|
+
Iup.Separator(),
|
338
|
+
Iup.Item("Next", mdi_next),
|
339
|
+
Iup.Item("Previous", mdi_previous)
|
340
|
+
]))
|
341
|
+
])
|
342
|
+
@mdiMenu = winmenu
|
343
|
+
@mnu = mnu
|
344
|
+
end
|
345
|
+
|
346
|
+
def createFrame()
|
347
|
+
cnv = Iup.Canvas( "do_nothing")
|
348
|
+
cnv.mdiclient = "YES"
|
349
|
+
cnv.mdimenu = @mdiMenu
|
350
|
+
@mdiClient = cnv
|
351
|
+
|
352
|
+
dlg = Iup.Dialog(cnv)
|
353
|
+
dlg.title = "MDI Frame"
|
354
|
+
dlg.mdiframe = "YES"
|
355
|
+
dlg.rastersize = "800x600"
|
356
|
+
Iup.SetHandle("mdiFrame",dlg)
|
357
|
+
|
358
|
+
dlg
|
359
|
+
end
|
360
|
+
|
361
|
+
def initialize
|
362
|
+
@line = 0
|
363
|
+
createImages()
|
364
|
+
createMenu()
|
365
|
+
dlg = createFrame()
|
366
|
+
# dlg.placement = "MAXIMIZED"
|
367
|
+
dlg.menu = @mnu
|
368
|
+
dlg.ShowXY(Iup::CENTER,Iup::CENTER)
|
369
|
+
Iup.MainLoop()
|
370
|
+
@img1.Destroy
|
371
|
+
@img2.Destroy
|
372
|
+
dlg.Destroy
|
373
|
+
end
|
374
|
+
|
375
|
+
end
|
376
|
+
|
377
|
+
test = MdiTest.new
|