ruby-iup 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (323) hide show
  1. data/Rakefile +97 -0
  2. data/doc/README +10 -0
  3. data/doc/build_install.txt +77 -0
  4. data/examples/README +16 -0
  5. data/examples/ctrl/cbox.rb +221 -0
  6. data/examples/ctrl/checkboard.rb +33 -0
  7. data/examples/ctrl/degrade.rb +73 -0
  8. data/examples/ctrl/example1.rb +53 -0
  9. data/examples/ctrl/example2.rb +39 -0
  10. data/examples/ctrl/iupcolorbar.rb +95 -0
  11. data/examples/ctrl/iupcolorbrowser.rb +45 -0
  12. data/examples/ctrl/iupdial.rb +117 -0
  13. data/examples/ctrl/iupgauge.rb +242 -0
  14. data/examples/ctrl/iupgetcolor.rb +8 -0
  15. data/examples/ctrl/iupgetparam.rb +62 -0
  16. data/examples/ctrl/iupglcanvas.rb +172 -0
  17. data/examples/ctrl/iupmask.rb +15 -0
  18. data/examples/ctrl/iupmatrix.rb +39 -0
  19. data/examples/ctrl/iupplot2.rb +603 -0
  20. data/examples/ctrl/iuptabs.rb +22 -0
  21. data/examples/ctrl/iuptree.rb +190 -0
  22. data/examples/ctrl/iupval.rb +71 -0
  23. data/examples/ctrl/numbering.rb +46 -0
  24. data/examples/ctrl/sample.rb +166 -0
  25. data/examples/dlg/iupalarm.rb +14 -0
  26. data/examples/dlg/iupfiledlg.rb +19 -0
  27. data/examples/dlg/iupgetfile.rb +19 -0
  28. data/examples/dlg/iuplistdialog.rb +26 -0
  29. data/examples/dlg/iupmessage.rb +5 -0
  30. data/examples/dlg/iupscanf.rb +17 -0
  31. data/examples/elem/iupbutton.rb +197 -0
  32. data/examples/elem/iupcanvas.rb +27 -0
  33. data/examples/elem/iupcanvas2.rb +113 -0
  34. data/examples/elem/iupcanvas3.rb +62 -0
  35. data/examples/elem/iupdialog.rb +71 -0
  36. data/examples/elem/iupdialog2.rb +25 -0
  37. data/examples/elem/iupfill.rb +51 -0
  38. data/examples/elem/iupframe.rb +25 -0
  39. data/examples/elem/iuphbox.rb +68 -0
  40. data/examples/elem/iupimage.rb +113 -0
  41. data/examples/elem/iupitem.rb +60 -0
  42. data/examples/elem/iuplabel.rb +57 -0
  43. data/examples/elem/iuplist.rb +41 -0
  44. data/examples/elem/iuplist2.rb +125 -0
  45. data/examples/elem/iupmenu.rb +32 -0
  46. data/examples/elem/iupmultiline.rb +24 -0
  47. data/examples/elem/iupmultiline2.rb +156 -0
  48. data/examples/elem/iupradio.rb +32 -0
  49. data/examples/elem/iupseparator.rb +81 -0
  50. data/examples/elem/iupsubmenu.rb +85 -0
  51. data/examples/elem/iuptext.rb +61 -0
  52. data/examples/elem/iuptimer.rb +36 -0
  53. data/examples/elem/iuptoggle.rb +110 -0
  54. data/examples/elem/iupvbox.rb +87 -0
  55. data/examples/elem/iupzbox.rb +60 -0
  56. data/examples/elem/mdisample.rb +376 -0
  57. data/examples/elem/progressbar.rb +294 -0
  58. data/examples/elem/scrollbar.rb +66 -0
  59. data/examples/elem/tray.rb +90 -0
  60. data/examples/func/iupgetattribute.rb +32 -0
  61. data/examples/func/iupidle.rb +48 -0
  62. data/ext/extconf.rb +27 -0
  63. data/ext/iup-linux/include/cd.h +494 -0
  64. data/ext/iup-linux/include/cd_canvas.hpp +358 -0
  65. data/ext/iup-linux/include/cd_old.h +158 -0
  66. data/ext/iup-linux/include/cd_private.h +362 -0
  67. data/ext/iup-linux/include/cdcgm.h +34 -0
  68. data/ext/iup-linux/include/cdclipbd.h +22 -0
  69. data/ext/iup-linux/include/cddbuf.h +23 -0
  70. data/ext/iup-linux/include/cddebug.h +24 -0
  71. data/ext/iup-linux/include/cddgn.h +23 -0
  72. data/ext/iup-linux/include/cddxf.h +22 -0
  73. data/ext/iup-linux/include/cdemf.h +22 -0
  74. data/ext/iup-linux/include/cdgdiplus.h +29 -0
  75. data/ext/iup-linux/include/cdimage.h +23 -0
  76. data/ext/iup-linux/include/cdirgb.h +30 -0
  77. data/ext/iup-linux/include/cdiup.h +22 -0
  78. data/ext/iup-linux/include/cdlua.h +39 -0
  79. data/ext/iup-linux/include/cdlua3_private.h +120 -0
  80. data/ext/iup-linux/include/cdlua5_private.h +141 -0
  81. data/ext/iup-linux/include/cdluaim.h +24 -0
  82. data/ext/iup-linux/include/cdluaiup.h +27 -0
  83. data/ext/iup-linux/include/cdluapdf.h +27 -0
  84. data/ext/iup-linux/include/cdmf.h +24 -0
  85. data/ext/iup-linux/include/cdmf_private.h +32 -0
  86. data/ext/iup-linux/include/cdnative.h +26 -0
  87. data/ext/iup-linux/include/cdpdf.h +38 -0
  88. data/ext/iup-linux/include/cdpicture.h +22 -0
  89. data/ext/iup-linux/include/cdprint.h +23 -0
  90. data/ext/iup-linux/include/cdps.h +37 -0
  91. data/ext/iup-linux/include/cdwmf.h +22 -0
  92. data/ext/iup-linux/include/im.h +282 -0
  93. data/ext/iup-linux/include/im_attrib.h +116 -0
  94. data/ext/iup-linux/include/im_attrib_flat.h +39 -0
  95. data/ext/iup-linux/include/im_binfile.h +214 -0
  96. data/ext/iup-linux/include/im_capture.h +365 -0
  97. data/ext/iup-linux/include/im_color.h +465 -0
  98. data/ext/iup-linux/include/im_colorhsi.h +61 -0
  99. data/ext/iup-linux/include/im_complex.h +160 -0
  100. data/ext/iup-linux/include/im_convert.h +127 -0
  101. data/ext/iup-linux/include/im_counter.h +69 -0
  102. data/ext/iup-linux/include/im_dib.h +195 -0
  103. data/ext/iup-linux/include/im_file.h +111 -0
  104. data/ext/iup-linux/include/im_format.h +79 -0
  105. data/ext/iup-linux/include/im_format_all.h +576 -0
  106. data/ext/iup-linux/include/im_format_avi.h +87 -0
  107. data/ext/iup-linux/include/im_format_ecw.h +93 -0
  108. data/ext/iup-linux/include/im_format_jp2.h +78 -0
  109. data/ext/iup-linux/include/im_format_raw.h +64 -0
  110. data/ext/iup-linux/include/im_format_wmv.h +100 -0
  111. data/ext/iup-linux/include/im_image.h +403 -0
  112. data/ext/iup-linux/include/im_kernel.h +315 -0
  113. data/ext/iup-linux/include/im_lib.h +191 -0
  114. data/ext/iup-linux/include/im_math.h +368 -0
  115. data/ext/iup-linux/include/im_math_op.h +219 -0
  116. data/ext/iup-linux/include/im_palette.h +172 -0
  117. data/ext/iup-linux/include/im_plus.h +73 -0
  118. data/ext/iup-linux/include/im_process.h +35 -0
  119. data/ext/iup-linux/include/im_process_ana.h +221 -0
  120. data/ext/iup-linux/include/im_process_glo.h +170 -0
  121. data/ext/iup-linux/include/im_process_loc.h +577 -0
  122. data/ext/iup-linux/include/im_process_pon.h +712 -0
  123. data/ext/iup-linux/include/im_raw.h +34 -0
  124. data/ext/iup-linux/include/im_util.h +277 -0
  125. data/ext/iup-linux/include/imlua.h +83 -0
  126. data/ext/iup-linux/include/iup.h +255 -0
  127. data/ext/iup-linux/include/iup_pplot.h +40 -0
  128. data/ext/iup-linux/include/iupcb.h +25 -0
  129. data/ext/iup-linux/include/iupcbox.h +23 -0
  130. data/ext/iup-linux/include/iupcbs.h +42 -0
  131. data/ext/iup-linux/include/iupcells.h +130 -0
  132. data/ext/iup-linux/include/iupcolorbar.h +126 -0
  133. data/ext/iup-linux/include/iupcompat.h +62 -0
  134. data/ext/iup-linux/include/iupcontrols.h +40 -0
  135. data/ext/iup-linux/include/iupcpi.h +76 -0
  136. data/ext/iup-linux/include/iupdef.h +520 -0
  137. data/ext/iup-linux/include/iupdial.h +64 -0
  138. data/ext/iup-linux/include/iupgauge.h +57 -0
  139. data/ext/iup-linux/include/iupgc.h +20 -0
  140. data/ext/iup-linux/include/iupgetparam.h +27 -0
  141. data/ext/iup-linux/include/iupgl.h +101 -0
  142. data/ext/iup-linux/include/iupim.h +21 -0
  143. data/ext/iup-linux/include/iupkey.h +290 -0
  144. data/ext/iup-linux/include/iuplua.h +41 -0
  145. data/ext/iup-linux/include/iuplua_pplot.h +26 -0
  146. data/ext/iup-linux/include/iupluacontrols.h +27 -0
  147. data/ext/iup-linux/include/iupluagl.h +26 -0
  148. data/ext/iup-linux/include/iupluaim.h +26 -0
  149. data/ext/iup-linux/include/iupluaole.h +26 -0
  150. data/ext/iup-linux/include/iupmask.h +52 -0
  151. data/ext/iup-linux/include/iupmatrix.h +69 -0
  152. data/ext/iup-linux/include/iupole.h +24 -0
  153. data/ext/iup-linux/include/iupsbox.h +20 -0
  154. data/ext/iup-linux/include/iupspeech.h +23 -0
  155. data/ext/iup-linux/include/iupspin.h +21 -0
  156. data/ext/iup-linux/include/iuptabs.h +79 -0
  157. data/ext/iup-linux/include/iuptree.h +93 -0
  158. data/ext/iup-linux/include/iupval.h +46 -0
  159. data/ext/iup-linux/include/lauxlib.h +174 -0
  160. data/ext/iup-linux/include/lua.h +388 -0
  161. data/ext/iup-linux/include/lua.hpp +9 -0
  162. data/ext/iup-linux/include/luaconf.h +763 -0
  163. data/ext/iup-linux/include/lualib.h +53 -0
  164. data/ext/iup-linux/include/old_im.h +59 -0
  165. data/ext/iup-linux/include/wd.h +78 -0
  166. data/ext/iup-linux/include/wd_old.h +85 -0
  167. data/ext/iup-linux/libcd.so +0 -0
  168. data/ext/iup-linux/libcdcontextplus.so +0 -0
  169. data/ext/iup-linux/libcdluacontextplus51.so +0 -0
  170. data/ext/iup-linux/libcdpdf.so +0 -0
  171. data/ext/iup-linux/libfreetype.so +0 -0
  172. data/ext/iup-linux/libim.so +0 -0
  173. data/ext/iup-linux/libim_fftw.so +0 -0
  174. data/ext/iup-linux/libim_jp2.so +0 -0
  175. data/ext/iup-linux/libim_process.so +0 -0
  176. data/ext/iup-linux/libiup.so +0 -0
  177. data/ext/iup-linux/libiup_pplot.so +0 -0
  178. data/ext/iup-linux/libiupcd.so +0 -0
  179. data/ext/iup-linux/libiupcontrols.so +0 -0
  180. data/ext/iup-linux/libiupgl.so +0 -0
  181. data/ext/iup-linux/libiupim.so +0 -0
  182. data/ext/iup-linux/libiupimglib.so +0 -0
  183. data/ext/iup-linux/libpdflib.so +0 -0
  184. data/ext/iup-win32/cd.dll +0 -0
  185. data/ext/iup-win32/cd.lib +0 -0
  186. data/ext/iup-win32/cdcontextplus.dll +0 -0
  187. data/ext/iup-win32/cdcontextplus.lib +0 -0
  188. data/ext/iup-win32/cdlua51.lib +0 -0
  189. data/ext/iup-win32/cdluacontextplus51.lib +0 -0
  190. data/ext/iup-win32/cdluaim51.lib +0 -0
  191. data/ext/iup-win32/cdluapdf51.lib +0 -0
  192. data/ext/iup-win32/cdpdf.dll +0 -0
  193. data/ext/iup-win32/cdpdf.lib +0 -0
  194. data/ext/iup-win32/freetype6.dll +0 -0
  195. data/ext/iup-win32/freetype6.lib +0 -0
  196. data/ext/iup-win32/im.dll +0 -0
  197. data/ext/iup-win32/im_avi.dll +0 -0
  198. data/ext/iup-win32/im_capture.dll +0 -0
  199. data/ext/iup-win32/im_ecw.dll +0 -0
  200. data/ext/iup-win32/im_fftw.dll +0 -0
  201. data/ext/iup-win32/im_jp2.dll +0 -0
  202. data/ext/iup-win32/im_process.dll +0 -0
  203. data/ext/iup-win32/im_wmv.dll +0 -0
  204. data/ext/iup-win32/include/cd.h +494 -0
  205. data/ext/iup-win32/include/cd_canvas.hpp +358 -0
  206. data/ext/iup-win32/include/cd_old.h +158 -0
  207. data/ext/iup-win32/include/cd_private.h +362 -0
  208. data/ext/iup-win32/include/cdcgm.h +34 -0
  209. data/ext/iup-win32/include/cdclipbd.h +22 -0
  210. data/ext/iup-win32/include/cddbuf.h +23 -0
  211. data/ext/iup-win32/include/cddebug.h +24 -0
  212. data/ext/iup-win32/include/cddgn.h +23 -0
  213. data/ext/iup-win32/include/cddxf.h +22 -0
  214. data/ext/iup-win32/include/cdemf.h +22 -0
  215. data/ext/iup-win32/include/cdgdiplus.h +29 -0
  216. data/ext/iup-win32/include/cdimage.h +23 -0
  217. data/ext/iup-win32/include/cdirgb.h +30 -0
  218. data/ext/iup-win32/include/cdiup.h +22 -0
  219. data/ext/iup-win32/include/cdlua.h +39 -0
  220. data/ext/iup-win32/include/cdlua3_private.h +120 -0
  221. data/ext/iup-win32/include/cdlua5_private.h +141 -0
  222. data/ext/iup-win32/include/cdluaim.h +24 -0
  223. data/ext/iup-win32/include/cdluaiup.h +27 -0
  224. data/ext/iup-win32/include/cdluapdf.h +27 -0
  225. data/ext/iup-win32/include/cdmf.h +24 -0
  226. data/ext/iup-win32/include/cdmf_private.h +32 -0
  227. data/ext/iup-win32/include/cdnative.h +26 -0
  228. data/ext/iup-win32/include/cdpdf.h +38 -0
  229. data/ext/iup-win32/include/cdpicture.h +22 -0
  230. data/ext/iup-win32/include/cdprint.h +23 -0
  231. data/ext/iup-win32/include/cdps.h +37 -0
  232. data/ext/iup-win32/include/cdwmf.h +22 -0
  233. data/ext/iup-win32/include/iup.h +255 -0
  234. data/ext/iup-win32/include/iup_pplot.h +40 -0
  235. data/ext/iup-win32/include/iupcb.h +25 -0
  236. data/ext/iup-win32/include/iupcbox.h +23 -0
  237. data/ext/iup-win32/include/iupcbs.h +42 -0
  238. data/ext/iup-win32/include/iupcells.h +130 -0
  239. data/ext/iup-win32/include/iupcolorbar.h +126 -0
  240. data/ext/iup-win32/include/iupcompat.h +62 -0
  241. data/ext/iup-win32/include/iupcontrols.h +40 -0
  242. data/ext/iup-win32/include/iupcpi.h +76 -0
  243. data/ext/iup-win32/include/iupdef.h +520 -0
  244. data/ext/iup-win32/include/iupdial.h +64 -0
  245. data/ext/iup-win32/include/iupgauge.h +57 -0
  246. data/ext/iup-win32/include/iupgc.h +20 -0
  247. data/ext/iup-win32/include/iupgetparam.h +27 -0
  248. data/ext/iup-win32/include/iupgl.h +101 -0
  249. data/ext/iup-win32/include/iupim.h +21 -0
  250. data/ext/iup-win32/include/iupkey.h +290 -0
  251. data/ext/iup-win32/include/iuplua.h +41 -0
  252. data/ext/iup-win32/include/iuplua_pplot.h +26 -0
  253. data/ext/iup-win32/include/iupluacontrols.h +27 -0
  254. data/ext/iup-win32/include/iupluagl.h +26 -0
  255. data/ext/iup-win32/include/iupluaim.h +26 -0
  256. data/ext/iup-win32/include/iupluaole.h +26 -0
  257. data/ext/iup-win32/include/iupmask.h +52 -0
  258. data/ext/iup-win32/include/iupmatrix.h +69 -0
  259. data/ext/iup-win32/include/iupole.h +24 -0
  260. data/ext/iup-win32/include/iupsbox.h +20 -0
  261. data/ext/iup-win32/include/iupspeech.h +23 -0
  262. data/ext/iup-win32/include/iupspin.h +21 -0
  263. data/ext/iup-win32/include/iuptabs.h +79 -0
  264. data/ext/iup-win32/include/iuptree.h +93 -0
  265. data/ext/iup-win32/include/iupval.h +46 -0
  266. data/ext/iup-win32/include/wd.h +78 -0
  267. data/ext/iup-win32/include/wd_old.h +85 -0
  268. data/ext/iup-win32/iup.dll +0 -0
  269. data/ext/iup-win32/iup.lib +0 -0
  270. data/ext/iup-win32/iup_pplot.dll +0 -0
  271. data/ext/iup-win32/iup_pplot.lib +0 -0
  272. data/ext/iup-win32/iupcd.dll +0 -0
  273. data/ext/iup-win32/iupcd.lib +0 -0
  274. data/ext/iup-win32/iupcontrols.dll +0 -0
  275. data/ext/iup-win32/iupcontrols.lib +0 -0
  276. data/ext/iup-win32/iupgl.dll +0 -0
  277. data/ext/iup-win32/iupgl.lib +0 -0
  278. data/ext/iup-win32/iupim.dll +0 -0
  279. data/ext/iup-win32/iupim.lib +0 -0
  280. data/ext/iup-win32/iupimglib.dll +0 -0
  281. data/ext/iup-win32/iupimglib.lib +0 -0
  282. data/ext/iup-win32/iuplua51.lib +0 -0
  283. data/ext/iup-win32/iuplua_pplot51.lib +0 -0
  284. data/ext/iup-win32/iupluacd51.lib +0 -0
  285. data/ext/iup-win32/iupluacontrols51.lib +0 -0
  286. data/ext/iup-win32/iupluagl51.lib +0 -0
  287. data/ext/iup-win32/iupluaim51.lib +0 -0
  288. data/ext/iup-win32/iupluaimglib51.lib +0 -0
  289. data/ext/iup-win32/iupluaole51.lib +0 -0
  290. data/ext/iup-win32/iupole.dll +0 -0
  291. data/ext/iup-win32/iupole.lib +0 -0
  292. data/ext/iup-win32/iupstub.lib +0 -0
  293. data/ext/iup-win32/pdflib.dll +0 -0
  294. data/ext/iup-win32/pdflib.lib +0 -0
  295. data/ext/iup.c +1261 -0
  296. data/ext/mkrf_conf.rb +72 -0
  297. data/ext/rb_cd.h +1525 -0
  298. data/ext/rb_iup.h +2446 -0
  299. data/ext/rb_iup_pplot.h +129 -0
  300. data/ext/rb_iupcb.h +13 -0
  301. data/ext/rb_iupcbox.h +40 -0
  302. data/ext/rb_iupcells.h +15 -0
  303. data/ext/rb_iupcolorbar.h +17 -0
  304. data/ext/rb_iupcompat.h +237 -0
  305. data/ext/rb_iupcontrols.h +28 -0
  306. data/ext/rb_iupdef.h +3 -0
  307. data/ext/rb_iupdial.h +24 -0
  308. data/ext/rb_iupgauge.h +15 -0
  309. data/ext/rb_iupgc.h +18 -0
  310. data/ext/rb_iupgetparam.h +72 -0
  311. data/ext/rb_iupgl.h +58 -0
  312. data/ext/rb_iupim.h +25 -0
  313. data/ext/rb_iupmask.h +189 -0
  314. data/ext/rb_iupmatrix.h +80 -0
  315. data/ext/rb_iupole.h +24 -0
  316. data/ext/rb_iupsbox.h +23 -0
  317. data/ext/rb_iupspeech.h +25 -0
  318. data/ext/rb_iupspin.h +29 -0
  319. data/ext/rb_iuptabs.h +29 -0
  320. data/ext/rb_iuptree.h +94 -0
  321. data/ext/rb_iupval.h +24 -0
  322. data/lib/README +1 -0
  323. metadata +391 -0
