ruby-iup 0.0.1-i386-mswin32

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 (138) hide show
  1. data/doc/README +10 -0
  2. data/doc/build_install.txt +77 -0
  3. data/examples/README +16 -0
  4. data/examples/ctrl/cbox.rb +221 -0
  5. data/examples/ctrl/checkboard.rb +33 -0
  6. data/examples/ctrl/degrade.rb +73 -0
  7. data/examples/ctrl/example1.rb +53 -0
  8. data/examples/ctrl/example2.rb +39 -0
  9. data/examples/ctrl/iupcolorbar.rb +95 -0
  10. data/examples/ctrl/iupcolorbrowser.rb +45 -0
  11. data/examples/ctrl/iupdial.rb +117 -0
  12. data/examples/ctrl/iupgauge.rb +242 -0
  13. data/examples/ctrl/iupgetcolor.rb +8 -0
  14. data/examples/ctrl/iupgetparam.rb +62 -0
  15. data/examples/ctrl/iupglcanvas.rb +172 -0
  16. data/examples/ctrl/iupmask.rb +15 -0
  17. data/examples/ctrl/iupmatrix.rb +39 -0
  18. data/examples/ctrl/iupplot2.rb +603 -0
  19. data/examples/ctrl/iuptabs.rb +22 -0
  20. data/examples/ctrl/iuptree.rb +190 -0
  21. data/examples/ctrl/iupval.rb +71 -0
  22. data/examples/ctrl/numbering.rb +46 -0
  23. data/examples/ctrl/sample.rb +166 -0
  24. data/examples/dlg/iupalarm.rb +14 -0
  25. data/examples/dlg/iupfiledlg.rb +19 -0
  26. data/examples/dlg/iupgetfile.rb +19 -0
  27. data/examples/dlg/iuplistdialog.rb +26 -0
  28. data/examples/dlg/iupmessage.rb +5 -0
  29. data/examples/dlg/iupscanf.rb +17 -0
  30. data/examples/elem/iupbutton.rb +197 -0
  31. data/examples/elem/iupcanvas.rb +27 -0
  32. data/examples/elem/iupcanvas2.rb +113 -0
  33. data/examples/elem/iupcanvas3.rb +62 -0
  34. data/examples/elem/iupdialog.rb +71 -0
  35. data/examples/elem/iupdialog2.rb +25 -0
  36. data/examples/elem/iupfill.rb +51 -0
  37. data/examples/elem/iupframe.rb +25 -0
  38. data/examples/elem/iuphbox.rb +68 -0
  39. data/examples/elem/iupimage.rb +113 -0
  40. data/examples/elem/iupitem.rb +60 -0
  41. data/examples/elem/iuplabel.rb +57 -0
  42. data/examples/elem/iuplist.rb +41 -0
  43. data/examples/elem/iuplist2.rb +125 -0
  44. data/examples/elem/iupmenu.rb +32 -0
  45. data/examples/elem/iupmultiline.rb +24 -0
  46. data/examples/elem/iupmultiline2.rb +156 -0
  47. data/examples/elem/iupradio.rb +32 -0
  48. data/examples/elem/iupseparator.rb +81 -0
  49. data/examples/elem/iupsubmenu.rb +85 -0
  50. data/examples/elem/iuptext.rb +61 -0
  51. data/examples/elem/iuptimer.rb +36 -0
  52. data/examples/elem/iuptoggle.rb +110 -0
  53. data/examples/elem/iupvbox.rb +87 -0
  54. data/examples/elem/iupzbox.rb +60 -0
  55. data/examples/elem/mdisample.rb +376 -0
  56. data/examples/elem/progressbar.rb +294 -0
  57. data/examples/elem/scrollbar.rb +66 -0
  58. data/examples/elem/tray.rb +90 -0
  59. data/examples/func/iupgetattribute.rb +32 -0
  60. data/examples/func/iupidle.rb +48 -0
  61. data/ext/extconf.rb +27 -0
  62. data/ext/iup-win32/cd.dll +0 -0
  63. data/ext/iup-win32/cd.lib +0 -0
  64. data/ext/iup-win32/cdcontextplus.dll +0 -0
  65. data/ext/iup-win32/cdcontextplus.lib +0 -0
  66. data/ext/iup-win32/cdlua51.lib +0 -0
  67. data/ext/iup-win32/cdluacontextplus51.lib +0 -0
  68. data/ext/iup-win32/cdluaim51.lib +0 -0
  69. data/ext/iup-win32/cdluapdf51.lib +0 -0
  70. data/ext/iup-win32/cdpdf.dll +0 -0
  71. data/ext/iup-win32/cdpdf.lib +0 -0
  72. data/ext/iup-win32/freetype6.dll +0 -0
  73. data/ext/iup-win32/freetype6.lib +0 -0
  74. data/ext/iup-win32/im.dll +0 -0
  75. data/ext/iup-win32/im_avi.dll +0 -0
  76. data/ext/iup-win32/im_capture.dll +0 -0
  77. data/ext/iup-win32/im_ecw.dll +0 -0
  78. data/ext/iup-win32/im_fftw.dll +0 -0
  79. data/ext/iup-win32/im_jp2.dll +0 -0
  80. data/ext/iup-win32/im_process.dll +0 -0
  81. data/ext/iup-win32/im_wmv.dll +0 -0
  82. data/ext/iup-win32/iup.dll +0 -0
  83. data/ext/iup-win32/iup.lib +0 -0
  84. data/ext/iup-win32/iup_pplot.dll +0 -0
  85. data/ext/iup-win32/iup_pplot.lib +0 -0
  86. data/ext/iup-win32/iupcd.dll +0 -0
  87. data/ext/iup-win32/iupcd.lib +0 -0
  88. data/ext/iup-win32/iupcontrols.dll +0 -0
  89. data/ext/iup-win32/iupcontrols.lib +0 -0
  90. data/ext/iup-win32/iupgl.dll +0 -0
  91. data/ext/iup-win32/iupgl.lib +0 -0
  92. data/ext/iup-win32/iupim.dll +0 -0
  93. data/ext/iup-win32/iupim.lib +0 -0
  94. data/ext/iup-win32/iupimglib.dll +0 -0
  95. data/ext/iup-win32/iupimglib.lib +0 -0
  96. data/ext/iup-win32/iuplua51.lib +0 -0
  97. data/ext/iup-win32/iuplua_pplot51.lib +0 -0
  98. data/ext/iup-win32/iupluacd51.lib +0 -0
  99. data/ext/iup-win32/iupluacontrols51.lib +0 -0
  100. data/ext/iup-win32/iupluagl51.lib +0 -0
  101. data/ext/iup-win32/iupluaim51.lib +0 -0
  102. data/ext/iup-win32/iupluaimglib51.lib +0 -0
  103. data/ext/iup-win32/iupluaole51.lib +0 -0
  104. data/ext/iup-win32/iupole.dll +0 -0
  105. data/ext/iup-win32/iupole.lib +0 -0
  106. data/ext/iup-win32/iupstub.lib +0 -0
  107. data/ext/iup-win32/pdflib.dll +0 -0
  108. data/ext/iup-win32/pdflib.lib +0 -0
  109. data/ext/iup.c +1261 -0
  110. data/ext/mkrf_conf.rb +72 -0
  111. data/ext/rb_cd.h +1525 -0
  112. data/ext/rb_iup.h +2446 -0
  113. data/ext/rb_iup_pplot.h +129 -0
  114. data/ext/rb_iupcb.h +13 -0
  115. data/ext/rb_iupcbox.h +40 -0
  116. data/ext/rb_iupcells.h +15 -0
  117. data/ext/rb_iupcolorbar.h +17 -0
  118. data/ext/rb_iupcompat.h +237 -0
  119. data/ext/rb_iupcontrols.h +28 -0
  120. data/ext/rb_iupdef.h +3 -0
  121. data/ext/rb_iupdial.h +24 -0
  122. data/ext/rb_iupgauge.h +15 -0
  123. data/ext/rb_iupgc.h +18 -0
  124. data/ext/rb_iupgetparam.h +72 -0
  125. data/ext/rb_iupgl.h +58 -0
  126. data/ext/rb_iupim.h +25 -0
  127. data/ext/rb_iupmask.h +189 -0
  128. data/ext/rb_iupmatrix.h +80 -0
  129. data/ext/rb_iupole.h +24 -0
  130. data/ext/rb_iupsbox.h +23 -0
  131. data/ext/rb_iupspeech.h +25 -0
  132. data/ext/rb_iupspin.h +29 -0
  133. data/ext/rb_iuptabs.h +29 -0
  134. data/ext/rb_iuptree.h +94 -0
  135. data/ext/rb_iupval.h +24 -0
  136. data/lib/README +1 -0
  137. data/lib/iup.so +0 -0
  138. metadata +187 -0
