ruby-iup 0.0.2 → 0.1.0

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 (478) 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 +68 -80
  6. data/doc/build_install.txt +9 -12
  7. data/examples/ctrl/cbox.rb +14 -15
  8. data/examples/ctrl/checkboard.rb +1 -1
  9. data/examples/ctrl/example1.rb +53 -53
  10. data/examples/ctrl/example2.rb +39 -39
  11. data/examples/ctrl/iupcolorbar.rb +95 -95
  12. data/examples/ctrl/iupcolorbrowser.rb +45 -45
  13. data/examples/ctrl/iupdial.rb +117 -117
  14. data/examples/ctrl/iupgetcolor.rb +7 -7
  15. data/examples/ctrl/iupgetparam.rb +62 -62
  16. data/examples/ctrl/iupglcanvas.rb +172 -172
  17. data/examples/ctrl/iupmask.rb +1 -3
  18. data/examples/ctrl/iupmatrix.rb +39 -39
  19. data/examples/ctrl/iupplot2.rb +2 -1
  20. data/examples/ctrl/iuptabs.rb +22 -22
  21. data/examples/ctrl/iuptree.rb +190 -190
  22. data/examples/ctrl/iupval.rb +71 -71
  23. data/examples/ctrl/numbering.rb +46 -46
  24. data/examples/ctrl/sample.rb +166 -166
  25. data/examples/dlg/iupfiledlg.rb +19 -19
  26. data/examples/dlg/iupgetfile.rb +19 -19
  27. data/examples/dlg/iuplistdialog.rb +26 -26
  28. data/examples/dlg/iupmessage.rb +5 -5
  29. data/examples/dlg/iupscanf.rb +17 -17
  30. data/examples/elem/iupdialog2.rb +25 -25
  31. data/examples/elem/iupfill.rb +51 -51
  32. data/examples/elem/iupframe.rb +25 -25
  33. data/examples/elem/iuphbox.rb +68 -68
  34. data/examples/elem/iupimage.rb +113 -113
  35. data/examples/elem/iupitem.rb +60 -60
  36. data/examples/elem/iuplabel.rb +57 -57
  37. data/examples/elem/iuplist.rb +41 -41
  38. data/examples/elem/iuplist2.rb +125 -125
  39. data/examples/elem/iupmenu.rb +32 -32
  40. data/examples/elem/iupmultiline.rb +24 -24
  41. data/examples/elem/iupmultiline2.rb +156 -156
  42. data/examples/elem/iupradio.rb +32 -32
  43. data/examples/elem/iupseparator.rb +81 -81
  44. data/examples/elem/iupsubmenu.rb +85 -85
  45. data/examples/elem/iuptext.rb +61 -61
  46. data/examples/elem/iuptimer.rb +36 -36
  47. data/examples/elem/iuptoggle.rb +110 -110
  48. data/examples/elem/iupvbox.rb +87 -87
  49. data/examples/elem/iupzbox.rb +60 -60
  50. data/examples/elem/mdisample.rb +377 -376
  51. data/examples/elem/scrollbar.rb +66 -66
  52. data/examples/elem/tray.rb +90 -90
  53. data/examples/func/iupgetattribute.rb +32 -32
  54. data/examples/func/iupidle.rb +48 -48
  55. data/ext/extconf.rb +62 -27
  56. data/ext/iup-linux/include/cd.h +9 -5
  57. data/ext/iup-linux/include/cd_private.h +13 -6
  58. data/ext/iup-linux/include/cdsvg.h +22 -0
  59. data/ext/iup-linux/include/im.h +287 -282
  60. data/ext/iup-linux/include/im_attrib.h +120 -116
  61. data/ext/iup-linux/include/im_attrib_flat.h +39 -39
  62. data/ext/iup-linux/include/im_binfile.h +224 -214
  63. data/ext/iup-linux/include/im_capture.h +365 -365
  64. data/ext/iup-linux/include/im_color.h +465 -465
  65. data/ext/iup-linux/include/im_colorhsi.h +56 -61
  66. data/ext/iup-linux/include/im_complex.h +180 -160
  67. data/ext/iup-linux/include/im_convert.h +142 -127
  68. data/ext/iup-linux/include/im_counter.h +69 -69
  69. data/ext/iup-linux/include/im_dib.h +195 -195
  70. data/ext/iup-linux/include/im_file.h +115 -111
  71. data/ext/iup-linux/include/im_format.h +97 -79
  72. data/ext/iup-linux/include/im_format_all.h +575 -576
  73. data/ext/iup-linux/include/im_format_avi.h +88 -87
  74. data/ext/iup-linux/include/im_format_ecw.h +93 -93
  75. data/ext/iup-linux/include/im_format_jp2.h +79 -78
  76. data/ext/iup-linux/include/im_format_raw.h +74 -64
  77. data/ext/iup-linux/include/im_format_wmv.h +101 -100
  78. data/ext/iup-linux/include/im_image.h +425 -403
  79. data/ext/iup-linux/include/im_kernel.h +315 -315
  80. data/ext/iup-linux/include/im_lib.h +191 -191
  81. data/ext/iup-linux/include/im_math.h +368 -368
  82. data/ext/iup-linux/include/im_math_op.h +214 -219
  83. data/ext/iup-linux/include/im_palette.h +172 -172
  84. data/ext/iup-linux/include/im_plus.h +73 -73
  85. data/ext/iup-linux/include/im_process.h +36 -35
  86. data/ext/iup-linux/include/im_process_ana.h +222 -221
  87. data/ext/iup-linux/include/im_process_glo.h +170 -170
  88. data/ext/iup-linux/include/im_process_loc.h +608 -577
  89. data/ext/iup-linux/include/im_process_pon.h +734 -712
  90. data/ext/iup-linux/include/im_raw.h +34 -34
  91. data/ext/iup-linux/include/im_util.h +277 -277
  92. data/ext/iup-linux/include/imlua.h +75 -83
  93. data/ext/iup-linux/include/iup.h +86 -40
  94. data/ext/iup-linux/include/iupcb.h +1 -25
  95. data/ext/iup-linux/include/iupcbox.h +1 -0
  96. data/ext/iup-linux/include/iupcbs.h +1 -1
  97. data/ext/iup-linux/include/iupcells.h +1 -130
  98. data/ext/iup-linux/include/iupcolorbar.h +1 -126
  99. data/ext/iup-linux/include/iupcontrols.h +26 -16
  100. data/ext/iup-linux/include/iupdef.h +205 -0
  101. data/ext/iup-linux/include/iupdial.h +1 -63
  102. data/ext/iup-linux/include/iupgauge.h +1 -57
  103. data/ext/iup-linux/include/iupgc.h +1 -0
  104. data/ext/iup-linux/include/iupgetparam.h +1 -27
  105. data/ext/iup-linux/include/iupgl.h +2 -7
  106. data/ext/iup-linux/include/iupim.h +7 -1
  107. data/ext/iup-linux/include/iupkey.h +4 -4
  108. data/ext/iup-linux/include/iupmask.h +2 -1
  109. data/ext/iup-linux/include/iupmatrix.h +1 -63
  110. data/ext/iup-linux/include/iupsbox.h +1 -0
  111. data/ext/iup-linux/include/iupspin.h +1 -21
  112. data/ext/iup-linux/include/iuptabs.h +1 -75
  113. data/ext/iup-linux/include/iuptree.h +1 -93
  114. data/ext/iup-linux/include/iupval.h +1 -46
  115. data/ext/iup-linux/include/old_im.h +59 -59
  116. data/ext/iup-linux/include/wd.h +5 -0
  117. data/ext/iup-linux/libcd.a +0 -0
  118. data/ext/iup-linux/libcdcontextplus.a +0 -0
  119. data/ext/iup-linux/libcdgdk.a +0 -0
  120. data/ext/iup-linux/libcdpdf.a +0 -0
  121. data/ext/iup-linux/libfreetype.a +0 -0
  122. data/ext/iup-linux/libim.a +0 -0
  123. data/ext/iup-linux/libim_fftw.a +0 -0
  124. data/ext/iup-linux/libim_jp2.a +0 -0
  125. data/ext/iup-linux/libim_process.a +0 -0
  126. data/ext/iup-linux/libiup.a +0 -0
  127. data/ext/iup-linux/libiup_pplot.a +0 -0
  128. data/ext/iup-linux/libiupcd.a +0 -0
  129. data/ext/iup-linux/libiupcontrols.a +0 -0
  130. data/ext/iup-linux/libiupgl.a +0 -0
  131. data/ext/iup-linux/libiupim.a +0 -0
  132. data/ext/iup-linux/libiupimglib.a +0 -0
  133. data/ext/iup-linux/libiupmot.a +0 -0
  134. data/ext/iup-linux/libpdflib.a +0 -0
  135. data/ext/{iup-win32 → iup-mingw32}/include/cd.h +9 -5
  136. data/ext/{iup-win32 → iup-mingw32}/include/cd_canvas.hpp +0 -0
  137. data/ext/{iup-win32 → iup-mingw32}/include/cd_old.h +0 -0
  138. data/ext/{iup-win32 → iup-mingw32}/include/cd_private.h +13 -6
  139. data/ext/{iup-win32 → iup-mingw32}/include/cdcgm.h +0 -0
  140. data/ext/{iup-win32 → iup-mingw32}/include/cdclipbd.h +0 -0
  141. data/ext/{iup-win32 → iup-mingw32}/include/cddbuf.h +0 -0
  142. data/ext/{iup-win32 → iup-mingw32}/include/cddebug.h +0 -0
  143. data/ext/{iup-win32 → iup-mingw32}/include/cddgn.h +0 -0
  144. data/ext/{iup-win32 → iup-mingw32}/include/cddxf.h +0 -0
  145. data/ext/{iup-win32 → iup-mingw32}/include/cdemf.h +0 -0
  146. data/ext/{iup-win32 → iup-mingw32}/include/cdgdiplus.h +0 -0
  147. data/ext/{iup-win32 → iup-mingw32}/include/cdimage.h +0 -0
  148. data/ext/{iup-win32 → iup-mingw32}/include/cdirgb.h +0 -0
  149. data/ext/{iup-win32 → iup-mingw32}/include/cdiup.h +0 -0
  150. data/ext/{iup-win32 → iup-mingw32}/include/cdlua.h +0 -0
  151. data/ext/{iup-win32 → iup-mingw32}/include/cdlua3_private.h +0 -0
  152. data/ext/{iup-win32 → iup-mingw32}/include/cdlua5_private.h +0 -0
  153. data/ext/{iup-win32 → iup-mingw32}/include/cdluaim.h +0 -0
  154. data/ext/{iup-win32 → iup-mingw32}/include/cdluaiup.h +0 -0
  155. data/ext/{iup-win32 → iup-mingw32}/include/cdluapdf.h +0 -0
  156. data/ext/{iup-win32 → iup-mingw32}/include/cdmf.h +0 -0
  157. data/ext/{iup-win32 → iup-mingw32}/include/cdmf_private.h +0 -0
  158. data/ext/{iup-win32 → iup-mingw32}/include/cdnative.h +0 -0
  159. data/ext/{iup-win32 → iup-mingw32}/include/cdpdf.h +0 -0
  160. data/ext/{iup-win32 → iup-mingw32}/include/cdpicture.h +0 -0
  161. data/ext/{iup-win32 → iup-mingw32}/include/cdprint.h +0 -0
  162. data/ext/{iup-win32 → iup-mingw32}/include/cdps.h +0 -0
  163. data/ext/iup-mingw32/include/cdsvg.h +22 -0
  164. data/ext/{iup-win32 → iup-mingw32}/include/cdwmf.h +0 -0
  165. data/ext/iup-mingw32/include/im.h +287 -0
  166. data/ext/iup-mingw32/include/im_attrib.h +120 -0
  167. data/ext/iup-mingw32/include/im_attrib_flat.h +39 -0
  168. data/ext/iup-mingw32/include/im_binfile.h +224 -0
  169. data/ext/iup-mingw32/include/im_capture.h +365 -0
  170. data/ext/iup-mingw32/include/im_color.h +465 -0
  171. data/ext/iup-mingw32/include/im_colorhsi.h +56 -0
  172. data/ext/iup-mingw32/include/im_complex.h +180 -0
  173. data/ext/iup-mingw32/include/im_convert.h +142 -0
  174. data/ext/iup-mingw32/include/im_counter.h +69 -0
  175. data/ext/iup-mingw32/include/im_dib.h +195 -0
  176. data/ext/iup-mingw32/include/im_file.h +115 -0
  177. data/ext/iup-mingw32/include/im_format.h +97 -0
  178. data/ext/iup-mingw32/include/im_format_all.h +575 -0
  179. data/ext/iup-mingw32/include/im_format_avi.h +88 -0
  180. data/ext/iup-mingw32/include/im_format_ecw.h +93 -0
  181. data/ext/iup-mingw32/include/im_format_jp2.h +79 -0
  182. data/ext/iup-mingw32/include/im_format_raw.h +74 -0
  183. data/ext/iup-mingw32/include/im_format_wmv.h +101 -0
  184. data/ext/iup-mingw32/include/im_image.h +425 -0
  185. data/ext/iup-mingw32/include/im_kernel.h +315 -0
  186. data/ext/iup-mingw32/include/im_lib.h +191 -0
  187. data/ext/iup-mingw32/include/im_math.h +368 -0
  188. data/ext/iup-mingw32/include/im_math_op.h +214 -0
  189. data/ext/iup-mingw32/include/im_palette.h +172 -0
  190. data/ext/iup-mingw32/include/im_plus.h +73 -0
  191. data/ext/iup-mingw32/include/im_process.h +36 -0
  192. data/ext/iup-mingw32/include/im_process_ana.h +222 -0
  193. data/ext/iup-mingw32/include/im_process_glo.h +170 -0
  194. data/ext/iup-mingw32/include/im_process_loc.h +608 -0
  195. data/ext/iup-mingw32/include/im_process_pon.h +734 -0
  196. data/ext/iup-mingw32/include/im_raw.h +34 -0
  197. data/ext/iup-mingw32/include/im_util.h +277 -0
  198. data/ext/iup-mingw32/include/imlua.h +75 -0
  199. data/ext/{iup-win32 → iup-mingw32}/include/iup.h +86 -40
  200. data/ext/{iup-win32 → iup-mingw32}/include/iup_pplot.h +0 -0
  201. data/ext/iup-mingw32/include/iupcb.h +1 -0
  202. data/ext/iup-mingw32/include/iupcbox.h +1 -0
  203. data/ext/{iup-win32 → iup-mingw32}/include/iupcbs.h +1 -1
  204. data/ext/iup-mingw32/include/iupcells.h +1 -0
  205. data/ext/iup-mingw32/include/iupcolorbar.h +1 -0
  206. data/ext/iup-mingw32/include/iupcontrols.h +46 -0
  207. data/ext/{iup-win32 → iup-mingw32}/include/iupdef.h +205 -0
  208. data/ext/iup-mingw32/include/iupdial.h +1 -0
  209. data/ext/iup-mingw32/include/iupgauge.h +1 -0
  210. data/ext/iup-mingw32/include/iupgc.h +1 -0
  211. data/ext/iup-mingw32/include/iupgetparam.h +1 -0
  212. data/ext/{iup-win32 → iup-mingw32}/include/iupgl.h +2 -7
  213. data/ext/{iup-win32 → iup-mingw32}/include/iupim.h +7 -1
  214. data/ext/{iup-win32 → iup-mingw32}/include/iupkey.h +4 -4
  215. data/ext/{iup-win32 → iup-mingw32}/include/iuplua.h +0 -0
  216. data/ext/{iup-win32 → iup-mingw32}/include/iuplua_pplot.h +0 -0
  217. data/ext/{iup-win32 → iup-mingw32}/include/iupluacontrols.h +0 -0
  218. data/ext/{iup-win32 → iup-mingw32}/include/iupluagl.h +0 -0
  219. data/ext/{iup-win32 → iup-mingw32}/include/iupluaim.h +0 -0
  220. data/ext/{iup-win32 → iup-mingw32}/include/iupluaole.h +0 -0
  221. data/ext/{iup-win32 → iup-mingw32}/include/iupmask.h +2 -1
  222. data/ext/iup-mingw32/include/iupmatrix.h +1 -0
  223. data/ext/{iup-win32 → iup-mingw32}/include/iupole.h +0 -0
  224. data/ext/iup-mingw32/include/iupsbox.h +1 -0
  225. data/ext/iup-mingw32/include/iupspin.h +1 -0
  226. data/ext/iup-mingw32/include/iuptabs.h +1 -0
  227. data/ext/iup-mingw32/include/iuptree.h +1 -0
  228. data/ext/iup-mingw32/include/iupval.h +1 -0
  229. data/ext/iup-mingw32/include/old_im.h +59 -0
  230. data/ext/{iup-win32 → iup-mingw32}/include/wd.h +5 -0
  231. data/ext/{iup-win32 → iup-mingw32}/include/wd_old.h +0 -0
  232. data/ext/iup-mingw32/libcd.a +0 -0
  233. data/ext/iup-mingw32/libcdpdf.a +0 -0
  234. data/ext/iup-mingw32/libfreetype6.a +0 -0
  235. data/ext/iup-mingw32/libim.a +0 -0
  236. data/ext/iup-mingw32/libim_avi.a +0 -0
  237. data/ext/iup-mingw32/libim_fftw.a +0 -0
  238. data/ext/iup-mingw32/libim_jp2.a +0 -0
  239. data/ext/iup-mingw32/libim_process.a +0 -0
  240. data/ext/iup-mingw32/libiup.a +0 -0
  241. data/ext/iup-mingw32/libiup_pplot.a +0 -0
  242. data/ext/iup-mingw32/libiupcd.a +0 -0
  243. data/ext/iup-mingw32/libiupcontrols.a +0 -0
  244. data/ext/iup-mingw32/libiupgl.a +0 -0
  245. data/ext/iup-mingw32/libiupim.a +0 -0
  246. data/ext/iup-mingw32/libiupimglib.a +0 -0
  247. data/ext/iup-mingw32/libiupole.a +0 -0
  248. data/ext/iup-mingw32/libpdflib.a +0 -0
  249. data/ext/iup-mswin32/cd.lib +0 -0
  250. data/ext/iup-mswin32/cdcontextplus.lib +0 -0
  251. data/ext/iup-mswin32/cdgdk.lib +0 -0
  252. data/ext/iup-mswin32/cdpdf.lib +0 -0
  253. data/ext/iup-mswin32/freetype6.lib +0 -0
  254. data/ext/iup-mswin32/im.lib +0 -0
  255. data/ext/iup-mswin32/im_avi.lib +0 -0
  256. data/ext/iup-mswin32/im_capture.lib +0 -0
  257. data/ext/iup-mswin32/im_fftw.lib +0 -0
  258. data/ext/iup-mswin32/im_jp2.lib +0 -0
  259. data/ext/iup-mswin32/im_process.lib +0 -0
  260. data/ext/iup-mswin32/im_wmv.lib +0 -0
  261. data/ext/iup-mswin32/include/cd.h +498 -0
  262. data/ext/iup-mswin32/include/cd_canvas.hpp +358 -0
  263. data/ext/iup-mswin32/include/cd_old.h +158 -0
  264. data/ext/iup-mswin32/include/cd_private.h +369 -0
  265. data/ext/iup-mswin32/include/cdcgm.h +34 -0
  266. data/ext/iup-mswin32/include/cdclipbd.h +22 -0
  267. data/ext/iup-mswin32/include/cddbuf.h +23 -0
  268. data/ext/iup-mswin32/include/cddebug.h +24 -0
  269. data/ext/iup-mswin32/include/cddgn.h +23 -0
  270. data/ext/iup-mswin32/include/cddxf.h +22 -0
  271. data/ext/iup-mswin32/include/cdemf.h +22 -0
  272. data/ext/iup-mswin32/include/cdgdiplus.h +29 -0
  273. data/ext/iup-mswin32/include/cdimage.h +23 -0
  274. data/ext/iup-mswin32/include/cdirgb.h +30 -0
  275. data/ext/iup-mswin32/include/cdiup.h +22 -0
  276. data/ext/iup-mswin32/include/cdlua.h +39 -0
  277. data/ext/iup-mswin32/include/cdlua3_private.h +120 -0
  278. data/ext/iup-mswin32/include/cdlua5_private.h +141 -0
  279. data/ext/iup-mswin32/include/cdluaim.h +24 -0
  280. data/ext/iup-mswin32/include/cdluaiup.h +27 -0
  281. data/ext/iup-mswin32/include/cdluapdf.h +27 -0
  282. data/ext/iup-mswin32/include/cdmf.h +24 -0
  283. data/ext/iup-mswin32/include/cdmf_private.h +32 -0
  284. data/ext/iup-mswin32/include/cdnative.h +26 -0
  285. data/ext/iup-mswin32/include/cdpdf.h +38 -0
  286. data/ext/iup-mswin32/include/cdpicture.h +22 -0
  287. data/ext/iup-mswin32/include/cdprint.h +23 -0
  288. data/ext/iup-mswin32/include/cdps.h +37 -0
  289. data/ext/iup-mswin32/include/cdsvg.h +22 -0
  290. data/ext/iup-mswin32/include/cdwmf.h +22 -0
  291. data/ext/iup-mswin32/include/im.h +287 -0
  292. data/ext/iup-mswin32/include/im_attrib.h +120 -0
  293. data/ext/iup-mswin32/include/im_attrib_flat.h +39 -0
  294. data/ext/iup-mswin32/include/im_binfile.h +224 -0
  295. data/ext/iup-mswin32/include/im_capture.h +365 -0
  296. data/ext/iup-mswin32/include/im_color.h +465 -0
  297. data/ext/iup-mswin32/include/im_colorhsi.h +56 -0
  298. data/ext/iup-mswin32/include/im_complex.h +180 -0
  299. data/ext/iup-mswin32/include/im_convert.h +142 -0
  300. data/ext/iup-mswin32/include/im_counter.h +69 -0
  301. data/ext/iup-mswin32/include/im_dib.h +195 -0
  302. data/ext/iup-mswin32/include/im_file.h +115 -0
  303. data/ext/iup-mswin32/include/im_format.h +97 -0
  304. data/ext/iup-mswin32/include/im_format_all.h +575 -0
  305. data/ext/iup-mswin32/include/im_format_avi.h +88 -0
  306. data/ext/iup-mswin32/include/im_format_ecw.h +93 -0
  307. data/ext/iup-mswin32/include/im_format_jp2.h +79 -0
  308. data/ext/iup-mswin32/include/im_format_raw.h +74 -0
  309. data/ext/iup-mswin32/include/im_format_wmv.h +101 -0
  310. data/ext/iup-mswin32/include/im_image.h +425 -0
  311. data/ext/iup-mswin32/include/im_kernel.h +315 -0
  312. data/ext/iup-mswin32/include/im_lib.h +191 -0
  313. data/ext/iup-mswin32/include/im_math.h +368 -0
  314. data/ext/iup-mswin32/include/im_math_op.h +214 -0
  315. data/ext/iup-mswin32/include/im_palette.h +172 -0
  316. data/ext/iup-mswin32/include/im_plus.h +73 -0
  317. data/ext/iup-mswin32/include/im_process.h +36 -0
  318. data/ext/iup-mswin32/include/im_process_ana.h +222 -0
  319. data/ext/iup-mswin32/include/im_process_glo.h +170 -0
  320. data/ext/iup-mswin32/include/im_process_loc.h +608 -0
  321. data/ext/iup-mswin32/include/im_process_pon.h +734 -0
  322. data/ext/iup-mswin32/include/im_raw.h +34 -0
  323. data/ext/iup-mswin32/include/im_util.h +277 -0
  324. data/ext/iup-mswin32/include/imlua.h +75 -0
  325. data/ext/iup-mswin32/include/iup.h +364 -0
  326. data/ext/iup-mswin32/include/iup_pplot.h +40 -0
  327. data/ext/iup-mswin32/include/iupcb.h +1 -0
  328. data/ext/iup-mswin32/include/iupcbox.h +1 -0
  329. data/ext/iup-mswin32/include/iupcbs.h +43 -0
  330. data/ext/iup-mswin32/include/iupcells.h +1 -0
  331. data/ext/iup-mswin32/include/iupcolorbar.h +1 -0
  332. data/ext/iup-mswin32/include/iupcontrols.h +46 -0
  333. data/ext/iup-mswin32/include/iupdef.h +725 -0
  334. data/ext/iup-mswin32/include/iupdial.h +1 -0
  335. data/ext/iup-mswin32/include/iupgauge.h +1 -0
  336. data/ext/iup-mswin32/include/iupgc.h +1 -0
  337. data/ext/iup-mswin32/include/iupgetparam.h +1 -0
  338. data/ext/iup-mswin32/include/iupgl.h +96 -0
  339. data/ext/iup-mswin32/include/iupim.h +27 -0
  340. data/ext/iup-mswin32/include/iupkey.h +457 -0
  341. data/ext/iup-mswin32/include/iuplua.h +41 -0
  342. data/ext/iup-mswin32/include/iuplua_pplot.h +26 -0
  343. data/ext/iup-mswin32/include/iupluacontrols.h +27 -0
  344. data/ext/iup-mswin32/include/iupluagl.h +26 -0
  345. data/ext/iup-mswin32/include/iupluaim.h +26 -0
  346. data/ext/iup-mswin32/include/iupluaole.h +26 -0
  347. data/ext/iup-mswin32/include/iupmask.h +41 -0
  348. data/ext/iup-mswin32/include/iupmatrix.h +1 -0
  349. data/ext/iup-mswin32/include/iupole.h +24 -0
  350. data/ext/iup-mswin32/include/iupsbox.h +1 -0
  351. data/ext/iup-mswin32/include/iupspin.h +1 -0
  352. data/ext/iup-mswin32/include/iuptabs.h +1 -0
  353. data/ext/iup-mswin32/include/iuptree.h +1 -0
  354. data/ext/iup-mswin32/include/iupval.h +1 -0
  355. data/ext/iup-mswin32/include/old_im.h +59 -0
  356. data/ext/iup-mswin32/include/wd.h +83 -0
  357. data/ext/iup-mswin32/include/wd_old.h +85 -0
  358. data/ext/iup-mswin32/iup.lib +0 -0
  359. data/ext/iup-mswin32/iup_pplot.lib +0 -0
  360. data/ext/iup-mswin32/iupcd.lib +0 -0
  361. data/ext/iup-mswin32/iupcontrols.lib +0 -0
  362. data/ext/iup-mswin32/iupgl.lib +0 -0
  363. data/ext/iup-mswin32/iupgtk.lib +0 -0
  364. data/ext/iup-mswin32/iupim.lib +0 -0
  365. data/ext/{iup-win32/iupimglib.dll → iup-mswin32/iupimglib.lib} +0 -0
  366. data/ext/iup-mswin32/iupole.lib +0 -0
  367. data/ext/iup-mswin32/pdflib.lib +0 -0
  368. data/ext/iup.c +6 -37
  369. data/ext/{rb_cd.h → rb_cd.c} +300 -302
  370. data/ext/rb_iup.c +2485 -0
  371. data/ext/rb_iup.h +400 -2475
  372. data/ext/{rb_iup_pplot.h → rb_iup_pplot.c} +21 -22
  373. data/ext/{rb_iupcb.h → rb_iupcb.c} +2 -3
  374. data/ext/{rb_iupcells.h → rb_iupcells.c} +5 -5
  375. data/ext/{rb_iupcolorbar.h → rb_iupcolorbar.c} +2 -3
  376. data/ext/{rb_iupcontrols.h → rb_iupcontrols.c} +1 -1
  377. data/ext/{rb_iupdial.h → rb_iupdial.c} +3 -4
  378. data/ext/{rb_iupgauge.h → rb_iupgauge.c} +2 -3
  379. data/ext/{rb_iupgc.h → rb_iupgc.c} +1 -1
  380. data/ext/{rb_iupgetparam.h → rb_iupgetparam.c} +12 -10
  381. data/ext/{rb_iupgl.h → rb_iupgl.c} +10 -10
  382. data/ext/{rb_iupim.h → rb_iupim.c} +6 -6
  383. data/ext/{rb_iupmatrix.h → rb_iupmatrix.c} +15 -16
  384. data/ext/{rb_iupole.h → rb_iupole.c} +4 -4
  385. data/ext/{rb_iupsbox.h → rb_iupsbox.c} +3 -3
  386. data/ext/{rb_iupspin.h → rb_iupspin.c} +4 -5
  387. data/ext/{rb_iuptabs.h → rb_iuptabs.c} +5 -6
  388. data/ext/{rb_iuptree.h → rb_iuptree.c} +20 -21
  389. data/ext/{rb_iupval.h → rb_iupval.c} +3 -4
  390. data/ruby-iup.gemspec +26 -0
  391. data/test/test_ruby_iup.rb +25 -0
  392. metadata +395 -270
  393. data/ext/iup-linux/include/lauxlib.h +0 -174
  394. data/ext/iup-linux/include/lua.h +0 -388
  395. data/ext/iup-linux/include/lua.hpp +0 -9
  396. data/ext/iup-linux/include/luaconf.h +0 -763
  397. data/ext/iup-linux/include/lualib.h +0 -53
  398. data/ext/iup-linux/libcd.so +0 -0
  399. data/ext/iup-linux/libcdcontextplus.so +0 -0
  400. data/ext/iup-linux/libcdpdf.so +0 -0
  401. data/ext/iup-linux/libfreetype.so +0 -0
  402. data/ext/iup-linux/libim.so +0 -0
  403. data/ext/iup-linux/libim_fftw.so +0 -0
  404. data/ext/iup-linux/libim_jp2.so +0 -0
  405. data/ext/iup-linux/libim_process.so +0 -0
  406. data/ext/iup-linux/libiup.so +0 -0
  407. data/ext/iup-linux/libiup_pplot.so +0 -0
  408. data/ext/iup-linux/libiupcd.so +0 -0
  409. data/ext/iup-linux/libiupcontrols.so +0 -0
  410. data/ext/iup-linux/libiupgl.so +0 -0
  411. data/ext/iup-linux/libiupim.so +0 -0
  412. data/ext/iup-linux/libiupimglib.so +0 -0
  413. data/ext/iup-linux/libiupmot.so +0 -0
  414. data/ext/iup-linux/libpdflib.so +0 -0
  415. data/ext/iup-win32/cd.dll +0 -0
  416. data/ext/iup-win32/cd.lib +0 -0
  417. data/ext/iup-win32/cdcontextplus.dll +0 -0
  418. data/ext/iup-win32/cdcontextplus.lib +0 -0
  419. data/ext/iup-win32/cdpdf.dll +0 -0
  420. data/ext/iup-win32/cdpdf.lib +0 -0
  421. data/ext/iup-win32/freetype6.dll +0 -0
  422. data/ext/iup-win32/freetype6.lib +0 -0
  423. data/ext/iup-win32/im.dll +0 -0
  424. data/ext/iup-win32/im.lib +0 -0
  425. data/ext/iup-win32/im_avi.dll +0 -0
  426. data/ext/iup-win32/im_avi.lib +0 -0
  427. data/ext/iup-win32/im_capture.dll +0 -0
  428. data/ext/iup-win32/im_capture.lib +0 -0
  429. data/ext/iup-win32/im_ecw.dll +0 -0
  430. data/ext/iup-win32/im_fftw.dll +0 -0
  431. data/ext/iup-win32/im_fftw.lib +0 -0
  432. data/ext/iup-win32/im_jp2.dll +0 -0
  433. data/ext/iup-win32/im_jp2.lib +0 -0
  434. data/ext/iup-win32/im_process.dll +0 -0
  435. data/ext/iup-win32/im_process.lib +0 -0
  436. data/ext/iup-win32/im_wmv.dll +0 -0
  437. data/ext/iup-win32/im_wmv.lib +0 -0
  438. data/ext/iup-win32/imlua_capture51.dll +0 -0
  439. data/ext/iup-win32/imlua_capture51.lib +0 -0
  440. data/ext/iup-win32/imlua_wmv51.dll +0 -0
  441. data/ext/iup-win32/imlua_wmv51.lib +0 -0
  442. data/ext/iup-win32/include/iupcb.h +0 -25
  443. data/ext/iup-win32/include/iupcells.h +0 -130
  444. data/ext/iup-win32/include/iupcolorbar.h +0 -126
  445. data/ext/iup-win32/include/iupcontrols.h +0 -36
  446. data/ext/iup-win32/include/iupdial.h +0 -63
  447. data/ext/iup-win32/include/iupgauge.h +0 -57
  448. data/ext/iup-win32/include/iupgetparam.h +0 -27
  449. data/ext/iup-win32/include/iupmatrix.h +0 -63
  450. data/ext/iup-win32/include/iupspin.h +0 -21
  451. data/ext/iup-win32/include/iuptabs.h +0 -75
  452. data/ext/iup-win32/include/iuptree.h +0 -93
  453. data/ext/iup-win32/include/iupval.h +0 -46
  454. data/ext/iup-win32/iup.dll +0 -0
  455. data/ext/iup-win32/iup.lib +0 -0
  456. data/ext/iup-win32/iup_pplot.dll +0 -0
  457. data/ext/iup-win32/iup_pplot.lib +0 -0
  458. data/ext/iup-win32/iupcd.dll +0 -0
  459. data/ext/iup-win32/iupcd.lib +0 -0
  460. data/ext/iup-win32/iupcontrols.dll +0 -0
  461. data/ext/iup-win32/iupcontrols.lib +0 -0
  462. data/ext/iup-win32/iupgl.dll +0 -0
  463. data/ext/iup-win32/iupgl.lib +0 -0
  464. data/ext/iup-win32/iupgtk.dll +0 -0
  465. data/ext/iup-win32/iupgtk.lib +0 -0
  466. data/ext/iup-win32/iupim.dll +0 -0
  467. data/ext/iup-win32/iupim.lib +0 -0
  468. data/ext/iup-win32/iupimglib.lib +0 -0
  469. data/ext/iup-win32/iupole.dll +0 -0
  470. data/ext/iup-win32/iupole.lib +0 -0
  471. data/ext/iup-win32/iupstub.lib +0 -0
  472. data/ext/iup-win32/pdflib.dll +0 -0
  473. data/ext/iup-win32/pdflib.lib +0 -0
  474. data/ext/mkrf_conf.rb +0 -72
  475. data/ext/rb_iupcompat.h +0 -237
  476. data/ext/rb_iupdef.h +0 -3
  477. data/ext/rb_iupmask.h +0 -189
  478. data/lib/README +0 -1