@@ -0,0 +1,62 @@
1
+ require 'rubygems'
2
+ require 'iup'
3
+
4
+ need_redraw = nil
5
+ cdcanvas = nil
6
+
7
+
8
+ gauge = Iup.Gauge()
9
+ cv = Iup.Canvas()
10
+ bt = Iup.Button("Restart")
11
+ bt.size = "50x50"
12
+ bt.fgcolor = "255 255 255"
13
+ gauge.size = "200x15"
14
+ cv.size = "200x200"
15
+ dlg = Iup.Dialog(Iup.Vbox([cv, Iup.Hbox([gauge, bt])]),:title=>"Redraw test")
16
+
17
+ toggle_redraw = lambda do |ih|
18
+ need_redraw = 1 - need_redraw
19
+ Iup::DEFAULT
20
+ end
21
+
22
+ fake_redraw = lambda do |ih,posx,posy|
23
+ need_redraw = 1
24
+ Iup::DEFAULT
25
+ end
26
+
27
+ redraw = lambda do
28
+ if(need_redraw == 1)
29
+ need_redraw = 0
30
+ bt.fgcolor = "255 0 0"
31
+ Iup.Flush()
32
+
33
+ cdcanvas.CanvasActivate()
34
+ cdcanvas.CanvasForeground(Cd::BLUE)
35
+ cdcanvas.CanvasClear()
36
+
37
+ for i in 0 ... 300000
38
+ cdcanvas.CanvasBox(0, 300, 0, i/1000)
39
+ gauge.value = "%f" % (i/300000.0)
40
+
41
+ Iup.LoopStep()
42
+ end
43
+
44
+ bt.fgcolor = "255 255 255"
45
+ Iup.Flush()
46
+ end
47
+ Iup::DEFAULT
48
+ end
49
+
50
+
51
+ Iup.SetIdle(redraw)
52
+
53
+ dlg.Map()
54
+
55
+ cdcanvas = Cd.CreateCanvas(Cd.CD_IUP, cv)
56
+
57
+ cv.action = fake_redraw
58
+ bt.action = toggle_redraw
59
+
60
+ dlg.ShowXY(Iup::CENTER, Iup::CENTER)
61
+ Iup.MainLoop()
62
+ dlg.Destroy()
@@ -0,0 +1,71 @@
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
+ Iup.SetHandle("icon", icon)
54
+
55
+ # Creating dialog's content */
56
+ quit_bt = Iup.Button(:title=>"Quit",:action=>quit_cb)
57
+ Iup.SetHandle("quit", quit_bt)
58
+
59
+ # Creating dialog's menu */
60
+ options = Iup.Menu([Iup.Item(:title=>"Exit",:action=>quit_cb)])
61
+ submenu = Iup.Submenu("File", options)
62
+ menu = Iup.Menu([submenu])
63
+ Iup.SetHandle("menu", menu)
64
+
65
+ # Creating main dialog */
66
+ dialog = Iup.Dialog(Iup.Vbox([quit_bt]),:title=>"IupDialog",:menu=>"menu",:cursor=>"CROSS",:icon=>"icon",:defaultesc=>"quit")
67
+
68
+ dialog.ShowXY(Iup::CENTER, Iup::CENTER)
69
+ Iup.MainLoop()
70
+ dialog.Destroy()
71
+ icon.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()