ruby-iup 0.1.0-x86-mswin32-60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
+