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,67 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# defines icon's image */
|
5
|
+
img = [
|
6
|
+
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,
|
7
|
+
1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,
|
8
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
9
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
10
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
11
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
12
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
13
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
14
|
+
1,3,5,5,6,6,6,6,6,6,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,5,5,5,4,2,
|
15
|
+
1,3,5,5,6,6,6,6,6,6,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,6,5,5,4,2,
|
16
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,5,5,6,6,6,5,5,4,2,
|
17
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,6,6,5,5,4,2,
|
18
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,6,6,5,5,4,2,
|
19
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,6,6,5,5,4,2,
|
20
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,5,5,6,6,6,5,5,4,2,
|
21
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,6,5,5,4,2,
|
22
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,5,5,5,4,2,
|
23
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
24
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
25
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
26
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
27
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
28
|
+
1,3,5,5,6,6,6,6,6,6,5,5,6,6,6,6,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
29
|
+
1,3,5,5,6,6,6,6,6,6,5,5,5,6,6,6,6,5,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
30
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
31
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
32
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
33
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
34
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
35
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
36
|
+
1,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,2,
|
37
|
+
1,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
|
38
|
+
]
|
39
|
+
|
40
|
+
quit_cb = lambda do |ih|
|
41
|
+
Iup::CLOSE
|
42
|
+
end
|
43
|
+
|
44
|
+
|
45
|
+
# Creating dialog's icon */
|
46
|
+
icon = Iup.Image(32, 32, img)
|
47
|
+
icon["1"] = "255 255 255"
|
48
|
+
icon["2"] = "000 000 000"
|
49
|
+
icon["3"] = "226 226 226"
|
50
|
+
icon["4"] = "128 128 128"
|
51
|
+
icon["5"] = "192 192 192"
|
52
|
+
icon["6"] = "000 000 255"
|
53
|
+
|
54
|
+
# Creating dialog's content */
|
55
|
+
quit_bt = Iup.Button(:title=>"Quit",:action=>quit_cb)
|
56
|
+
|
57
|
+
# Creating dialog's menu */
|
58
|
+
options = Iup.Menu([Iup.Item(:title=>"Exit",:action=>quit_cb)])
|
59
|
+
submenu = Iup.Submenu("File", options)
|
60
|
+
menu = Iup.Menu([submenu])
|
61
|
+
|
62
|
+
# Creating main dialog */
|
63
|
+
dialog = Iup.Dialog(Iup.Vbox([quit_bt]),:title=>"IupDialog",:menu=>menu,:cursor=>"CROSS",:icon=>icon,:defaultesc=>quit_bt)
|
64
|
+
|
65
|
+
dialog.ShowXY(Iup::CENTER, Iup::CENTER)
|
66
|
+
Iup.MainLoop
|
67
|
+
dialog.Destroy
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
|
5
|
+
quit_cb = lambda do |ih|
|
6
|
+
Iup::CLOSE
|
7
|
+
end
|
8
|
+
|
9
|
+
# Creating the button */
|
10
|
+
quit_bt = Iup.Button("Quit", quit_cb)
|
11
|
+
|
12
|
+
# the container with a label and the button */
|
13
|
+
vbox = Iup.Vbox([
|
14
|
+
Iup.Label(:title=>"Very Long Text Label",:attr=>"EXPAND=YES, ALIGNMENT=ACENTER"),
|
15
|
+
quit_bt
|
16
|
+
],:alignment=>"ACENTER",:margin=>"10x10",:gap=>5)
|
17
|
+
|
18
|
+
|
19
|
+
# Creating the dialog */
|
20
|
+
dialog = Iup.Dialog(vbox,:title=>"Dialog Title")
|
21
|
+
dialog.SetAttributeHandle("DEFAULTESC", quit_bt)
|
22
|
+
|
23
|
+
dialog.Show()
|
24
|
+
Iup.MainLoop()
|
25
|
+
dialog.Destroy()
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# Creates frame with left aligned button */
|
5
|
+
frame_left = Iup.Frame(
|
6
|
+
Iup.Hbox([
|
7
|
+
Iup.Button("Ok"),
|
8
|
+
Iup.Fill()
|
9
|
+
]
|
10
|
+
)
|
11
|
+
)
|
12
|
+
|
13
|
+
# Sets frame's title */
|
14
|
+
frame_left.title = "Left aligned"
|
15
|
+
|
16
|
+
# Creates frame with centered button */
|
17
|
+
frame_center = Iup.Frame(
|
18
|
+
Iup.Hbox([
|
19
|
+
Iup.Fill(),
|
20
|
+
Iup.Button("Ok"),
|
21
|
+
Iup.Fill()])
|
22
|
+
)
|
23
|
+
|
24
|
+
# Sets frame's title */
|
25
|
+
frame_center.title = "Centered"
|
26
|
+
|
27
|
+
# Creates frame with right aligned button */
|
28
|
+
frame_right = Iup.Frame(
|
29
|
+
Iup.Hbox([
|
30
|
+
Iup.Fill(),
|
31
|
+
Iup.Button( "Ok", "" )])
|
32
|
+
)
|
33
|
+
|
34
|
+
# Sets frame's title */
|
35
|
+
frame_right.title = "Right aligned"
|
36
|
+
|
37
|
+
# Creates dialog with these three frames */
|
38
|
+
dialog = Iup.Dialog(
|
39
|
+
Iup.Vbox([
|
40
|
+
frame_left,
|
41
|
+
frame_center,
|
42
|
+
frame_right])
|
43
|
+
)
|
44
|
+
|
45
|
+
# Sets dialog's size and title */
|
46
|
+
dialog.attr = "SIZE=120, TITLE=IupFill"
|
47
|
+
|
48
|
+
dialog.Show # Shows dialog in the center of the screen */
|
49
|
+
Iup.MainLoop # Initializes IUP main loop */
|
50
|
+
dialog.Destroy
|
51
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# Creates frame with a label */
|
5
|
+
frame = Iup.Frame(
|
6
|
+
Iup.Hbox([
|
7
|
+
Iup.Fill(),
|
8
|
+
Iup.Label("IupFrame Attributes:\nFGCOLOR = \"255 0 0\"\nSIZE = \"EIGHTHxEIGHTH\"\nTITLE = \"This is the frame\"\nMARGIN = \"10x10\""),
|
9
|
+
Iup.Fill()]
|
10
|
+
)
|
11
|
+
)
|
12
|
+
|
13
|
+
# Sets frame's attributes */
|
14
|
+
frame.attr = "FGCOLOR=\"255 0 0\", SIZE=EIGHTHxEIGHTH, TITLE=\"This is the frame\", MARGIN=10x10"
|
15
|
+
|
16
|
+
# Creates dialog with these three frames */
|
17
|
+
dialog = Iup.Dialog(frame)
|
18
|
+
|
19
|
+
# Sets dialog's title */
|
20
|
+
dialog.title = "IupFrame"
|
21
|
+
|
22
|
+
dialog.Show # Shows dialog in the center of the screen */
|
23
|
+
Iup.MainLoop # Initializes IUP main loop */
|
24
|
+
dialog.Destroy
|
25
|
+
|
@@ -0,0 +1,68 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# Creates frame with three top aligned buttons */
|
5
|
+
fr1 = Iup.Frame(
|
6
|
+
h1=Iup.Hbox([
|
7
|
+
Iup.Fill(),
|
8
|
+
b11=Iup.Button("1"),
|
9
|
+
b12=Iup.Button("2"),
|
10
|
+
b13=Iup.Button("3"),
|
11
|
+
Iup.Fill()]
|
12
|
+
)
|
13
|
+
)
|
14
|
+
fr1.title = "ALIGNMENT=ATOP, GAP=10, SIZE=200"
|
15
|
+
b11.size = "30x30"
|
16
|
+
b12.size = "30x40"
|
17
|
+
b13.size = "30x50"
|
18
|
+
h1.attr = "ALIGNMENT=ATOP, GAP=10, SIZE=200" # Sets hbox's alignment, gap and size */
|
19
|
+
|
20
|
+
# Creates frame with three buttons */
|
21
|
+
fr2 = Iup.Frame(
|
22
|
+
h2=Iup.Hbox([
|
23
|
+
Iup.Fill(),
|
24
|
+
b21=Iup.Button("1"),
|
25
|
+
b22=Iup.Button("2"),
|
26
|
+
b23=Iup.Button("3"),
|
27
|
+
Iup.Fill()]
|
28
|
+
)
|
29
|
+
)
|
30
|
+
fr2.title = "ALIGNMENT=ACENTER, GAP=20"
|
31
|
+
b21.size = "30x30"
|
32
|
+
b22.size = "30x40"
|
33
|
+
b23.size = "30x50"
|
34
|
+
h2.attr = "ALIGNMENT=ACENTER, GAP=20" # Sets hbox's alignment and gap */
|
35
|
+
|
36
|
+
# Creates frame with three bottom aligned buttons */
|
37
|
+
fr3 = Iup.Frame(
|
38
|
+
h3=Iup.Hbox([
|
39
|
+
Iup.Fill(),
|
40
|
+
b31=Iup.Button("1"),
|
41
|
+
b32=Iup.Button("2"),
|
42
|
+
b33=Iup.Button("3"),
|
43
|
+
Iup.Fill()]
|
44
|
+
)
|
45
|
+
)
|
46
|
+
fr3.title = "ALIGNMENT = ABOTTOM, SIZE = 150"
|
47
|
+
b31.size = "30x30"
|
48
|
+
b32.size = "30x40"
|
49
|
+
b33.size = "30x50"
|
50
|
+
h3.attr = "ALIGNMENT = ABOTTOM, SIZE = 150" # Sets hbox's alignment and size */
|
51
|
+
|
52
|
+
# Creates dialog with the three frames */
|
53
|
+
dialog = Iup.Dialog(
|
54
|
+
Iup.Vbox([
|
55
|
+
fr1,
|
56
|
+
fr2,
|
57
|
+
fr3]
|
58
|
+
)
|
59
|
+
)
|
60
|
+
|
61
|
+
dialog.title = "IupHbox" # Sets dialog's title */
|
62
|
+
|
63
|
+
dialog.ShowXY(Iup::CENTER, Iup::CENTER ) # Shows dialog in the center of the screen */
|
64
|
+
|
65
|
+
dialog.Show # Shows dialog in the center of the screen */
|
66
|
+
Iup.MainLoop # Initializes IUP main loop */
|
67
|
+
dialog.Destroy
|
68
|
+
|
@@ -0,0 +1,113 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require "iup"
|
3
|
+
|
4
|
+
pixmap_x = [
|
5
|
+
1,2,3,3,3,3,3,3,3,2,1,
|
6
|
+
2,1,2,3,3,3,3,3,2,1,2,
|
7
|
+
3,2,1,2,3,3,3,2,1,2,3,
|
8
|
+
3,3,2,1,2,3,2,1,2,3,3,
|
9
|
+
3,3,3,2,1,2,1,2,3,3,3,
|
10
|
+
3,3,3,3,2,1,2,3,3,3,3,
|
11
|
+
3,3,3,2,1,2,1,2,3,3,3,
|
12
|
+
3,3,2,1,2,3,2,1,2,3,3,
|
13
|
+
3,2,1,2,3,3,3,2,1,2,3,
|
14
|
+
2,1,2,3,3,3,3,3,2,1,2,
|
15
|
+
1,2,3,3,3,3,3,3,3,2,1
|
16
|
+
]
|
17
|
+
|
18
|
+
pixmap_cursor = [
|
19
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
20
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
21
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
22
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
23
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
24
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
25
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
26
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
27
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
28
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,
|
29
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
30
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
31
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
32
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
33
|
+
0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,2,2,2,0,0,0,0,0,0,0,0,0,0,0,
|
34
|
+
0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,
|
35
|
+
0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
36
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
37
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
38
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
39
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
40
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
41
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
42
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
43
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
44
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
45
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
46
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
47
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
48
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
49
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
50
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
51
|
+
]
|
52
|
+
|
53
|
+
|
54
|
+
img_x = Iup.Image( 11, 11, pixmap_x )
|
55
|
+
img_x["1"] = "0 1 0"
|
56
|
+
img_x["2"] = "255 0 0"
|
57
|
+
img_x["3"] = "255 255 0"
|
58
|
+
|
59
|
+
Iup.SetHandle( "img_x", img_x )
|
60
|
+
img_cursor = Iup.Image( 32, 32, pixmap_cursor )
|
61
|
+
|
62
|
+
img_cursor["1"] = "255 0 0"
|
63
|
+
img_cursor["2"] = "128 0 0"
|
64
|
+
|
65
|
+
img_cursor.hotspot = "21:10"
|
66
|
+
|
67
|
+
Iup.SetHandle( "img_cursor", img_cursor )
|
68
|
+
|
69
|
+
btn = Iup.Button( "Dummy")
|
70
|
+
btn.image = "img_x"
|
71
|
+
|
72
|
+
lbl = Iup.Label( "Dummy" )
|
73
|
+
lbl.image = "img_x"
|
74
|
+
|
75
|
+
tgl = Iup.Toggle("Dummy")
|
76
|
+
tgl.image = "img_x"
|
77
|
+
|
78
|
+
tgl_radio_1 = Iup.Toggle("Dummy")
|
79
|
+
tgl_radio_2 = Iup.Toggle("Dummy")
|
80
|
+
|
81
|
+
tgl_radio_1.image = "img_x"
|
82
|
+
tgl_radio_2.image = "img_x"
|
83
|
+
|
84
|
+
string_size = "\"X\" image width = #{img_x.width} \"X\" image height = #{img_x.height}"
|
85
|
+
|
86
|
+
lbl_size = Iup.Label( string_size )
|
87
|
+
|
88
|
+
frm_btn = Iup.Frame( btn )
|
89
|
+
frm_lbl = Iup.Frame( lbl )
|
90
|
+
frm_tgl = Iup.Frame( tgl )
|
91
|
+
frm_tgl_radio = Iup.Frame( Iup.Radio( Iup.Vbox([ tgl_radio_1, tgl_radio_2]) ) )
|
92
|
+
|
93
|
+
frm_btn.attr = "TITLE=button, SIZE=EIGHTHxEIGHTH"
|
94
|
+
frm_lbl.attr = "TITLE=label , SIZE=EIGHTHxEIGHTH"
|
95
|
+
frm_tgl.attr = "TITLE=toggle, SIZE=EIGHTHxEIGHTH"
|
96
|
+
frm_tgl_radio.attr = "TITLE=radio, SIZE=EIGHTHxEIGHTH"
|
97
|
+
|
98
|
+
dlg = Iup.Dialog(
|
99
|
+
Iup.Vbox([
|
100
|
+
Iup.Hbox([ frm_btn, frm_lbl, frm_tgl, frm_tgl_radio]),
|
101
|
+
Iup.Fill(),
|
102
|
+
Iup.Hbox([ Iup.Fill(), lbl_size, Iup.Fill()])]
|
103
|
+
)
|
104
|
+
)
|
105
|
+
|
106
|
+
dlg.attr = "TITLE=\"Iup.Image Example\", SIZE=HALFxQUARTER, CURSOR=img_cursor"
|
107
|
+
|
108
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
109
|
+
|
110
|
+
Iup.MainLoop()
|
111
|
+
dlg.Destroy()
|
112
|
+
img_x.Destroy()
|
113
|
+
img_cursor.Destroy()
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require "iup"
|
3
|
+
|
4
|
+
item_save_cb = lambda do |ih,*c|
|
5
|
+
Iup.Message("Test","Saved!")
|
6
|
+
Iup::DEFAULT
|
7
|
+
end
|
8
|
+
|
9
|
+
item_autosave_cb = lambda do |ih,*c|
|
10
|
+
item_autosave = Iup.GetHandle("item_autosave")
|
11
|
+
if (item_autosave.value=="ON")
|
12
|
+
Iup.Message("Auto Save","OFF")
|
13
|
+
item_autosave.value = "OFF"
|
14
|
+
else
|
15
|
+
Iup.Message("Auto Save","ON")
|
16
|
+
item_autosave.value = "ON"
|
17
|
+
end
|
18
|
+
|
19
|
+
Iup::DEFAULT
|
20
|
+
end
|
21
|
+
|
22
|
+
item_exit_cb = lambda do |ih,*c|
|
23
|
+
return Iup::CLOSE
|
24
|
+
end
|
25
|
+
|
26
|
+
text = Iup.Text(:value=>"This is an empty text")
|
27
|
+
|
28
|
+
item_save = Iup.Item("Save\tCtrl+S") # this is NOT related with the Ctrl+S key callback, it will just align the text at right */
|
29
|
+
item_autosave = Iup.Item("&Auto Save")
|
30
|
+
item_exit = Iup.Item("Exit")
|
31
|
+
|
32
|
+
item_exit.key = "K_x" # this is NOT related with the Ctrl+X key callback, it will just underline the letter */
|
33
|
+
|
34
|
+
item_exit.action = item_exit_cb
|
35
|
+
item_autosave.action = item_autosave_cb
|
36
|
+
|
37
|
+
item_autosave.value = "ON"
|
38
|
+
Iup.SetHandle("item_autosave", item_autosave) # giving a name to a iup handle */
|
39
|
+
|
40
|
+
menu_file = Iup.Menu([item_save, item_autosave, item_exit])
|
41
|
+
|
42
|
+
submenu_file = Iup.Submenu("File", menu_file)
|
43
|
+
|
44
|
+
menu = Iup.Menu([submenu_file])
|
45
|
+
|
46
|
+
Iup.SetHandle("menu", menu)
|
47
|
+
|
48
|
+
dlg = Iup.Dialog(Iup.Vbox([text, Iup.Button("Test")]))
|
49
|
+
|
50
|
+
dlg.margin = "10x10"
|
51
|
+
dlg.gap = 10
|
52
|
+
dlg.title = "IupItem"
|
53
|
+
dlg.menu = "menu"
|
54
|
+
dlg.K_cX = item_exit_cb # this will also affect the Iup.Text if at focus, since it is used for clipboard cut */
|
55
|
+
dlg.K_cA = item_autosave_cb # this will also affect the Iup.Text if at focus, since it is used for select all */
|
56
|
+
dlg.K_cS = item_save_cb
|
57
|
+
|
58
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
59
|
+
Iup.MainLoop()
|
60
|
+
dlg.Destroy()
|
@@ -0,0 +1,57 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require "iup"
|
3
|
+
|
4
|
+
# Global variables */
|
5
|
+
pixmap_star = [
|
6
|
+
1,1,1,1,1,1,2,1,1,1,1,1,1,
|
7
|
+
1,1,1,1,1,1,2,1,1,1,1,1,1,
|
8
|
+
1,1,1,1,1,2,2,2,1,1,1,1,1,
|
9
|
+
1,1,1,1,1,2,2,2,1,1,1,1,1,
|
10
|
+
1,1,2,2,2,2,2,2,2,2,2,1,1,
|
11
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,
|
12
|
+
1,1,1,2,2,2,2,2,2,2,1,1,1,
|
13
|
+
1,1,1,1,2,2,2,2,2,1,1,1,1,
|
14
|
+
1,1,1,1,2,2,2,2,2,1,1,1,1,
|
15
|
+
1,1,1,2,2,1,1,2,2,2,1,1,1,
|
16
|
+
1,1,2,2,1,1,1,1,1,2,2,1,1,
|
17
|
+
1,2,2,1,1,1,1,1,1,1,2,2,1,
|
18
|
+
2,2,1,1,1,1,1,1,1,1,1,2,2
|
19
|
+
]
|
20
|
+
# Creates the star image */
|
21
|
+
img_star = Iup.Image( 13, 13, pixmap_star )
|
22
|
+
|
23
|
+
# Sets star image colors */
|
24
|
+
img_star["1"] = "0 0 0"
|
25
|
+
img_star["2"] = "0 198 0"
|
26
|
+
|
27
|
+
# Creates a label */
|
28
|
+
lbl = Iup.Label( "This label has the following attributes set:\nBGCOLOR = 255 255 0\nFGCOLOR = 0 0 255\nFONT = COURIER_NORMAL_14\nSIZE = HALFxQUARTER\nTITLE = All text contained here\nALIGNMENT = ACENTER\n" )
|
29
|
+
|
30
|
+
# Sets all the attributes of label lbl, except for IMAGE */
|
31
|
+
lbl.attr = "BGCOLOR = \"255 255 0\", FGCOLOR = \"0 0 255\", FONT = COURIER_NORMAL_14, SIZE = HALFxQUARTER, ALIGNMENT = ACENTER"
|
32
|
+
|
33
|
+
# Creates a label to explain that the label on the right has an image */
|
34
|
+
lbl_explain = Iup.Label( "The label on the right has the image of a star" )
|
35
|
+
|
36
|
+
# Creates a label whose title is not important, cause it will have an image */
|
37
|
+
lbl_star = Iup.Label( "Does not matter" )
|
38
|
+
|
39
|
+
# Associates image "img_star" with label lbl_star */
|
40
|
+
lbl_star.image = img_star
|
41
|
+
|
42
|
+
# Creates dialog with the label */
|
43
|
+
dlg = Iup.Dialog(Iup.Vbox([ lbl, Iup.Hbox([ lbl_explain, lbl_star])]))
|
44
|
+
|
45
|
+
# Sets title of the dialog */
|
46
|
+
dlg.title = "IupLabel Example"
|
47
|
+
|
48
|
+
# Shows dialog in the center of the screen */
|
49
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER )
|
50
|
+
|
51
|
+
# Initializes IUP main loop */
|
52
|
+
Iup.MainLoop( )
|
53
|
+
|
54
|
+
dlg.Destroy()
|
55
|
+
img_star.Destroy()
|
56
|
+
|
57
|
+
|