@@ -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
+
@@ -0,0 +1,41 @@
1
+ require 'rubygems'
2
+ require "iup"
3
+
4
+ list_multiple_cb = lambda do |hi,t,i,v|
5
+ message = "Item #{i} - #{t} - #{v == 0 ? 'deselected' : 'selected'}"
6
+ Iup.Message("Competed in", message)
7
+
8
+ Iup::DEFAULT
9
+ end
10
+
11
+ list = Iup.List("list_act")
12
+ list.attr = "1=Gold, 2=Silver, 3=Bronze, 4=None,"+
13
+ "VALUE=4, SIZE=EIGHTHxEIGHTH"
14
+
15
+ frm_medal = Iup.Frame(list)
16
+ frm_medal.title = "Best medal"
17
+
18
+ list_multiple = Iup.List()
19
+
20
+ list_multiple.attr = "1=\"100m dash\", 2=\"Long jump\", 3=\"Javelin throw\", 4=\"110m hurdlers\", 5=\"Hammer throw\",6=\"High jump\","+
21
+ "MULTIPLE=YES, VALUE=\"+--+--\", SIZE=EIGHTHxEIGHTH"
22
+
23
+ list_multiple.action = list_multiple_cb
24
+
25
+ frm_sport = Iup.Frame(list_multiple)
26
+ frm_sport.title = "Competed in"
27
+
28
+ list_dropdown = Iup.List()
29
+ list_dropdown.attr = "1=\"Less than US$ 1000\", 2=\"US$ 2000\", 3=\"US$ 5000\", 4=\"US$ 10000\", 5=\"US$ 20000\", 6=\"US$ 50000\", 7=\"More than US$ 100000\","+
30
+ "DROPDOWN=YES, VISIBLE_ITEMS=5"
31
+
32
+ frm_prize = Iup.Frame(list_dropdown)
33
+ frm_prize.title = "Prizes won"
34
+
35
+ dlg = Iup.Dialog(Iup.Hbox([frm_medal, frm_sport, frm_prize]))
36
+ dlg.title = "IupList Example"
37
+ dlg.ShowXY(Iup::CENTER, Iup::CENTER)
38
+
39
+ Iup.MainLoop()
40
+ dlg.Destroy()
41
+
@@ -0,0 +1,125 @@
1
+ require 'rubygems'
2
+
3
+ require 'iup'
4
+
5
+ list_cb = lambda do |ih, t, i, v|
6
+ lbl = ih._label
7
+ lbl.title = t
8
+ Iup::DEFAULT
9
+ end
10
+
11
+ edit_cb = lambda do |ih, c, after|
12
+ lbl = ih._label
13
+ if(Iup.isxkey(c) && c != Iup::K_DEL)
14
+ return Iup::DEFAULT
15
+ end
16
+ lbl.title = after
17
+ Iup::DEFAULT
18
+ end
19
+
20
+ btclose_cb = lambda do |ih|
21
+ return Iup::CLOSE
22
+ end
23
+
24
+ bt_cb = lambda do |ih|
25
+ list = ih._list
26
+ Iup.Message("List", "Value=#{list.value}")
27
+ Iup::DEFAULT
28
+ end
29
+
30
+ getfocus_cb = lambda do |ih|
31
+ bt = ih._button
32
+ bt.bgcolor = "255 0 128"
33
+ Iup::DEFAULT
34
+ end
35
+
36
+ killfocus_cb = lambda do |ih|
37
+ bt = ih._button
38
+ bt.bgcolor = nil
39
+ Iup::DEFAULT
40
+ end
41
+
42
+ bt1 = Iup.Button("Drop+Edit")
43
+ bt1.action = bt_cb
44
+ bt2 = Iup.Button("Drop")
45
+ bt2.action = bt_cb
46
+ bt3 = Iup.Button("List+Edit")
47
+ bt3.action = bt_cb
48
+ bt4 = Iup.Button("List")
49
+ bt4.action = bt_cb
50
+
51
+ list1 = Iup.List()
52
+ list1.action = list_cb
53
+ list2 = Iup.List()
54
+ list2.action = list_cb
55
+ list3 = Iup.List()
56
+ list3.action = list_cb
57
+ list4 = Iup.List()
58
+ list4.action = list_cb
59
+
60
+ list1.attr = "1=\"US$ 1000\", 2=\"US$ 2000\", 3=\"US$ 30000000\", 4=\"US$ 4000\", 5=\"US$ 5000\", 6=\"US$ 6000\", 7=\"US$ 7000\","+
61
+ "EXPAND=HORIZONTAL, EDITBOX=YES, DROPDOWN=YES, VISIBLE_ITEMS=5"
62
+ list2.attr = "1=\"R$ 1000\", 2=\"R$ 2000\", 3=\"R$ 3000\", 4=\"R$ 4000\", 5=\"R$ 5000\", 6=\"R$ 6000\", 7=\"R$ 7000\","+
63
+ "EXPAND=HORIZONTAL, DROPDOWN=YES, VISIBLE_ITEMS=5"
64
+ list3.attr = "1=\"Char A\", 2=\"Char B\", 3=\"Char CCCCC\", 4=\"Char D\", 5=\"Char F\", 6=\"Char G\", 7=\"Char H\","+
65
+ "EXPAND=YES, EDITBOX=YES"
66
+ list4.attr = "1=\"Number 1\", 2=\"Number 2\", 3=\"Number 3\", 4=\"Number 4\", 5=\"Number 5\", 6=\"Number 6\", 7=\"Number 7\","+
67
+ "EXPAND=YES"
68
+
69
+ bt1._list = list1
70
+ bt2._list = list2
71
+ bt3._list = list3
72
+ bt4._list = list4
73
+
74
+ list1._button = bt1
75
+ list2._button = bt2
76
+ list3._button = bt3
77
+ list4._button = bt4
78
+
79
+ bt1.bgcolor = "192 192 192"
80
+ bt2.bgcolor = "192 192 192"
81
+ bt3.bgcolor = "192 192 192"
82
+ bt4.bgcolor = "192 192 192"
83
+
84
+ list1.getfocus_cb = getfocus_cb
85
+ list1.killfocus_cb = killfocus_cb
86
+ list2.getfocus_cb = getfocus_cb
87
+ list2.killfocus_cb = killfocus_cb
88
+ list3.getfocus_cb = getfocus_cb
89
+ list3.killfocus_cb = killfocus_cb
90
+ list4.getfocus_cb = getfocus_cb
91
+ list4.killfocus_cb = killfocus_cb
92
+
93
+ list1.list_edit_cb = edit_cb
94
+ list3.list_edit_cb = edit_cb
95
+
96
+ # list3.readonly = "YES"
97
+
98
+ box1 = Iup.Vbox([list1, bt1])
99
+ box2 = Iup.Vbox([list2, bt2])
100
+ box3 = Iup.Vbox([list3, bt3])
101
+ box4 = Iup.Vbox([list4, bt4])
102
+
103
+ lbl = Iup.Label("")
104
+ lbl.expand = "HORIZONTAL"
105
+
106
+ btok = Iup.Button(:title=>"OK",:action=>btclose_cb)
107
+
108
+ btcancel = Iup.Button(:title=>"Cancel",:action=>btclose_cb)
109
+
110
+ btok._list1 = list1
111
+ btok._list2 = list2
112
+ btok._list3 = list3
113
+ btok._list4 = list4
114
+
115
+ dlg = Iup.Dialog(Iup.Vbox([Iup.Hbox([box1, box2, box3, box4]), lbl, btok, btcancel]),:attr=>"MARGIN=10x10, GAP=10")
116
+ dlg.title = "IupList Example"
117
+ dlg._label = lbl
118
+ dlg.defaultenter = btok
119
+ dlg.defaultesc = btcancel
120
+
121
+ dlg.ShowXY(Iup::CENTER, Iup::CENTER)
122
+
123
+ Iup.MainLoop()
124
+ dlg.Destroy()
125
+
@@ -0,0 +1,32 @@
1
+ require 'rubygems'
2
+ require 'iup'
3
+
4
+ exit_cb = lambda do |ih|
5
+ Iup::CLOSE
6
+ end
7
+
8
+ item_open = Iup.Item("&Open")
9
+
10
+ item_save = Iup.Item("&Save")
11
+
12
+ item_undo = Iup.Item("&Undo")
13
+ item_undo.active = "NO"
14
+
15
+ item_exit = Iup.Item("E&xit")
16
+ item_exit.action = exit_cb
17
+
18
+ file_menu = Iup.Menu([item_open,
19
+ item_save,
20
+ Iup.Separator(),
21
+ item_undo,
22
+ item_exit])
23
+
24
+ sub1_menu = Iup.Submenu("&File", file_menu)
25
+
26
+ menu = Iup.Menu([sub1_menu])
27
+ dg = Iup.Dialog(Iup.Canvas(""))
28
+ dg.menu = menu
29
+
30
+ dg.Show()
31
+ Iup.MainLoop()
32
+ dg.Destroy()
@@ -0,0 +1,24 @@
1
+ require 'rubygems'
2
+
3
+ require 'iup'
4
+
5
+ mlaction = lambda do |ih,c,after|
6
+ if(c==Iup::K_DEL)
7
+ return Iup::IGNORE
8
+ else
9
+ return Iup::DEFAULT
10
+ end
11
+ end
12
+
13
+ ml = Iup.MultiLine(:action=>mlaction)
14
+ ml.expand = "YES"
15
+ ml.value = "I ignore the DEL key!"
16
+ ml.border = "YES"
17
+
18
+ dlg = Iup.Dialog(ml)
19
+ dlg.title = "IupMultiline"
20
+ dlg.size = "QUARTERxQUARTER"
21
+
22
+ dlg.Show()
23
+ Iup.MainLoop()
24
+ dlg.Destroy()
@@ -0,0 +1,156 @@
1
+ require 'rubygems'
2
+
3
+ require 'iup'
4
+
5
+
6
+
7
+ # Creates a multiline, a text and a list*/
8
+ mltline = Iup.MultiLine()
9
+ text = Iup.Text()
10
+ list = Iup.List()
11
+
12
+ # Turns on multiline expand ans text horizontal expand */
13
+ mltline.expand = "YES"
14
+ text.expand = "HORIZONTAL"
15
+
16
+ # Sets list items and dropdown */
17
+ list.attr = "1 = SET, 2 = GET, DROPDOWN = YES"
18
+
19
+
20
+ set_attribute = lambda do |attribute|
21
+ mltline[attribute] = text.value
22
+
23
+ string_message = "Attribute #{attribute} set with value #{text.value}"
24
+ Iup.Message("Set attribute", string_message)
25
+ Iup::DEFAULT
26
+ end
27
+
28
+ get_attribute = lambda do |attribute|
29
+ text.value = mltline[attribute]
30
+
31
+ string_message = "Attribute #{attribute} get with value #{text.value}"
32
+ Iup.Message("Get attribute", string_message)
33
+ Iup::DEFAULT
34
+ end
35
+
36
+ btn_append_cb = lambda do |ih|
37
+ if(list.value == '1')
38
+ set_attribute.call(Iup::APPEND)
39
+ else
40
+ get_attribute.call(Iup::APPEND)
41
+ end
42
+
43
+ Iup::DEFAULT
44
+ end
45
+
46
+ btn_insert_cb = lambda do |ih|
47
+ if(list.value == '1')
48
+ set_attribute.call(Iup::INSERT)
49
+ else
50
+ get_attribute.call(Iup::INSERT)
51
+ end
52
+
53
+ Iup::DEFAULT
54
+ end
55
+
56
+ btn_border_cb = lambda do |ih|
57
+ if(list.value == '1')
58
+ set_attribute.call(Iup::BORDER)
59
+ else
60
+ get_attribute.call(Iup::BORDER)
61
+ end
62
+ Iup::DEFAULT
63
+ end
64
+
65
+ btn_caret_cb = lambda do |ih|
66
+ if(list.value == '1')
67
+ set_attribute.call(Iup::CARET)
68
+ else
69
+ get_attribute.call(Iup::CARET)
70
+ end
71
+ Iup::DEFAULT
72
+ end
73
+
74
+ btn_readonly_cb = lambda do |ih|
75
+ if(list.value == '1')
76
+ set_attribute.call(Iup::READONLY)
77
+ else
78
+ get_attribute.call(Iup::READONLY)
79
+ end
80
+ Iup::DEFAULT
81
+ end
82
+
83
+ btn_selection_cb = lambda do |ih|
84
+ if(list.value == '1')
85
+ set_attribute.call(Iup::SELECTION)
86
+ else
87
+ get_attribute.call(Iup::SELECTION)
88
+ end
89
+ Iup::DEFAULT
90
+ end
91
+
92
+ btn_selectedtext_cb = lambda do |ih|
93
+ if(list.value == '1')
94
+ set_attribute.call(Iup::SELECTEDTEXT)
95
+ else
96
+ get_attribute.call(Iup::SELECTEDTEXT)
97
+ end
98
+ Iup::DEFAULT
99
+ end
100
+
101
+ btn_nc_cb = lambda do |ih|
102
+ if(list.value == '1')
103
+ set_attribute.call(Iup::NC)
104
+ else
105
+ get_attribute.call(Iup::NC)
106
+ end
107
+ Iup::DEFAULT
108
+ end
109
+
110
+ btn_value_cb = lambda do |ih|
111
+ if(list.value == '1')
112
+ set_attribute.call(Iup::VALUE)
113
+ else
114
+ get_attribute.call(Iup::VALUE)
115
+ end
116
+ Iup::DEFAULT
117
+ end
118
+
119
+ # Creates buttons */
120
+ btn_append = Iup.Button("Append")
121
+ btn_insert = Iup.Button("Insert")
122
+ btn_border = Iup.Button("Border")
123
+ btn_caret = Iup.Button("Caret")
124
+ btn_readonly = Iup.Button("Read only")
125
+ btn_selection = Iup.Button("Selection")
126
+ btn_selectedtext = Iup.Button("Selected Text")
127
+ btn_nc = Iup.Button("Number of characters")
128
+ btn_value = Iup.Button("Value")
129
+
130
+ # Registers callbacks */
131
+ btn_append.action = btn_append_cb
132
+ btn_insert.action = btn_insert_cb
133
+ btn_border.action = btn_border_cb
134
+ btn_caret.action = btn_caret_cb
135
+ btn_readonly.action = btn_readonly_cb
136
+ btn_selection.action = btn_selection_cb
137
+ btn_selectedtext.action = btn_selectedtext_cb
138
+ btn_nc.action = btn_nc_cb
139
+ btn_value.action = btn_value_cb
140
+
141
+ # Creates dialog */
142
+ dlg = Iup.Dialog(Iup.Vbox([mltline,
143
+ Iup.Hbox([text, list]),
144
+ Iup.Hbox([btn_append, btn_insert, btn_border, btn_caret, btn_readonly, btn_selection]),
145
+ Iup.Hbox([btn_selectedtext, btn_nc, btn_value])]))
146
+
147
+ # Sets title and size of the dialog */
148
+ dlg.attr = "TITLE=\"Iup.MultiLine Example\", SIZE=HALFxQUARTER"
149
+
150
+ # Shows dialog in the center of the screen */
151
+ dlg.ShowXY(Iup::CENTER, Iup::CENTER)
152
+
153
+ # Initializes IUP main loop */
154
+ Iup.MainLoop()
155
+
156
+ dlg.Destroy()
@@ -0,0 +1,32 @@
1
+ require 'rubygems'
2
+
3
+ require 'iup'
4
+
5
+ male = Iup.Toggle("Male")
6
+ female = Iup.Toggle("Female")
7
+
8
+ exclusive = Iup.Radio(
9
+ Iup.Vbox([
10
+ male,
11
+ female])
12
+ )
13
+ exclusive.value = female
14
+ exclusive.tip = "Two state button - Exclusive - RADIO"
15
+
16
+ frame = Iup.Frame(
17
+ exclusive
18
+ )
19
+ frame.title = "Gender"
20
+
21
+ dialog = Iup.Dialog(
22
+ Iup.Hbox([
23
+ Iup.Fill(),
24
+ frame,
25
+ Iup.Fill()])
26
+ )
27
+
28
+ dialog.attr = "SIZE=140, TITLE=IupRadio, RESIZE=NO, MINBOX=NO, MAXBOX=NO"
29
+
30
+ dialog.Show()
31
+ Iup.MainLoop()
32
+ dialog.Destroy()