@@ -0,0 +1,34 @@
1
+ /** \file
2
+ * \brief RAW File Format
3
+ *
4
+ * See Copyright Notice in im_lib.h
5
+ */
6
+
7
+ #ifndef __IM_RAW_H
8
+ #define __IM_RAW_H
9
+
10
+ #if defined(__cplusplus)
11
+ extern "C" {
12
+ #endif
13
+
14
+
15
+ /** Opens a RAW image file.
16
+ * See also \ref imErrorCodes.
17
+ *
18
+ * \verbatim im.FileOpenRaw(file_name: string) -> ifile: imFile, error: number [in Lua 5] \endverbatim
19
+ * \ingroup raw */
20
+ imFile* imFileOpenRaw(const char* file_name, int *error);
21
+
22
+ /** Creates a RAW image file.
23
+ * See also \ref imErrorCodes.
24
+ *
25
+ * \verbatim im.FileNewRaw(file_name: string) -> ifile: imFile, error: number [in Lua 5] \endverbatim
26
+ * \ingroup raw */
27
+ imFile* imFileNewRaw(const char* file_name, int *error);
28
+
29
+
30
+ #if defined(__cplusplus)
31
+ }
32
+ #endif
33
+
34
+ #endif
@@ -0,0 +1,277 @@
1
+ /** \file
2
+ * \brief Utilities
3
+ *
4
+ * See Copyright Notice in im_lib.h
5
+ */
6
+
7
+ #ifndef __IM_UTIL_H
8
+ #define __IM_UTIL_H
9
+
10
+ #if defined(__cplusplus)
11
+ extern "C" {
12
+ #endif
13
+
14
+
15
+ /** \defgroup util Utilities
16
+ * \par
17
+ * See \ref im_util.h
18
+ * @{
19
+ */
20
+
21
+ #define IM_MIN(_a, _b) (_a < _b? _a: _b)
22
+ #define IM_MAX(_a, _b) (_a > _b? _a: _b)
23
+
24
+ /** @} */
25
+
26
+
27
+ /** \defgroup str String Utilities
28
+ * \par
29
+ * See \ref im_util.h
30
+ * \ingroup util */
31
+
32
+ /** Check if the two strings are equal.
33
+ * \ingroup str */
34
+ int imStrEqual(const char* str1, const char* str2);
35
+
36
+ /** Calculate the size of the string but limited to max_len.
37
+ * \ingroup str */
38
+ int imStrNLen(const char* str, int max_len);
39
+
40
+ /** Check if the data is a string.
41
+ * \ingroup str */
42
+ int imStrCheck(const void* data, int count);
43
+
44
+
45
+
46
+ /** \defgroup imageutil Raw Data Utilities
47
+ * \par
48
+ * See \ref im_util.h
49
+ * \ingroup imagerep */
50
+
51
+ /** Returns the size of the data buffer.
52
+ *
53
+ * \verbatim im.ImageDataSize(width: number, height: number, color_mode: number, data_type: number) -> datasize: number [in Lua 5] \endverbatim
54
+ * \ingroup imageutil */
55
+ int imImageDataSize(int width, int height, int color_mode, int data_type);
56
+
57
+ /** Returns the size of one line of the data buffer. \n
58
+ * This depends if the components are packed. If packed includes all components, if not includes only one.
59
+ *
60
+ * \verbatim im.ImageLineSize(width: number, color_mode: number, data_type: number) -> linesize: number [in Lua 5] \endverbatim
61
+ * \ingroup imageutil */
62
+ int imImageLineSize(int width, int color_mode, int data_type);
63
+
64
+ /** Returns the number of elements of one line of the data buffer. \n
65
+ * This depends if the components are packed. If packed includes all components, if not includes only one.
66
+ *
67
+ * \verbatim im.ImageLineCount(width: number, color_mode: number) -> linecount: number [in Lua 5] \endverbatim
68
+ * \ingroup imageutil */
69
+ int imImageLineCount(int width, int color_mode);
70
+
71
+ /** Check if the combination color_mode+data_type is valid.
72
+ *
73
+ * \verbatim im.ImageCheckFormat(color_mode: number, data_type: number) -> check: boolean [in Lua 5] \endverbatim
74
+ * \ingroup imageutil */
75
+ int imImageCheckFormat(int color_mode, int data_type);
76
+
77
+
78
+
79
+ /** \defgroup colorutl Color Utilities
80
+ * \par
81
+ * See \ref im_util.h
82
+ * \ingroup util */
83
+
84
+ /** Encode RGB components in a long for palete usage. \n
85
+ * "long" definition is compatible with the CD library definition.
86
+ *
87
+ * \verbatim im.ColorEncode(red: number, green: number, blue: number) -> color: lightuserdata [in Lua 5] \endverbatim
88
+ * \ingroup colorutl */
89
+ long imColorEncode(unsigned char red, unsigned char green, unsigned char blue);
90
+
91
+ /** Decode RGB components from a long for palete usage. \n
92
+ * "long" definition is compatible with the CD library definition.
93
+ *
94
+ * \verbatim im.ColorDecode(color: lightuserdata) -> red: number, green: number, blue: number [in Lua 5] \endverbatim
95
+ * \ingroup colorutl */
96
+ void imColorDecode(unsigned char *red, unsigned char *green, unsigned char *blue, long color);
97
+
98
+
99
+
100
+ /** \defgroup colormodeutl Color Mode Utilities
101
+ * \par
102
+ * See \ref im_util.h
103
+ * \ingroup imagerep */
104
+
105
+ /** Returns the color mode name.
106
+ *
107
+ * \verbatim im.ColorModeSpaceName(color_mode: number) -> name: string [in Lua 5] \endverbatim
108
+ * \ingroup colormodeutl */
109
+ const char* imColorModeSpaceName(int color_mode);
110
+
111
+ /** Returns the number of components of the color space including alpha.
112
+ *
113
+ * \verbatim im.ColorModeDepth(color_mode: number) -> depth: number [in Lua 5] \endverbatim
114
+ * \ingroup colormodeutl */
115
+ int imColorModeDepth(int color_mode);
116
+
117
+ /** Returns the color space of the color mode.
118
+ *
119
+ * \verbatim im.ColorModeSpace(color_mode: number) -> color_space: number [in Lua 5] \endverbatim
120
+ * \ingroup colormodeutl */
121
+ #define imColorModeSpace(_cm) (_cm & 0xFF)
122
+
123
+ /** Check if the two color modes match. Only the color space is compared.
124
+ *
125
+ * \verbatim im.ColorModeMatch(color_mode1: number, color_mode2: number) -> match: boolean [in Lua 5] \endverbatim
126
+ * \ingroup colormodeutl */
127
+ #define imColorModeMatch(_cm1, _cm2) (imColorModeSpace(_cm1) == imColorModeSpace(_cm2))
128
+
129
+ /** Check if the color mode has an alpha channel.
130
+ *
131
+ * \verbatim im.ColorModeHasAlpha(color_mode: number) -> has_alpha: boolean [in Lua 5] \endverbatim
132
+ * \ingroup colormodeutl */
133
+ #define imColorModeHasAlpha(_cm) (_cm & IM_ALPHA)
134
+
135
+ /** Check if the color mode components are packed in one plane.
136
+ *
137
+ * \verbatim im.ColorModeIsPacked(color_mode: number) -> is_packed: boolean [in Lua 5] \endverbatim
138
+ * \ingroup colormodeutl */
139
+ #define imColorModeIsPacked(_cm) (_cm & IM_PACKED)
140
+
141
+ /** Check if the color mode orients the image from top down to bottom.
142
+ *
143
+ * \verbatim im.ColorModeIsTopDown(color_mode: number) -> is_top_down: boolean [in Lua 5] \endverbatim
144
+ * \ingroup colormodeutl */
145
+ #define imColorModeIsTopDown(_cm) (_cm & IM_TOPDOWN)
146
+
147
+ /** Returns the color space of the equivalent display bitmap image. \n
148
+ * Original packing and alpha are ignored. Returns IM_RGB, IM_GRAY, IM_MAP or IM_BINARY.
149
+ *
150
+ * \verbatim im.ColorModeToBitmap(color_mode: number) -> color_space: number [in Lua 5] \endverbatim
151
+ * \ingroup colormodeutl */
152
+ int imColorModeToBitmap(int color_mode);
153
+
154
+ /** Check if the color mode and data_type defines a display bitmap image.
155
+ *
156
+ * \verbatim im.ColorModeIsBitmap(color_mode: number, data_type: number) -> is_bitmap: boolean [in Lua 5] \endverbatim
157
+ * \ingroup colormodeutl */
158
+ int imColorModeIsBitmap(int color_mode, int data_type);
159
+
160
+
161
+
162
+ /** \defgroup datatypeutl Data Type Utilities
163
+ * \par
164
+ * See \ref im_util.h
165
+ * \ingroup util
166
+ * @{
167
+ */
168
+
169
+ typedef unsigned char imbyte;
170
+ typedef unsigned short imushort;
171
+
172
+ #define IM_BYTECROP(_v) (_v < 0? 0: _v > 255? 255: _v)
173
+ #define IM_CROPMAX(_v, _max) (_v < 0? 0: _v > _max? _max: _v)
174
+
175
+ /** @} */
176
+
177
+ /** Returns the size in bytes of a specified numeric data type.
178
+ *
179
+ * \verbatim im.DataTypeSize(data_type: number) -> size: number [in Lua 5] \endverbatim
180
+ * \ingroup datatypeutl */
181
+ int imDataTypeSize(int data_type);
182
+
183
+ /** Returns the numeric data type name given its identifier.
184
+ *
185
+ * \verbatim im.DataTypeName(data_type: number) -> name: string [in Lua 5] \endverbatim
186
+ * \ingroup datatypeutl */
187
+ const char* imDataTypeName(int data_type);
188
+
189
+ /** Returns the maximum value of an integer data type. For floating point returns 0.
190
+ *
191
+ * \verbatim im.DataTypeIntMax(data_type: number) -> int_max: number [in Lua 5] \endverbatim
192
+ * \ingroup datatypeutl */
193
+ unsigned long imDataTypeIntMax(int data_type);
194
+
195
+ /** Returns the minimum value of an integer data type. For floating point returns 0.
196
+ *
197
+ * \verbatim im.DataTypeIntMin(data_type: number) -> int_min: number [in Lua 5] \endverbatim
198
+ * \ingroup datatypeutl */
199
+ long imDataTypeIntMin(int data_type);
200
+
201
+
202
+
203
+ /** \defgroup bin Binary Data Utilities
204
+ * \par
205
+ * See \ref im_util.h
206
+ * \ingroup util */
207
+
208
+ /** CPU Byte Orders.
209
+ * \ingroup bin */
210
+ enum imByteOrder
211
+ {
212
+ IM_LITTLEENDIAN, /**< Little Endian - The most significant byte is on the right end of a word. Used by Intel processors. */
213
+ IM_BIGENDIAN /**< Big Endian - The most significant byte is on the left end of a word. Used by Motorola processors, also is the network standard byte order. */
214
+ };
215
+
216
+ /** Returns the current CPU byte order.
217
+ * \ingroup bin */
218
+ int imBinCPUByteOrder(void);
219
+
220
+ /** Changes the byte order of an array of 2, 4 or 8 byte values.
221
+ * \ingroup bin */
222
+ void imBinSwapBytes(void *data, int count, int size);
223
+
224
+ /** Changes the byte order of an array of 2 byte values.
225
+ * \ingroup bin */
226
+ void imBinSwapBytes2(void *data, int count);
227
+
228
+ /** Inverts the byte order of the 4 byte values
229
+ * \ingroup bin */
230
+ void imBinSwapBytes4(void *data, int count);
231
+
232
+ /** Inverts the byte order of the 8 byte values
233
+ * \ingroup bin */
234
+ void imBinSwapBytes8(void *data, int count);
235
+
236
+
237
+
238
+ /** \defgroup compress Data Compression Utilities
239
+ * \par
240
+ * Deflate compression support uses zlib version 1.2.3. \n
241
+ * http://www.zlib.org/ \n
242
+ * Copyright (C) 1995-2004 Jean-loup Gailly and Mark Adler
243
+ * \par
244
+ * LZF compression support uses libLZF version 3.5. \n
245
+ * http://software.schmorp.de/pkg/liblzf \n
246
+ * Copyright (C) 2000-2009 Marc Alexander Lehmann
247
+ * See \ref im_util.h
248
+ * \ingroup util */
249
+
250
+ /** Compresses the data using the ZLIB Deflate compression. \n
251
+ * The destination buffer must be at least 0.1% larger than source_size plus 12 bytes. \n
252
+ * It compresses raw byte data. zip_quality can be 1 to 9. \n
253
+ * Returns the size of the compressed buffer or zero if failed.
254
+ * \ingroup compress */
255
+ int imCompressDataZ(const void* src_data, int src_size, void* dst_data, int dst_size, int zip_quality);
256
+
257
+ /** Uncompresses the data compressed with the ZLIB Deflate compression. \n
258
+ * Returns zero if failed.
259
+ * \ingroup compress */
260
+ int imCompressDataUnZ(const void* src_data, int src_size, void* dst_data, int dst_size);
261
+
262
+ /** Compresses the data using the libLZF compression. \n
263
+ * Returns the size of the compressed buffer or zero if failed.
264
+ * \ingroup compress */
265
+ int imCompressDataLZF(const void* src_data, int src_size, void* dst_data, int dst_size, int zip_quality);
266
+
267
+ /** Uncompresses the data compressed with the libLZF compression.
268
+ * Returns zero if failed.
269
+ * \ingroup compress */
270
+ int imCompressDataUnLZF(const void* src_data, int src_size, void* dst_data, int dst_size);
271
+
272
+
273
+ #if defined(__cplusplus)
274
+ }
275
+ #endif
276
+
277
+ #endif
@@ -0,0 +1,75 @@
1
+ /** \file
2
+ * \brief IM Lua 5 Binding
3
+ *
4
+ * See Copyright Notice in im_lib.h
5
+ */
6
+
7
+ #ifndef __IMLUA_H
8
+ #define __IMLUA_H
9
+
10
+ #ifdef __cplusplus
11
+ extern "C" {
12
+ #endif
13
+
14
+ /** \defgroup imlua ImLua 5 Binding Reference
15
+ * \par
16
+ * Binding for the Lua 5 scripting language. \n
17
+ * Lua 5.1 Copyright (C) 1994-2005 Lua.org, PUC-Rio \n
18
+ * R. Ierusalimschy, L. H. de Figueiredo & W. Celes \n
19
+ * http://www.lua.org
20
+ * \par
21
+ * See \ref imlua.h
22
+ * \ingroup util */
23
+
24
+ #ifdef LUA_NOOBJECT /* Lua 3 */
25
+ void imlua_open(void);
26
+ #endif
27
+
28
+ #ifdef LUA_TNONE /* Lua 5 */
29
+
30
+ /** Initializes the Lua binding of the main IM library. \n
31
+ * Returns 1 (leaves the "im" table on the top of the stack).
32
+ * You must link the application with the "imlua51" library.
33
+ * \ingroup imlua */
34
+ int imlua_open(lua_State *L);
35
+ int luaopen_imlua(lua_State *L);
36
+
37
+ #ifdef __IM_IMAGE_H /* must include im_image.h before this */
38
+ /** Pushes an image as a metatable on the stack.
39
+ * \ingroup imlua */
40
+ void imlua_pushimage(lua_State *L, imImage* image);
41
+
42
+ /** Gets an image as a metatable from the stack, checks for correct type.
43
+ * \ingroup imlua */
44
+ imImage* imlua_checkimage(lua_State *L, int param);
45
+ #endif
46
+
47
+ /** Initializes the Lua binding of the capture library. \n
48
+ * Returns 1 (leaves the "im" table on the top of the stack).
49
+ * You must link the application with the "imlua_capture51" library.
50
+ * \ingroup imlua */
51
+ int imlua_open_capture(lua_State *L);
52
+ int luaopen_imlua_capture(lua_State *L);
53
+
54
+ /** Initializes the Lua binding of the process library. \n
55
+ * Returns 1 (leaves the "im" table on the top of the stack).
56
+ * You must link the application with the "imlua_process51" library.
57
+ * \ingroup imlua */
58
+ int imlua_open_process(lua_State *L);
59
+ int luaopen_imlua_process(lua_State *L);
60
+
61
+ /** Initializes the Lua binding of the fourier transform library. \n
62
+ * Returns 1 (leaves the "im" table on the top of the stack).
63
+ * You must link the application with the "imlua_fftw51" library.
64
+ * \ingroup imlua */
65
+ int imlua_open_fftw(lua_State *L);
66
+ int luaopen_imlua_fftw(lua_State *L);
67
+
68
+
69
+ #endif
70
+
71
+ #ifdef __cplusplus
72
+ }
73
+ #endif
74
+
75
+ #endif
@@ -0,0 +1,364 @@
1
+ /** \file
2
+ * \brief User API
3
+ * IUP - A Portable User Interface Toolkit
4
+ * Tecgraf: Computer Graphics Technology Group, PUC-Rio, Brazil
5
+ * http://www.tecgraf.puc-rio.br/iup mailto:iup@tecgraf.puc-rio.br
6
+ *
7
+ * See Copyright Notice at the end of this file
8
+ */
9
+
10
+ #ifndef __IUP_H
11
+ #define __IUP_H
12
+
13
+ #include <iupkey.h>
14
+ #include <iupdef.h>
15
+
16
+ #ifdef __cplusplus
17
+ extern "C" {
18
+ #endif
19
+
20
+
21
+ #define IUP_NAME "IUP - Portable User Interface"
22
+ #define IUP_COPYRIGHT "Copyright (C) 1994-2010 Tecgraf, PUC-Rio."
23
+ #define IUP_DESCRIPTION "Portable toolkit for building graphical user interfaces."
24
+ #define IUP_VERSION "3.0" /* bug fixes are reported only by IupVersion functions */
25
+ #define IUP_VERSION_NUMBER 300000
26
+ #define IUP_VERSION_DATE "2010/01/26"
27
+
28
+ typedef struct Ihandle_ Ihandle;
29
+ typedef int (*Icallback)(Ihandle*);
30
+
31
+ /************************************************************************/
32
+ /* Main API */
33
+ /************************************************************************/
34
+
35
+ int IupOpen (int *argc, char ***argv);
36
+ void IupClose (void);
37
+ void IupImageLibOpen (void);
38
+
39
+ int IupMainLoop (void);
40
+ int IupLoopStep (void);
41
+ int IupLoopStepWait (void);
42
+ int IupMainLoopLevel (void);
43
+ void IupFlush (void);
44
+ void IupExitLoop (void);
45
+
46
+ void IupUpdate (Ihandle* ih);
47
+ void IupUpdateChildren(Ihandle* ih);
48
+ void IupRedraw (Ihandle* ih, int children);
49
+ void IupRefresh (Ihandle* ih);
50
+
51
+ char* IupMapFont (const char *iupfont);
52
+ char* IupUnMapFont (const char *driverfont);
53
+ int IupHelp (const char* url);
54
+ char* IupLoad (const char *filename);
55
+ char* IupLoadBuffer (const char *buffer);
56
+
57
+ char* IupVersion (void);
58
+ char* IupVersionDate (void);
59
+ int IupVersionNumber (void);
60
+ void IupSetLanguage (const char *lng);
61
+ char* IupGetLanguage (void);
62
+
63
+ void IupDestroy (Ihandle* ih);
64
+ void IupDetach (Ihandle* child);
65
+ Ihandle* IupAppend (Ihandle* ih, Ihandle* child);
66
+ Ihandle* IupInsert (Ihandle* ih, Ihandle* ref_child, Ihandle* child);
67
+ Ihandle* IupGetChild (Ihandle* ih, int pos);
68
+ int IupGetChildPos (Ihandle* ih, Ihandle* child);
69
+ int IupGetChildCount(Ihandle* ih);
70
+ Ihandle* IupGetNextChild (Ihandle* ih, Ihandle* child);
71
+ Ihandle* IupGetBrother (Ihandle* ih);
72
+ Ihandle* IupGetParent (Ihandle* ih);
73
+ Ihandle* IupGetDialog (Ihandle* ih);
74
+ Ihandle* IupGetDialogChild(Ihandle* ih, const char* name);
75
+ int IupReparent (Ihandle* ih, Ihandle* new_parent);
76
+
77
+ int IupPopup (Ihandle* ih, int x, int y);
78
+ int IupShow (Ihandle* ih);
79
+ int IupShowXY (Ihandle* ih, int x, int y);
80
+ int IupHide (Ihandle* ih);
81
+ int IupMap (Ihandle* ih);
82
+ void IupUnmap (Ihandle *ih);
83
+
84
+ void IupSetAttribute (Ihandle* ih, const char* name, const char* value);
85
+ void IupStoreAttribute(Ihandle* ih, const char* name, const char* value);
86
+ Ihandle* IupSetAttributes (Ihandle* ih, const char *str);
87
+ char* IupGetAttribute (Ihandle* ih, const char* name);
88
+ char* IupGetAttributes (Ihandle* ih);
89
+ int IupGetInt (Ihandle* ih, const char* name);
90
+ int IupGetInt2 (Ihandle* ih, const char* name);
91
+ int IupGetIntInt (Ihandle *ih, const char* name, int *i1, int *i2);
92
+ float IupGetFloat (Ihandle* ih, const char* name);
93
+ void IupSetfAttribute (Ihandle* ih, const char* name, const char* format, ...);
94
+ int IupGetAllAttributes(Ihandle* ih, char** names, int n);
95
+ Ihandle* IupSetAtt(const char* handle_name, Ihandle* ih, const char* name, ...);
96
+
97
+ void IupSetGlobal (const char* name, const char* value);
98
+ void IupStoreGlobal (const char* name, const char* value);
99
+ char* IupGetGlobal (const char* name);
100
+
101
+ Ihandle* IupSetFocus (Ihandle* ih);
102
+ Ihandle* IupGetFocus (void);
103
+ Ihandle* IupPreviousField (Ihandle* ih);
104
+ Ihandle* IupNextField (Ihandle* ih);
105
+
106
+ Icallback IupGetCallback(Ihandle* ih, const char *name);
107
+ Icallback IupSetCallback(Ihandle* ih, const char *name, Icallback func);
108
+ Ihandle* IupSetCallbacks(Ihandle* ih, const char *name, Icallback func, ...);
109
+
110
+ Icallback IupGetFunction (const char *name);
111
+ Icallback IupSetFunction (const char *name, Icallback func);
112
+ const char* IupGetActionName (void);
113
+
114
+ Ihandle* IupGetHandle (const char *name);
115
+ Ihandle* IupSetHandle (const char *name, Ihandle* ih);
116
+ int IupGetAllNames (char** names, int n);
117
+ int IupGetAllDialogs (char** names, int n);
118
+ char* IupGetName (Ihandle* ih);
119
+
120
+ void IupSetAttributeHandle(Ihandle* ih, const char* name, Ihandle* ih_named);
121
+ Ihandle* IupGetAttributeHandle(Ihandle* ih, const char* name);
122
+
123
+ char* IupGetClassName(Ihandle* ih);
124
+ char* IupGetClassType(Ihandle* ih);
125
+ int IupGetClassAttributes(const char* classname, char** names, int n);
126
+ void IupSaveClassAttributes(Ihandle* ih);
127
+ void IupSetClassDefaultAttribute(const char* classname, const char *name, const char* value);
128
+
129
+ Ihandle* IupCreate (const char *classname);
130
+ Ihandle* IupCreatev(const char *classname, void* *params);
131
+ Ihandle* IupCreatep(const char *classname, void *first, ...);
132
+
133
+ /************************************************************************/
134
+ /* Elements */
135
+ /************************************************************************/
136
+
137
+ Ihandle* IupFill (void);
138
+ Ihandle* IupRadio (Ihandle* child);
139
+ Ihandle* IupVbox (Ihandle* child, ...);
140
+ Ihandle* IupVboxv (Ihandle* *children);
141
+ Ihandle* IupZbox (Ihandle* child, ...);
142
+ Ihandle* IupZboxv (Ihandle* *children);
143
+ Ihandle* IupHbox (Ihandle* child,...);
144
+ Ihandle* IupHboxv (Ihandle* *children);
145
+
146
+ Ihandle* IupNormalizer (Ihandle* ih_first, ...);
147
+ Ihandle* IupNormalizerv(Ihandle* *ih_list);
148
+
149
+ Ihandle* IupCbox (Ihandle* child, ...);
150
+ Ihandle* IupCboxv (Ihandle* *children);
151
+ Ihandle* IupSbox (Ihandle *child);
152
+
153
+ Ihandle* IupFrame (Ihandle* child);
154
+
155
+ Ihandle* IupImage (int width, int height, const unsigned char *pixmap);
156
+ Ihandle* IupImageRGB (int width, int height, const unsigned char *pixmap);
157
+ Ihandle* IupImageRGBA (int width, int height, const unsigned char *pixmap);
158
+
159
+ Ihandle* IupItem (const char* title, const char* action);
160
+ Ihandle* IupSubmenu (const char* title, Ihandle* child);
161
+ Ihandle* IupSeparator (void);
162
+ Ihandle* IupMenu (Ihandle* child,...);
163
+ Ihandle* IupMenuv (Ihandle* *children);
164
+
165
+ Ihandle* IupButton (const char* title, const char* action);
166
+ Ihandle* IupCanvas (const char* action);
167
+ Ihandle* IupDialog (Ihandle* child);
168
+ Ihandle* IupUser (void);
169
+ Ihandle* IupLabel (const char* title);
170
+ Ihandle* IupList (const char* action);
171
+ Ihandle* IupText (const char* action);
172
+ Ihandle* IupMultiLine (const char* action);
173
+ Ihandle* IupToggle (const char* title, const char* action);
174
+ Ihandle* IupTimer (void);
175
+ Ihandle* IupClipboard (void);
176
+ Ihandle* IupProgressBar(void);
177
+ Ihandle* IupVal (const char *type);
178
+ Ihandle* IupTabs (Ihandle* child, ...);
179
+ Ihandle* IupTabsv (Ihandle* *children);
180
+ Ihandle* IupTree (void);
181
+
182
+ Ihandle* IupSpin (void);
183
+ Ihandle* IupSpinbox (Ihandle* child);
184
+
185
+
186
+ /* IupImage utility */
187
+ int IupSaveImageAsText(Ihandle* ih, const char* file_name, const char* format, const char* name);
188
+
189
+ /* IupText utilities */
190
+ void IupTextConvertLinColToPos(Ihandle* ih, int lin, int col, int *pos);
191
+ void IupTextConvertPosToLinCol(Ihandle* ih, int pos, int *lin, int *col);
192
+
193
+ /* IupText, IupList and IupTree utility */
194
+ int IupConvertXYToPos(Ihandle* ih, int x, int y);
195
+
196
+ /* IupTree utilities */
197
+ int IupTreeSetUserId(Ihandle* ih, int id, void* userid);
198
+ void* IupTreeGetUserId(Ihandle* ih, int id);
199
+ int IupTreeGetId(Ihandle* ih, void *userid);
200
+
201
+ void IupTreeSetAttribute (Ihandle* ih, const char* name, int id, char* value);
202
+ void IupTreeStoreAttribute(Ihandle* ih, const char* name, int id, char* value);
203
+ char* IupTreeGetAttribute (Ihandle* ih, const char* name, int id);
204
+ int IupTreeGetInt (Ihandle* ih, const char* name, int id);
205
+ float IupTreeGetFloat (Ihandle* ih, const char* name, int id);
206
+ void IupTreeSetfAttribute (Ihandle* ih, const char* name, int id, char* format, ...);
207
+
208
+
209
+ /************************************************************************/
210
+ /* Pre-definided dialogs */
211
+ /************************************************************************/
212
+
213
+ Ihandle* IupFileDlg(void);
214
+ Ihandle* IupMessageDlg(void);
215
+ Ihandle* IupColorDlg(void);
216
+ Ihandle* IupFontDlg(void);
217
+
218
+ int IupGetFile(char *arq);
219
+ void IupMessage(const char *title, const char *msg);
220
+ void IupMessagef(const char *title, const char *format, ...);
221
+ int IupAlarm(const char *title, const char *msg, const char *b1, const char *b2, const char *b3);
222
+ int IupScanf(const char *format, ...);
223
+ int IupListDialog(int type, const char *title, int size, const char** list,
224
+ int op, int max_col, int max_lin, int* marks);
225
+ int IupGetText(const char* title, char* text);
226
+ int IupGetColor(int x, int y, unsigned char* r, unsigned char* g, unsigned char* b);
227
+
228
+ typedef int (*Iparamcb)(Ihandle* dialog, int param_index, void* user_data);
229
+ int IupGetParam(const char* title, Iparamcb action, void* user_data, const char* format,...);
230
+ int IupGetParamv(const char* title, Iparamcb action, void* user_data, const char* format, int param_count, int param_extra, void** param_data);
231
+
232
+
233
+
234
+ #ifdef __cplusplus
235
+ }
236
+ #endif
237
+
238
+ /************************************************************************/
239
+ /* Common Return Values */
240
+ /************************************************************************/
241
+ #define IUP_ERROR 1
242
+ #define IUP_NOERROR 0
243
+ #define IUP_OPENED -1
244
+ #define IUP_INVALID -1
245
+
246
+ /************************************************************************/
247
+ /* Callback Return Values */
248
+ /************************************************************************/
249
+ #define IUP_IGNORE -1
250
+ #define IUP_DEFAULT -2
251
+ #define IUP_CLOSE -3
252
+ #define IUP_CONTINUE -4
253
+
254
+ /************************************************************************/
255
+ /* IupPopup and IupShowXY Parameter Values */
256
+ /************************************************************************/
257
+ #define IUP_CENTER 0xFFFF /* 65535 */
258
+ #define IUP_LEFT 0xFFFE /* 65534 */
259
+ #define IUP_RIGHT 0xFFFD /* 65533 */
260
+ #define IUP_MOUSEPOS 0xFFFC /* 65532 */
261
+ #define IUP_CURRENT 0xFFFB /* 65531 */
262
+ #define IUP_CENTERPARENT 0xFFFA /* 65530 */
263
+ #define IUP_TOP IUP_LEFT
264
+ #define IUP_BOTTOM IUP_RIGHT
265
+
266
+ /************************************************************************/
267
+ /* SHOW_CB Callback Values */
268
+ /************************************************************************/
269
+ enum{IUP_SHOW, IUP_RESTORE, IUP_MINIMIZE, IUP_MAXIMIZE, IUP_HIDE};
270
+
271
+ /************************************************************************/
272
+ /* SCROLL_CB Callback Values */
273
+ /************************************************************************/
274
+ enum{IUP_SBUP, IUP_SBDN, IUP_SBPGUP, IUP_SBPGDN, IUP_SBPOSV, IUP_SBDRAGV,
275
+ IUP_SBLEFT, IUP_SBRIGHT, IUP_SBPGLEFT, IUP_SBPGRIGHT, IUP_SBPOSH, IUP_SBDRAGH};
276
+
277
+ /************************************************************************/
278
+ /* Mouse Button Values and Macros */
279
+ /************************************************************************/
280
+ #define IUP_BUTTON1 '1'
281
+ #define IUP_BUTTON2 '2'
282
+ #define IUP_BUTTON3 '3'
283
+ #define IUP_BUTTON4 '4'
284
+ #define IUP_BUTTON5 '5'
285
+
286
+ #define iup_isshift(_s) (_s[0]=='S')
287
+ #define iup_iscontrol(_s) (_s[1]=='C')
288
+ #define iup_isbutton1(_s) (_s[2]=='1')
289
+ #define iup_isbutton2(_s) (_s[3]=='2')
290
+ #define iup_isbutton3(_s) (_s[4]=='3')
291
+ #define iup_isdouble(_s) (_s[5]=='D')
292
+ #define iup_isalt(_s) (_s[6]=='A')
293
+ #define iup_issys(_s) (_s[7]=='Y')
294
+ #define iup_isbutton4(_s) (_s[8]=='4')
295
+ #define iup_isbutton5(_s) (_s[9]=='5')
296
+
297
+ /* Old definitions for backward compatibility */
298
+ #define isshift iup_isshift
299
+ #define iscontrol iup_iscontrol
300
+ #define isbutton1 iup_isbutton1
301
+ #define isbutton2 iup_isbutton2
302
+ #define isbutton3 iup_isbutton3
303
+ #define isdouble iup_isdouble
304
+ #define isalt iup_isalt
305
+ #define issys iup_issys
306
+ #define isbutton4 iup_isbutton4
307
+ #define isbutton5 iup_isbutton5
308
+
309
+
310
+ /************************************************************************/
311
+ /* Pre-Defined Masks */
312
+ /************************************************************************/
313
+ #define IUP_MASK_FLOAT "[+/-]?(/d+/.?/d*|/./d+)"
314
+ #define IUP_MASK_UFLOAT "(/d+/.?/d*|/./d+)"
315
+ #define IUP_MASK_EFLOAT "[+/-]?(/d+/.?/d*|/./d+)([eE][+/-]?/d+)?"
316
+ #define IUP_MASK_INT "[+/-]?/d+"
317
+ #define IUP_MASK_UINT "/d+"
318
+
319
+ /* Old definitions for backward compatibility */
320
+ #define IUPMASK_FLOAT IUP_MASK_FLOAT
321
+ #define IUPMASK_UFLOAT IUP_MASK_UFLOAT
322
+ #define IUPMASK_EFLOAT IUP_MASK_EFLOAT
323
+ #define IUPMASK_INT IUP_MASK_INT
324
+ #define IUPMASK_UINT IUP_MASK_UINT
325
+
326
+
327
+ /************************************************************************/
328
+ /* Replacement for the WinMain in Windows, */
329
+ /* this allows the application to start from "main". */
330
+ /* Used only for Watcom. */
331
+ /************************************************************************/
332
+ #if defined (__WATCOMC__)
333
+ #ifdef __cplusplus
334
+ extern "C" {
335
+ int IupMain (int argc, char** argv); /* In C++ we have to declare the prototype */
336
+ }
337
+ #endif
338
+ #define main IupMain /* this is the trick for Watcom and MetroWerks */
339
+ #endif
340
+
341
+ /******************************************************************************
342
+ * Copyright (C) 1994-2009 Tecgraf, PUC-Rio.
343
+ *
344
+ * Permission is hereby granted, free of charge, to any person obtaining
345
+ * a copy of this software and associated documentation files (the
346
+ * "Software"), to deal in the Software without restriction, including
347
+ * without limitation the rights to use, copy, modify, merge, publish,
348
+ * distribute, sublicense, and/or sell copies of the Software, and to
349
+ * permit persons to whom the Software is furnished to do so, subject to
350
+ * the following conditions:
351
+ *
352
+ * The above copyright notice and this permission notice shall be
353
+ * included in all copies or substantial portions of the Software.
354
+ *
355
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
356
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
357
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
358
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
359
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
360
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
361
+ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
362
+ ******************************************************************************/
363
+
364
+ #endif