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.
Files changed (68) hide show
  1. data/CHANGES +3 -0
  2. data/MANIFEST +8 -0
  3. data/MIT-LICENSE +18 -0
  4. data/README +12 -0
  5. data/Rakefile +85 -0
  6. data/doc/README +10 -0
  7. data/doc/build_install.txt +74 -0
  8. data/examples/README +16 -0
  9. data/examples/ctrl/cbox.rb +220 -0
  10. data/examples/ctrl/checkboard.rb +33 -0
  11. data/examples/ctrl/degrade.rb +76 -0
  12. data/examples/ctrl/example1.rb +53 -0
  13. data/examples/ctrl/example2.rb +39 -0
  14. data/examples/ctrl/iupcolorbar.rb +95 -0
  15. data/examples/ctrl/iupcolorbrowser.rb +45 -0
  16. data/examples/ctrl/iupdial.rb +117 -0
  17. data/examples/ctrl/iupgauge.rb +242 -0
  18. data/examples/ctrl/iupgetcolor.rb +8 -0
  19. data/examples/ctrl/iupgetparam.rb +62 -0
  20. data/examples/ctrl/iupglcanvas.rb +172 -0
  21. data/examples/ctrl/iupmask.rb +13 -0
  22. data/examples/ctrl/iupmatrix.rb +39 -0
  23. data/examples/ctrl/iupplot2.rb +601 -0
  24. data/examples/ctrl/iuptabs.rb +22 -0
  25. data/examples/ctrl/iuptree.rb +190 -0
  26. data/examples/ctrl/iupval.rb +71 -0
  27. data/examples/ctrl/numbering.rb +46 -0
  28. data/examples/ctrl/sample.rb +166 -0
  29. data/examples/dlg/iupalarm.rb +16 -0
  30. data/examples/dlg/iupfiledlg.rb +19 -0
  31. data/examples/dlg/iupgetfile.rb +19 -0
  32. data/examples/dlg/iuplistdialog.rb +26 -0
  33. data/examples/dlg/iupmessage.rb +5 -0
  34. data/examples/dlg/iupscanf.rb +17 -0
  35. data/examples/elem/iupbutton.rb +180 -0
  36. data/examples/elem/iupcanvas.rb +29 -0
  37. data/examples/elem/iupcanvas2.rb +114 -0
  38. data/examples/elem/iupcanvas3.rb +52 -0
  39. data/examples/elem/iupdialog.rb +67 -0
  40. data/examples/elem/iupdialog2.rb +25 -0
  41. data/examples/elem/iupfill.rb +51 -0
  42. data/examples/elem/iupframe.rb +25 -0
  43. data/examples/elem/iuphbox.rb +68 -0
  44. data/examples/elem/iupimage.rb +113 -0
  45. data/examples/elem/iupitem.rb +60 -0
  46. data/examples/elem/iuplabel.rb +57 -0
  47. data/examples/elem/iuplist.rb +41 -0
  48. data/examples/elem/iuplist2.rb +125 -0
  49. data/examples/elem/iupmenu.rb +32 -0
  50. data/examples/elem/iupmultiline.rb +24 -0
  51. data/examples/elem/iupmultiline2.rb +156 -0
  52. data/examples/elem/iupradio.rb +32 -0
  53. data/examples/elem/iupseparator.rb +81 -0
  54. data/examples/elem/iupsubmenu.rb +85 -0
  55. data/examples/elem/iuptimer.rb +36 -0
  56. data/examples/elem/iuptoggle.rb +110 -0
  57. data/examples/elem/iupvbox.rb +87 -0
  58. data/examples/elem/iupzbox.rb +60 -0
  59. data/examples/elem/mdisample.rb +377 -0
  60. data/examples/elem/progressbar.rb +280 -0
  61. data/examples/elem/scrollbar.rb +66 -0
  62. data/examples/elem/tray.rb +90 -0
  63. data/examples/func/iupgetattribute.rb +32 -0
  64. data/examples/func/iupidle.rb +48 -0
  65. data/lib/iup.so +0 -0
  66. data/ruby-iup.gemspec +26 -0
  67. data/test/test_ruby_iup.rb +25 -0
  68. 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
+