ruby-iup 0.0.2 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +3 -0
- data/MANIFEST +8 -0
- data/MIT-LICENSE +18 -0
- data/README +12 -0
- data/Rakefile +68 -80
- data/doc/build_install.txt +9 -12
- data/examples/ctrl/cbox.rb +14 -15
- data/examples/ctrl/checkboard.rb +1 -1
- data/examples/ctrl/example1.rb +53 -53
- data/examples/ctrl/example2.rb +39 -39
- data/examples/ctrl/iupcolorbar.rb +95 -95
- data/examples/ctrl/iupcolorbrowser.rb +45 -45
- data/examples/ctrl/iupdial.rb +117 -117
- data/examples/ctrl/iupgetcolor.rb +7 -7
- data/examples/ctrl/iupgetparam.rb +62 -62
- data/examples/ctrl/iupglcanvas.rb +172 -172
- data/examples/ctrl/iupmask.rb +1 -3
- data/examples/ctrl/iupmatrix.rb +39 -39
- data/examples/ctrl/iupplot2.rb +2 -1
- data/examples/ctrl/iuptabs.rb +22 -22
- data/examples/ctrl/iuptree.rb +190 -190
- data/examples/ctrl/iupval.rb +71 -71
- data/examples/ctrl/numbering.rb +46 -46
- data/examples/ctrl/sample.rb +166 -166
- data/examples/dlg/iupfiledlg.rb +19 -19
- data/examples/dlg/iupgetfile.rb +19 -19
- data/examples/dlg/iuplistdialog.rb +26 -26
- data/examples/dlg/iupmessage.rb +5 -5
- data/examples/dlg/iupscanf.rb +17 -17
- data/examples/elem/iupdialog2.rb +25 -25
- data/examples/elem/iupfill.rb +51 -51
- data/examples/elem/iupframe.rb +25 -25
- data/examples/elem/iuphbox.rb +68 -68
- data/examples/elem/iupimage.rb +113 -113
- data/examples/elem/iupitem.rb +60 -60
- data/examples/elem/iuplabel.rb +57 -57
- data/examples/elem/iuplist.rb +41 -41
- data/examples/elem/iuplist2.rb +125 -125
- data/examples/elem/iupmenu.rb +32 -32
- data/examples/elem/iupmultiline.rb +24 -24
- data/examples/elem/iupmultiline2.rb +156 -156
- data/examples/elem/iupradio.rb +32 -32
- data/examples/elem/iupseparator.rb +81 -81
- data/examples/elem/iupsubmenu.rb +85 -85
- data/examples/elem/iuptext.rb +61 -61
- data/examples/elem/iuptimer.rb +36 -36
- data/examples/elem/iuptoggle.rb +110 -110
- data/examples/elem/iupvbox.rb +87 -87
- data/examples/elem/iupzbox.rb +60 -60
- data/examples/elem/mdisample.rb +377 -376
- data/examples/elem/scrollbar.rb +66 -66
- data/examples/elem/tray.rb +90 -90
- data/examples/func/iupgetattribute.rb +32 -32
- data/examples/func/iupidle.rb +48 -48
- data/ext/extconf.rb +62 -27
- data/ext/iup-linux/include/cd.h +9 -5
- data/ext/iup-linux/include/cd_private.h +13 -6
- data/ext/iup-linux/include/cdsvg.h +22 -0
- data/ext/iup-linux/include/im.h +287 -282
- data/ext/iup-linux/include/im_attrib.h +120 -116
- data/ext/iup-linux/include/im_attrib_flat.h +39 -39
- data/ext/iup-linux/include/im_binfile.h +224 -214
- data/ext/iup-linux/include/im_capture.h +365 -365
- data/ext/iup-linux/include/im_color.h +465 -465
- data/ext/iup-linux/include/im_colorhsi.h +56 -61
- data/ext/iup-linux/include/im_complex.h +180 -160
- data/ext/iup-linux/include/im_convert.h +142 -127
- data/ext/iup-linux/include/im_counter.h +69 -69
- data/ext/iup-linux/include/im_dib.h +195 -195
- data/ext/iup-linux/include/im_file.h +115 -111
- data/ext/iup-linux/include/im_format.h +97 -79
- data/ext/iup-linux/include/im_format_all.h +575 -576
- data/ext/iup-linux/include/im_format_avi.h +88 -87
- data/ext/iup-linux/include/im_format_ecw.h +93 -93
- data/ext/iup-linux/include/im_format_jp2.h +79 -78
- data/ext/iup-linux/include/im_format_raw.h +74 -64
- data/ext/iup-linux/include/im_format_wmv.h +101 -100
- data/ext/iup-linux/include/im_image.h +425 -403
- data/ext/iup-linux/include/im_kernel.h +315 -315
- data/ext/iup-linux/include/im_lib.h +191 -191
- data/ext/iup-linux/include/im_math.h +368 -368
- data/ext/iup-linux/include/im_math_op.h +214 -219
- data/ext/iup-linux/include/im_palette.h +172 -172
- data/ext/iup-linux/include/im_plus.h +73 -73
- data/ext/iup-linux/include/im_process.h +36 -35
- data/ext/iup-linux/include/im_process_ana.h +222 -221
- data/ext/iup-linux/include/im_process_glo.h +170 -170
- data/ext/iup-linux/include/im_process_loc.h +608 -577
- data/ext/iup-linux/include/im_process_pon.h +734 -712
- data/ext/iup-linux/include/im_raw.h +34 -34
- data/ext/iup-linux/include/im_util.h +277 -277
- data/ext/iup-linux/include/imlua.h +75 -83
- data/ext/iup-linux/include/iup.h +86 -40
- data/ext/iup-linux/include/iupcb.h +1 -25
- data/ext/iup-linux/include/iupcbox.h +1 -0
- data/ext/iup-linux/include/iupcbs.h +1 -1
- data/ext/iup-linux/include/iupcells.h +1 -130
- data/ext/iup-linux/include/iupcolorbar.h +1 -126
- data/ext/iup-linux/include/iupcontrols.h +26 -16
- data/ext/iup-linux/include/iupdef.h +205 -0
- data/ext/iup-linux/include/iupdial.h +1 -63
- data/ext/iup-linux/include/iupgauge.h +1 -57
- data/ext/iup-linux/include/iupgc.h +1 -0
- data/ext/iup-linux/include/iupgetparam.h +1 -27
- data/ext/iup-linux/include/iupgl.h +2 -7
- data/ext/iup-linux/include/iupim.h +7 -1
- data/ext/iup-linux/include/iupkey.h +4 -4
- data/ext/iup-linux/include/iupmask.h +2 -1
- data/ext/iup-linux/include/iupmatrix.h +1 -63
- data/ext/iup-linux/include/iupsbox.h +1 -0
- data/ext/iup-linux/include/iupspin.h +1 -21
- data/ext/iup-linux/include/iuptabs.h +1 -75
- data/ext/iup-linux/include/iuptree.h +1 -93
- data/ext/iup-linux/include/iupval.h +1 -46
- data/ext/iup-linux/include/old_im.h +59 -59
- data/ext/iup-linux/include/wd.h +5 -0
- data/ext/iup-linux/libcd.a +0 -0
- data/ext/iup-linux/libcdcontextplus.a +0 -0
- data/ext/iup-linux/libcdgdk.a +0 -0
- data/ext/iup-linux/libcdpdf.a +0 -0
- data/ext/iup-linux/libfreetype.a +0 -0
- data/ext/iup-linux/libim.a +0 -0
- data/ext/iup-linux/libim_fftw.a +0 -0
- data/ext/iup-linux/libim_jp2.a +0 -0
- data/ext/iup-linux/libim_process.a +0 -0
- data/ext/iup-linux/libiup.a +0 -0
- data/ext/iup-linux/libiup_pplot.a +0 -0
- data/ext/iup-linux/libiupcd.a +0 -0
- data/ext/iup-linux/libiupcontrols.a +0 -0
- data/ext/iup-linux/libiupgl.a +0 -0
- data/ext/iup-linux/libiupim.a +0 -0
- data/ext/iup-linux/libiupimglib.a +0 -0
- data/ext/iup-linux/libiupmot.a +0 -0
- data/ext/iup-linux/libpdflib.a +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cd.h +9 -5
- data/ext/{iup-win32 → iup-mingw32}/include/cd_canvas.hpp +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cd_old.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cd_private.h +13 -6
- data/ext/{iup-win32 → iup-mingw32}/include/cdcgm.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdclipbd.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cddbuf.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cddebug.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cddgn.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cddxf.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdemf.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdgdiplus.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdimage.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdirgb.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdiup.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdlua.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdlua3_private.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdlua5_private.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdluaim.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdluaiup.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdluapdf.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdmf.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdmf_private.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdnative.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdpdf.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdpicture.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdprint.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdps.h +0 -0
- data/ext/iup-mingw32/include/cdsvg.h +22 -0
- data/ext/{iup-win32 → iup-mingw32}/include/cdwmf.h +0 -0
- data/ext/iup-mingw32/include/im.h +287 -0
- data/ext/iup-mingw32/include/im_attrib.h +120 -0
- data/ext/iup-mingw32/include/im_attrib_flat.h +39 -0
- data/ext/iup-mingw32/include/im_binfile.h +224 -0
- data/ext/iup-mingw32/include/im_capture.h +365 -0
- data/ext/iup-mingw32/include/im_color.h +465 -0
- data/ext/iup-mingw32/include/im_colorhsi.h +56 -0
- data/ext/iup-mingw32/include/im_complex.h +180 -0
- data/ext/iup-mingw32/include/im_convert.h +142 -0
- data/ext/iup-mingw32/include/im_counter.h +69 -0
- data/ext/iup-mingw32/include/im_dib.h +195 -0
- data/ext/iup-mingw32/include/im_file.h +115 -0
- data/ext/iup-mingw32/include/im_format.h +97 -0
- data/ext/iup-mingw32/include/im_format_all.h +575 -0
- data/ext/iup-mingw32/include/im_format_avi.h +88 -0
- data/ext/iup-mingw32/include/im_format_ecw.h +93 -0
- data/ext/iup-mingw32/include/im_format_jp2.h +79 -0
- data/ext/iup-mingw32/include/im_format_raw.h +74 -0
- data/ext/iup-mingw32/include/im_format_wmv.h +101 -0
- data/ext/iup-mingw32/include/im_image.h +425 -0
- data/ext/iup-mingw32/include/im_kernel.h +315 -0
- data/ext/iup-mingw32/include/im_lib.h +191 -0
- data/ext/iup-mingw32/include/im_math.h +368 -0
- data/ext/iup-mingw32/include/im_math_op.h +214 -0
- data/ext/iup-mingw32/include/im_palette.h +172 -0
- data/ext/iup-mingw32/include/im_plus.h +73 -0
- data/ext/iup-mingw32/include/im_process.h +36 -0
- data/ext/iup-mingw32/include/im_process_ana.h +222 -0
- data/ext/iup-mingw32/include/im_process_glo.h +170 -0
- data/ext/iup-mingw32/include/im_process_loc.h +608 -0
- data/ext/iup-mingw32/include/im_process_pon.h +734 -0
- data/ext/iup-mingw32/include/im_raw.h +34 -0
- data/ext/iup-mingw32/include/im_util.h +277 -0
- data/ext/iup-mingw32/include/imlua.h +75 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iup.h +86 -40
- data/ext/{iup-win32 → iup-mingw32}/include/iup_pplot.h +0 -0
- data/ext/iup-mingw32/include/iupcb.h +1 -0
- data/ext/iup-mingw32/include/iupcbox.h +1 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupcbs.h +1 -1
- data/ext/iup-mingw32/include/iupcells.h +1 -0
- data/ext/iup-mingw32/include/iupcolorbar.h +1 -0
- data/ext/iup-mingw32/include/iupcontrols.h +46 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupdef.h +205 -0
- data/ext/iup-mingw32/include/iupdial.h +1 -0
- data/ext/iup-mingw32/include/iupgauge.h +1 -0
- data/ext/iup-mingw32/include/iupgc.h +1 -0
- data/ext/iup-mingw32/include/iupgetparam.h +1 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupgl.h +2 -7
- data/ext/{iup-win32 → iup-mingw32}/include/iupim.h +7 -1
- data/ext/{iup-win32 → iup-mingw32}/include/iupkey.h +4 -4
- data/ext/{iup-win32 → iup-mingw32}/include/iuplua.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iuplua_pplot.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupluacontrols.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupluagl.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupluaim.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupluaole.h +0 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupmask.h +2 -1
- data/ext/iup-mingw32/include/iupmatrix.h +1 -0
- data/ext/{iup-win32 → iup-mingw32}/include/iupole.h +0 -0
- data/ext/iup-mingw32/include/iupsbox.h +1 -0
- data/ext/iup-mingw32/include/iupspin.h +1 -0
- data/ext/iup-mingw32/include/iuptabs.h +1 -0
- data/ext/iup-mingw32/include/iuptree.h +1 -0
- data/ext/iup-mingw32/include/iupval.h +1 -0
- data/ext/iup-mingw32/include/old_im.h +59 -0
- data/ext/{iup-win32 → iup-mingw32}/include/wd.h +5 -0
- data/ext/{iup-win32 → iup-mingw32}/include/wd_old.h +0 -0
- data/ext/iup-mingw32/libcd.a +0 -0
- data/ext/iup-mingw32/libcdpdf.a +0 -0
- data/ext/iup-mingw32/libfreetype6.a +0 -0
- data/ext/iup-mingw32/libim.a +0 -0
- data/ext/iup-mingw32/libim_avi.a +0 -0
- data/ext/iup-mingw32/libim_fftw.a +0 -0
- data/ext/iup-mingw32/libim_jp2.a +0 -0
- data/ext/iup-mingw32/libim_process.a +0 -0
- data/ext/iup-mingw32/libiup.a +0 -0
- data/ext/iup-mingw32/libiup_pplot.a +0 -0
- data/ext/iup-mingw32/libiupcd.a +0 -0
- data/ext/iup-mingw32/libiupcontrols.a +0 -0
- data/ext/iup-mingw32/libiupgl.a +0 -0
- data/ext/iup-mingw32/libiupim.a +0 -0
- data/ext/iup-mingw32/libiupimglib.a +0 -0
- data/ext/iup-mingw32/libiupole.a +0 -0
- data/ext/iup-mingw32/libpdflib.a +0 -0
- data/ext/iup-mswin32/cd.lib +0 -0
- data/ext/iup-mswin32/cdcontextplus.lib +0 -0
- data/ext/iup-mswin32/cdgdk.lib +0 -0
- data/ext/iup-mswin32/cdpdf.lib +0 -0
- data/ext/iup-mswin32/freetype6.lib +0 -0
- data/ext/iup-mswin32/im.lib +0 -0
- data/ext/iup-mswin32/im_avi.lib +0 -0
- data/ext/iup-mswin32/im_capture.lib +0 -0
- data/ext/iup-mswin32/im_fftw.lib +0 -0
- data/ext/iup-mswin32/im_jp2.lib +0 -0
- data/ext/iup-mswin32/im_process.lib +0 -0
- data/ext/iup-mswin32/im_wmv.lib +0 -0
- data/ext/iup-mswin32/include/cd.h +498 -0
- data/ext/iup-mswin32/include/cd_canvas.hpp +358 -0
- data/ext/iup-mswin32/include/cd_old.h +158 -0
- data/ext/iup-mswin32/include/cd_private.h +369 -0
- data/ext/iup-mswin32/include/cdcgm.h +34 -0
- data/ext/iup-mswin32/include/cdclipbd.h +22 -0
- data/ext/iup-mswin32/include/cddbuf.h +23 -0
- data/ext/iup-mswin32/include/cddebug.h +24 -0
- data/ext/iup-mswin32/include/cddgn.h +23 -0
- data/ext/iup-mswin32/include/cddxf.h +22 -0
- data/ext/iup-mswin32/include/cdemf.h +22 -0
- data/ext/iup-mswin32/include/cdgdiplus.h +29 -0
- data/ext/iup-mswin32/include/cdimage.h +23 -0
- data/ext/iup-mswin32/include/cdirgb.h +30 -0
- data/ext/iup-mswin32/include/cdiup.h +22 -0
- data/ext/iup-mswin32/include/cdlua.h +39 -0
- data/ext/iup-mswin32/include/cdlua3_private.h +120 -0
- data/ext/iup-mswin32/include/cdlua5_private.h +141 -0
- data/ext/iup-mswin32/include/cdluaim.h +24 -0
- data/ext/iup-mswin32/include/cdluaiup.h +27 -0
- data/ext/iup-mswin32/include/cdluapdf.h +27 -0
- data/ext/iup-mswin32/include/cdmf.h +24 -0
- data/ext/iup-mswin32/include/cdmf_private.h +32 -0
- data/ext/iup-mswin32/include/cdnative.h +26 -0
- data/ext/iup-mswin32/include/cdpdf.h +38 -0
- data/ext/iup-mswin32/include/cdpicture.h +22 -0
- data/ext/iup-mswin32/include/cdprint.h +23 -0
- data/ext/iup-mswin32/include/cdps.h +37 -0
- data/ext/iup-mswin32/include/cdsvg.h +22 -0
- data/ext/iup-mswin32/include/cdwmf.h +22 -0
- data/ext/iup-mswin32/include/im.h +287 -0
- data/ext/iup-mswin32/include/im_attrib.h +120 -0
- data/ext/iup-mswin32/include/im_attrib_flat.h +39 -0
- data/ext/iup-mswin32/include/im_binfile.h +224 -0
- data/ext/iup-mswin32/include/im_capture.h +365 -0
- data/ext/iup-mswin32/include/im_color.h +465 -0
- data/ext/iup-mswin32/include/im_colorhsi.h +56 -0
- data/ext/iup-mswin32/include/im_complex.h +180 -0
- data/ext/iup-mswin32/include/im_convert.h +142 -0
- data/ext/iup-mswin32/include/im_counter.h +69 -0
- data/ext/iup-mswin32/include/im_dib.h +195 -0
- data/ext/iup-mswin32/include/im_file.h +115 -0
- data/ext/iup-mswin32/include/im_format.h +97 -0
- data/ext/iup-mswin32/include/im_format_all.h +575 -0
- data/ext/iup-mswin32/include/im_format_avi.h +88 -0
- data/ext/iup-mswin32/include/im_format_ecw.h +93 -0
- data/ext/iup-mswin32/include/im_format_jp2.h +79 -0
- data/ext/iup-mswin32/include/im_format_raw.h +74 -0
- data/ext/iup-mswin32/include/im_format_wmv.h +101 -0
- data/ext/iup-mswin32/include/im_image.h +425 -0
- data/ext/iup-mswin32/include/im_kernel.h +315 -0
- data/ext/iup-mswin32/include/im_lib.h +191 -0
- data/ext/iup-mswin32/include/im_math.h +368 -0
- data/ext/iup-mswin32/include/im_math_op.h +214 -0
- data/ext/iup-mswin32/include/im_palette.h +172 -0
- data/ext/iup-mswin32/include/im_plus.h +73 -0
- data/ext/iup-mswin32/include/im_process.h +36 -0
- data/ext/iup-mswin32/include/im_process_ana.h +222 -0
- data/ext/iup-mswin32/include/im_process_glo.h +170 -0
- data/ext/iup-mswin32/include/im_process_loc.h +608 -0
- data/ext/iup-mswin32/include/im_process_pon.h +734 -0
- data/ext/iup-mswin32/include/im_raw.h +34 -0
- data/ext/iup-mswin32/include/im_util.h +277 -0
- data/ext/iup-mswin32/include/imlua.h +75 -0
- data/ext/iup-mswin32/include/iup.h +364 -0
- data/ext/iup-mswin32/include/iup_pplot.h +40 -0
- data/ext/iup-mswin32/include/iupcb.h +1 -0
- data/ext/iup-mswin32/include/iupcbox.h +1 -0
- data/ext/iup-mswin32/include/iupcbs.h +43 -0
- data/ext/iup-mswin32/include/iupcells.h +1 -0
- data/ext/iup-mswin32/include/iupcolorbar.h +1 -0
- data/ext/iup-mswin32/include/iupcontrols.h +46 -0
- data/ext/iup-mswin32/include/iupdef.h +725 -0
- data/ext/iup-mswin32/include/iupdial.h +1 -0
- data/ext/iup-mswin32/include/iupgauge.h +1 -0
- data/ext/iup-mswin32/include/iupgc.h +1 -0
- data/ext/iup-mswin32/include/iupgetparam.h +1 -0
- data/ext/iup-mswin32/include/iupgl.h +96 -0
- data/ext/iup-mswin32/include/iupim.h +27 -0
- data/ext/iup-mswin32/include/iupkey.h +457 -0
- data/ext/iup-mswin32/include/iuplua.h +41 -0
- data/ext/iup-mswin32/include/iuplua_pplot.h +26 -0
- data/ext/iup-mswin32/include/iupluacontrols.h +27 -0
- data/ext/iup-mswin32/include/iupluagl.h +26 -0
- data/ext/iup-mswin32/include/iupluaim.h +26 -0
- data/ext/iup-mswin32/include/iupluaole.h +26 -0
- data/ext/iup-mswin32/include/iupmask.h +41 -0
- data/ext/iup-mswin32/include/iupmatrix.h +1 -0
- data/ext/iup-mswin32/include/iupole.h +24 -0
- data/ext/iup-mswin32/include/iupsbox.h +1 -0
- data/ext/iup-mswin32/include/iupspin.h +1 -0
- data/ext/iup-mswin32/include/iuptabs.h +1 -0
- data/ext/iup-mswin32/include/iuptree.h +1 -0
- data/ext/iup-mswin32/include/iupval.h +1 -0
- data/ext/iup-mswin32/include/old_im.h +59 -0
- data/ext/iup-mswin32/include/wd.h +83 -0
- data/ext/iup-mswin32/include/wd_old.h +85 -0
- data/ext/iup-mswin32/iup.lib +0 -0
- data/ext/iup-mswin32/iup_pplot.lib +0 -0
- data/ext/iup-mswin32/iupcd.lib +0 -0
- data/ext/iup-mswin32/iupcontrols.lib +0 -0
- data/ext/iup-mswin32/iupgl.lib +0 -0
- data/ext/iup-mswin32/iupgtk.lib +0 -0
- data/ext/iup-mswin32/iupim.lib +0 -0
- data/ext/{iup-win32/iupimglib.dll → iup-mswin32/iupimglib.lib} +0 -0
- data/ext/iup-mswin32/iupole.lib +0 -0
- data/ext/iup-mswin32/pdflib.lib +0 -0
- data/ext/iup.c +6 -37
- data/ext/{rb_cd.h → rb_cd.c} +300 -302
- data/ext/rb_iup.c +2485 -0
- data/ext/rb_iup.h +400 -2475
- data/ext/{rb_iup_pplot.h → rb_iup_pplot.c} +21 -22
- data/ext/{rb_iupcb.h → rb_iupcb.c} +2 -3
- data/ext/{rb_iupcells.h → rb_iupcells.c} +5 -5
- data/ext/{rb_iupcolorbar.h → rb_iupcolorbar.c} +2 -3
- data/ext/{rb_iupcontrols.h → rb_iupcontrols.c} +1 -1
- data/ext/{rb_iupdial.h → rb_iupdial.c} +3 -4
- data/ext/{rb_iupgauge.h → rb_iupgauge.c} +2 -3
- data/ext/{rb_iupgc.h → rb_iupgc.c} +1 -1
- data/ext/{rb_iupgetparam.h → rb_iupgetparam.c} +12 -10
- data/ext/{rb_iupgl.h → rb_iupgl.c} +10 -10
- data/ext/{rb_iupim.h → rb_iupim.c} +6 -6
- data/ext/{rb_iupmatrix.h → rb_iupmatrix.c} +15 -16
- data/ext/{rb_iupole.h → rb_iupole.c} +4 -4
- data/ext/{rb_iupsbox.h → rb_iupsbox.c} +3 -3
- data/ext/{rb_iupspin.h → rb_iupspin.c} +4 -5
- data/ext/{rb_iuptabs.h → rb_iuptabs.c} +5 -6
- data/ext/{rb_iuptree.h → rb_iuptree.c} +20 -21
- data/ext/{rb_iupval.h → rb_iupval.c} +3 -4
- data/ruby-iup.gemspec +26 -0
- data/test/test_ruby_iup.rb +25 -0
- metadata +395 -270
- data/ext/iup-linux/include/lauxlib.h +0 -174
- data/ext/iup-linux/include/lua.h +0 -388
- data/ext/iup-linux/include/lua.hpp +0 -9
- data/ext/iup-linux/include/luaconf.h +0 -763
- data/ext/iup-linux/include/lualib.h +0 -53
- data/ext/iup-linux/libcd.so +0 -0
- data/ext/iup-linux/libcdcontextplus.so +0 -0
- data/ext/iup-linux/libcdpdf.so +0 -0
- data/ext/iup-linux/libfreetype.so +0 -0
- data/ext/iup-linux/libim.so +0 -0
- data/ext/iup-linux/libim_fftw.so +0 -0
- data/ext/iup-linux/libim_jp2.so +0 -0
- data/ext/iup-linux/libim_process.so +0 -0
- data/ext/iup-linux/libiup.so +0 -0
- data/ext/iup-linux/libiup_pplot.so +0 -0
- data/ext/iup-linux/libiupcd.so +0 -0
- data/ext/iup-linux/libiupcontrols.so +0 -0
- data/ext/iup-linux/libiupgl.so +0 -0
- data/ext/iup-linux/libiupim.so +0 -0
- data/ext/iup-linux/libiupimglib.so +0 -0
- data/ext/iup-linux/libiupmot.so +0 -0
- data/ext/iup-linux/libpdflib.so +0 -0
- data/ext/iup-win32/cd.dll +0 -0
- data/ext/iup-win32/cd.lib +0 -0
- data/ext/iup-win32/cdcontextplus.dll +0 -0
- data/ext/iup-win32/cdcontextplus.lib +0 -0
- data/ext/iup-win32/cdpdf.dll +0 -0
- data/ext/iup-win32/cdpdf.lib +0 -0
- data/ext/iup-win32/freetype6.dll +0 -0
- data/ext/iup-win32/freetype6.lib +0 -0
- data/ext/iup-win32/im.dll +0 -0
- data/ext/iup-win32/im.lib +0 -0
- data/ext/iup-win32/im_avi.dll +0 -0
- data/ext/iup-win32/im_avi.lib +0 -0
- data/ext/iup-win32/im_capture.dll +0 -0
- data/ext/iup-win32/im_capture.lib +0 -0
- data/ext/iup-win32/im_ecw.dll +0 -0
- data/ext/iup-win32/im_fftw.dll +0 -0
- data/ext/iup-win32/im_fftw.lib +0 -0
- data/ext/iup-win32/im_jp2.dll +0 -0
- data/ext/iup-win32/im_jp2.lib +0 -0
- data/ext/iup-win32/im_process.dll +0 -0
- data/ext/iup-win32/im_process.lib +0 -0
- data/ext/iup-win32/im_wmv.dll +0 -0
- data/ext/iup-win32/im_wmv.lib +0 -0
- data/ext/iup-win32/imlua_capture51.dll +0 -0
- data/ext/iup-win32/imlua_capture51.lib +0 -0
- data/ext/iup-win32/imlua_wmv51.dll +0 -0
- data/ext/iup-win32/imlua_wmv51.lib +0 -0
- data/ext/iup-win32/include/iupcb.h +0 -25
- data/ext/iup-win32/include/iupcells.h +0 -130
- data/ext/iup-win32/include/iupcolorbar.h +0 -126
- data/ext/iup-win32/include/iupcontrols.h +0 -36
- data/ext/iup-win32/include/iupdial.h +0 -63
- data/ext/iup-win32/include/iupgauge.h +0 -57
- data/ext/iup-win32/include/iupgetparam.h +0 -27
- data/ext/iup-win32/include/iupmatrix.h +0 -63
- data/ext/iup-win32/include/iupspin.h +0 -21
- data/ext/iup-win32/include/iuptabs.h +0 -75
- data/ext/iup-win32/include/iuptree.h +0 -93
- data/ext/iup-win32/include/iupval.h +0 -46
- data/ext/iup-win32/iup.dll +0 -0
- data/ext/iup-win32/iup.lib +0 -0
- data/ext/iup-win32/iup_pplot.dll +0 -0
- data/ext/iup-win32/iup_pplot.lib +0 -0
- data/ext/iup-win32/iupcd.dll +0 -0
- data/ext/iup-win32/iupcd.lib +0 -0
- data/ext/iup-win32/iupcontrols.dll +0 -0
- data/ext/iup-win32/iupcontrols.lib +0 -0
- data/ext/iup-win32/iupgl.dll +0 -0
- data/ext/iup-win32/iupgl.lib +0 -0
- data/ext/iup-win32/iupgtk.dll +0 -0
- data/ext/iup-win32/iupgtk.lib +0 -0
- data/ext/iup-win32/iupim.dll +0 -0
- data/ext/iup-win32/iupim.lib +0 -0
- data/ext/iup-win32/iupimglib.lib +0 -0
- data/ext/iup-win32/iupole.dll +0 -0
- data/ext/iup-win32/iupole.lib +0 -0
- data/ext/iup-win32/iupstub.lib +0 -0
- data/ext/iup-win32/pdflib.dll +0 -0
- data/ext/iup-win32/pdflib.lib +0 -0
- data/ext/mkrf_conf.rb +0 -72
- data/ext/rb_iupcompat.h +0 -237
- data/ext/rb_iupdef.h +0 -3
- data/ext/rb_iupmask.h +0 -189
- data/lib/README +0 -1
@@ -1,127 +1,142 @@
|
|
1
|
-
/** \file
|
2
|
-
* \brief Image Conversion
|
3
|
-
*
|
4
|
-
* See Copyright Notice in im_lib.h
|
5
|
-
*/
|
6
|
-
|
7
|
-
#ifndef __IM_CONVERT_H
|
8
|
-
#define __IM_CONVERT_H
|
9
|
-
|
10
|
-
#include "im_image.h"
|
11
|
-
|
12
|
-
#if defined(__cplusplus)
|
13
|
-
extern "C" {
|
14
|
-
#endif
|
15
|
-
|
16
|
-
|
17
|
-
/** \defgroup convert Image Conversion
|
18
|
-
* \par
|
19
|
-
* Converts one type of image into another. Can convert between color modes
|
20
|
-
* and between data types.
|
21
|
-
* \par
|
22
|
-
* See \ref im_convert.h
|
23
|
-
* \ingroup imgclass */
|
24
|
-
|
25
|
-
|
26
|
-
/** Complex to real conversions
|
27
|
-
* \ingroup convert */
|
28
|
-
enum imComplex2Real
|
29
|
-
{
|
30
|
-
IM_CPX_REAL,
|
31
|
-
IM_CPX_IMAG,
|
32
|
-
IM_CPX_MAG,
|
33
|
-
IM_CPX_PHASE
|
34
|
-
};
|
35
|
-
|
36
|
-
/** Predefined Gamma factors. Gamma can be any real number.
|
37
|
-
* When gamma<0 use logarithmic, when gamma>0 use exponential.
|
38
|
-
* gamma(x,g) = ((e^(g*x))-1)/(exp(g)-1)
|
39
|
-
* gamma(x,g) = (log((g*x)+1))/(log(g+1))
|
40
|
-
* \ingroup convert */
|
41
|
-
enum imGammaFactor
|
42
|
-
{
|
43
|
-
IM_GAMMA_LINEAR = 0,
|
44
|
-
IM_GAMMA_LOGLITE = -10,
|
45
|
-
IM_GAMMA_LOGHEAVY = -1000,
|
46
|
-
IM_GAMMA_EXPLITE = 2,
|
47
|
-
IM_GAMMA_EXPHEAVY = 7
|
48
|
-
};
|
49
|
-
|
50
|
-
/** Predefined Cast Modes
|
51
|
-
* \ingroup convert */
|
52
|
-
enum imCastMode
|
53
|
-
{
|
54
|
-
IM_CAST_MINMAX, /**< scan for min and max values */
|
55
|
-
IM_CAST_FIXED, /**< use predefied 0-max values, see \ref color Color Manipulation. */
|
56
|
-
IM_CAST_DIRECT /**< direct type cast the value. Only byte and ushort will be cropped. */
|
57
|
-
};
|
58
|
-
|
59
|
-
/** Changes the image data type, using a complex2real conversion,
|
60
|
-
* a gamma factor, and an abssolute mode (modulus). \n
|
61
|
-
* When demoting the data type the function will scan for min/max values or use fixed values (cast_mode)
|
62
|
-
* to scale the result according to the destiny range. \n
|
63
|
-
* Except complex to real that will use only the complex2real conversion. \n
|
64
|
-
* Images must be of the same size and color mode. \n
|
65
|
-
* Returns IM_ERR_NONE, IM_ERR_DATA or IM_ERR_COUNTER, see also \ref imErrorCodes.
|
66
|
-
* See also \ref imComplex2Real, \ref imGammaFactor and \ref imCastMode.
|
67
|
-
*
|
68
|
-
* \verbatim im.ConvertDataType(src_image: imImage, dst_image: imImage, cpx2real: number, gamma: number, abssolute:
|
69
|
-
* \
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
*
|
75
|
-
*
|
76
|
-
*
|
77
|
-
*
|
78
|
-
*
|
79
|
-
*
|
80
|
-
*
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
*
|
88
|
-
*
|
89
|
-
* \
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
*
|
96
|
-
|
97
|
-
|
98
|
-
*
|
99
|
-
*
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
*
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
*
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
1
|
+
/** \file
|
2
|
+
* \brief Image Conversion
|
3
|
+
*
|
4
|
+
* See Copyright Notice in im_lib.h
|
5
|
+
*/
|
6
|
+
|
7
|
+
#ifndef __IM_CONVERT_H
|
8
|
+
#define __IM_CONVERT_H
|
9
|
+
|
10
|
+
#include "im_image.h"
|
11
|
+
|
12
|
+
#if defined(__cplusplus)
|
13
|
+
extern "C" {
|
14
|
+
#endif
|
15
|
+
|
16
|
+
|
17
|
+
/** \defgroup convert Image Conversion
|
18
|
+
* \par
|
19
|
+
* Converts one type of image into another. Can convert between color modes
|
20
|
+
* and between data types.
|
21
|
+
* \par
|
22
|
+
* See \ref im_convert.h
|
23
|
+
* \ingroup imgclass */
|
24
|
+
|
25
|
+
|
26
|
+
/** Complex to real conversions
|
27
|
+
* \ingroup convert */
|
28
|
+
enum imComplex2Real
|
29
|
+
{
|
30
|
+
IM_CPX_REAL,
|
31
|
+
IM_CPX_IMAG,
|
32
|
+
IM_CPX_MAG,
|
33
|
+
IM_CPX_PHASE
|
34
|
+
};
|
35
|
+
|
36
|
+
/** Predefined Gamma factors. Gamma can be any real number.
|
37
|
+
* When gamma<0 use logarithmic, when gamma>0 use exponential.
|
38
|
+
* gamma(x,g) = ((e^(g*x))-1)/(exp(g)-1)
|
39
|
+
* gamma(x,g) = (log((g*x)+1))/(log(g+1))
|
40
|
+
* \ingroup convert */
|
41
|
+
enum imGammaFactor
|
42
|
+
{
|
43
|
+
IM_GAMMA_LINEAR = 0,
|
44
|
+
IM_GAMMA_LOGLITE = -10,
|
45
|
+
IM_GAMMA_LOGHEAVY = -1000,
|
46
|
+
IM_GAMMA_EXPLITE = 2,
|
47
|
+
IM_GAMMA_EXPHEAVY = 7
|
48
|
+
};
|
49
|
+
|
50
|
+
/** Predefined Cast Modes
|
51
|
+
* \ingroup convert */
|
52
|
+
enum imCastMode
|
53
|
+
{
|
54
|
+
IM_CAST_MINMAX, /**< scan for min and max values */
|
55
|
+
IM_CAST_FIXED, /**< use predefied 0-max values, see \ref color Color Manipulation. */
|
56
|
+
IM_CAST_DIRECT /**< direct type cast the value. Only byte and ushort will be cropped. */
|
57
|
+
};
|
58
|
+
|
59
|
+
/** Changes the image data type, using a complex2real conversion,
|
60
|
+
* a gamma factor, and an abssolute mode (modulus). \n
|
61
|
+
* When demoting the data type the function will scan for min/max values or use fixed values (cast_mode)
|
62
|
+
* to scale the result according to the destiny range. \n
|
63
|
+
* Except complex to real that will use only the complex2real conversion. \n
|
64
|
+
* Images must be of the same size and color mode. \n
|
65
|
+
* Returns IM_ERR_NONE, IM_ERR_DATA or IM_ERR_COUNTER, see also \ref imErrorCodes.
|
66
|
+
* See also \ref imComplex2Real, \ref imGammaFactor and \ref imCastMode.
|
67
|
+
*
|
68
|
+
* \verbatim im.ConvertDataType(src_image: imImage, dst_image: imImage, cpx2real: number, gamma: number, abssolute: boolean, cast_mode: number) -> error: number [in Lua 5] \endverbatim
|
69
|
+
* \verbatim im.ConvertDataTypeNew(image: imImage, data_type: number, cpx2real: number, gamma: number, abssolute: boolean, cast_mode: number) -> error: number, new_image: imImage [in Lua 5] \endverbatim
|
70
|
+
* \ingroup convert */
|
71
|
+
int imConvertDataType(const imImage* src_image, imImage* dst_image, int cpx2real, float gamma, int abssolute, int cast_mode);
|
72
|
+
|
73
|
+
/** Converts one color space to another. Images must be of the same size and data type. \n
|
74
|
+
* CMYK can be converted to RGB only, and it is a very simple conversion. \n
|
75
|
+
* All colors can be converted to Binary, the non zero gray values are converted to 1. \n
|
76
|
+
* RGB to Map uses the median cut implementation from the free IJG JPEG software, copyright Thomas G. Lane. \n
|
77
|
+
* Alpha channel is considered and Transparency* attributes are converted to alpha channel. \n
|
78
|
+
* All other color space conversions assume sRGB and CIE definitions. \n
|
79
|
+
* Returns IM_ERR_NONE, IM_ERR_DATA or IM_ERR_COUNTER, see also \ref imErrorCodes.
|
80
|
+
*
|
81
|
+
* \verbatim im.ConvertColorSpace(src_image: imImage, dst_image: imImage) -> error: number [in Lua 5] \endverbatim
|
82
|
+
* \verbatim im.ConvertColorSpaceNew(image: imImage, color_space: number, has_alpha: boolean) -> error: number, new_image: imImage [in Lua 5] \endverbatim
|
83
|
+
* \ingroup convert */
|
84
|
+
int imConvertColorSpace(const imImage* src_image, imImage* dst_image);
|
85
|
+
|
86
|
+
/** Converts the image to its bitmap equivalent,
|
87
|
+
* uses \ref imConvertColorSpace and \ref imConvertDataType. \n
|
88
|
+
* Returns IM_ERR_NONE, IM_ERR_DATA or IM_ERR_COUNTER, see also \ref imErrorCodes.
|
89
|
+
* See also \ref imComplex2Real, \ref imGammaFactor and \ref imCastMode. \n
|
90
|
+
* The function im.ConvertToBitmapNew uses the default convertion result from \ref imColorModeToBitmap if color_space is nil.
|
91
|
+
*
|
92
|
+
* \verbatim im.ConvertToBitmap(src_image: imImage, dst_image: imImage, cpx2real: number, gamma: number, abssolute: boolean, cast_mode: number) -> error: number [in Lua 5] \endverbatim
|
93
|
+
* \verbatim im.ConvertToBitmapNew(image: imImage, color_space: number, has_alpha: boolean, cpx2real: number, gamma: number, abssolute: boolean, cast_mode: number) -> error: number, new_image: imImage [in Lua 5] \endverbatim
|
94
|
+
* \ingroup convert */
|
95
|
+
int imConvertToBitmap(const imImage* src_image, imImage* dst_image, int cpx2real, float gamma, int abssolute, int cast_mode);
|
96
|
+
|
97
|
+
/** Returns an OpenGL compatible data buffer. Also returns the correspondant pixel format. \n
|
98
|
+
* The memory allocated is stored in the attribute "GLDATA" with BYTE type. And it will exists while the image exists. \n
|
99
|
+
* It can be cleared by setting the attribute to NULL. \n
|
100
|
+
* MAP images are converted to RGB, and BINARY images are converted to GRAY.
|
101
|
+
* Alpha channel is considered and Transparency* attributes are converted to alpha channel.
|
102
|
+
* So calculate depth from glformat, not from image depth.
|
103
|
+
*
|
104
|
+
* \verbatim image:GetOpenGLData() -> gldata: userdata, glformat: number [in Lua 5] \endverbatim
|
105
|
+
* \ingroup convert */
|
106
|
+
void* imImageGetOpenGLData(const imImage* image, int *glformat);
|
107
|
+
|
108
|
+
|
109
|
+
|
110
|
+
/** \defgroup cnvutil Raw Data Conversion Utilities
|
111
|
+
* \par
|
112
|
+
* Utilities for raw data buffers.
|
113
|
+
* \par
|
114
|
+
* See \ref im_convert.h
|
115
|
+
* \ingroup imagerep */
|
116
|
+
|
117
|
+
|
118
|
+
/** Changes the packing of the data buffer. Both must have the same depth.
|
119
|
+
* \ingroup cnvutil */
|
120
|
+
void imConvertPacking(const void* src_data, void* dst_data, int width, int height, int depth, int data_type, int src_is_packed);
|
121
|
+
|
122
|
+
/** Changes in-place a MAP data into a RGB data. The data must have room for the RGB image. \n
|
123
|
+
* depth can be 3 or 4. count=width*height. \n
|
124
|
+
* \ingroup cnvutil */
|
125
|
+
void imConvertMapToRGB(unsigned char* data, int count, int depth, int packed, long* palette, int palette_count);
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
/* Converts a RGB bitmap into a map bitmap using the median cut algorithm.
|
130
|
+
* Used only "im_convertcolor.cpp" implemented in "im_rgb2map.cpp".
|
131
|
+
* Internal function kept here because of the compatibility module.
|
132
|
+
* Will not be at the documentation. */
|
133
|
+
int imConvertRGB2Map(int width, int height,
|
134
|
+
unsigned char *red, unsigned char *green, unsigned char *blue,
|
135
|
+
unsigned char *map, long *palette, int *palette_count);
|
136
|
+
|
137
|
+
|
138
|
+
#if defined(__cplusplus)
|
139
|
+
}
|
140
|
+
#endif
|
141
|
+
|
142
|
+
#endif
|
@@ -1,69 +1,69 @@
|
|
1
|
-
/** \file
|
2
|
-
* \brief Processing Counter
|
3
|
-
*
|
4
|
-
* See Copyright Notice in im_lib.h
|
5
|
-
*/
|
6
|
-
|
7
|
-
#ifndef __IM_COUNTER_H
|
8
|
-
#define __IM_COUNTER_H
|
9
|
-
|
10
|
-
#if defined(__cplusplus)
|
11
|
-
extern "C" {
|
12
|
-
#endif
|
13
|
-
|
14
|
-
|
15
|
-
/** \defgroup counter Counter
|
16
|
-
* \par
|
17
|
-
* Used to notify the application that a step in the loading, saving or processing operation has been performed.
|
18
|
-
* \par
|
19
|
-
* See \ref im_counter.h
|
20
|
-
* \ingroup util */
|
21
|
-
|
22
|
-
/** Counter callback, informs the progress of the operation to the client. \n
|
23
|
-
* Text contains a constant string that is NULL during normal counting, a title in the begining of a sequence
|
24
|
-
* and a message in the begining of a count.
|
25
|
-
* Counter id identifies diferrent counters. \n
|
26
|
-
* Progress in a count reports a value from 0 to 1000. If -1 indicates the start of a sequence of operations, 1001 ends the sequence. \n
|
27
|
-
* If returns 0 the client should abort the operation. \n
|
28
|
-
* If the counter is aborted, the callback will be called one last time at 1001.
|
29
|
-
* \ingroup counter */
|
30
|
-
typedef int (*imCounterCallback)(int counter, void* user_data, const char* text, int progress);
|
31
|
-
|
32
|
-
/** Changes the counter callback. Returns old callback. \n
|
33
|
-
* User data is changed only if not NULL.
|
34
|
-
* \ingroup counter */
|
35
|
-
imCounterCallback imCounterSetCallback(void* user_data, imCounterCallback counter_func);
|
36
|
-
|
37
|
-
/** Begins a new count, or a partial-count in a sequence. \n
|
38
|
-
* Calls the callback with "-1" and text=title, if it is at the top level. \n
|
39
|
-
* This is to be used by the operations. Returns a counter Id.
|
40
|
-
* \ingroup counter */
|
41
|
-
int imCounterBegin(const char* title);
|
42
|
-
|
43
|
-
/** Ends a count, or a partial-count in a sequence. \n
|
44
|
-
* Calls the callback with "1001", text=null, and releases the counter if it is at top level count. \n
|
45
|
-
* \ingroup counter */
|
46
|
-
void imCounterEnd(int counter);
|
47
|
-
|
48
|
-
/** Increments a count. Must set the total first. \n
|
49
|
-
* Calls the callback, text=message if it is the first increment for the count. \n
|
50
|
-
* Returns 0 if the callback aborted, 1 if returns normally.
|
51
|
-
* \ingroup counter */
|
52
|
-
int imCounterInc(int counter);
|
53
|
-
|
54
|
-
/** Set a specific count. Must set the total first. \n
|
55
|
-
* Calls the callback, text=message if it is the first increment for the count. \n
|
56
|
-
* Returns 0 if the callback aborted, 1 if returns normally.
|
57
|
-
* \ingroup counter */
|
58
|
-
int imCounterIncTo(int counter, int count);
|
59
|
-
|
60
|
-
/** Sets the total increments of a count.
|
61
|
-
* \ingroup counter */
|
62
|
-
void imCounterTotal(int counter, int total, const char* message);
|
63
|
-
|
64
|
-
|
65
|
-
#if defined(__cplusplus)
|
66
|
-
}
|
67
|
-
#endif
|
68
|
-
|
69
|
-
#endif
|
1
|
+
/** \file
|
2
|
+
* \brief Processing Counter
|
3
|
+
*
|
4
|
+
* See Copyright Notice in im_lib.h
|
5
|
+
*/
|
6
|
+
|
7
|
+
#ifndef __IM_COUNTER_H
|
8
|
+
#define __IM_COUNTER_H
|
9
|
+
|
10
|
+
#if defined(__cplusplus)
|
11
|
+
extern "C" {
|
12
|
+
#endif
|
13
|
+
|
14
|
+
|
15
|
+
/** \defgroup counter Counter
|
16
|
+
* \par
|
17
|
+
* Used to notify the application that a step in the loading, saving or processing operation has been performed.
|
18
|
+
* \par
|
19
|
+
* See \ref im_counter.h
|
20
|
+
* \ingroup util */
|
21
|
+
|
22
|
+
/** Counter callback, informs the progress of the operation to the client. \n
|
23
|
+
* Text contains a constant string that is NULL during normal counting, a title in the begining of a sequence
|
24
|
+
* and a message in the begining of a count.
|
25
|
+
* Counter id identifies diferrent counters. \n
|
26
|
+
* Progress in a count reports a value from 0 to 1000. If -1 indicates the start of a sequence of operations, 1001 ends the sequence. \n
|
27
|
+
* If returns 0 the client should abort the operation. \n
|
28
|
+
* If the counter is aborted, the callback will be called one last time at 1001.
|
29
|
+
* \ingroup counter */
|
30
|
+
typedef int (*imCounterCallback)(int counter, void* user_data, const char* text, int progress);
|
31
|
+
|
32
|
+
/** Changes the counter callback. Returns old callback. \n
|
33
|
+
* User data is changed only if not NULL.
|
34
|
+
* \ingroup counter */
|
35
|
+
imCounterCallback imCounterSetCallback(void* user_data, imCounterCallback counter_func);
|
36
|
+
|
37
|
+
/** Begins a new count, or a partial-count in a sequence. \n
|
38
|
+
* Calls the callback with "-1" and text=title, if it is at the top level. \n
|
39
|
+
* This is to be used by the operations. Returns a counter Id.
|
40
|
+
* \ingroup counter */
|
41
|
+
int imCounterBegin(const char* title);
|
42
|
+
|
43
|
+
/** Ends a count, or a partial-count in a sequence. \n
|
44
|
+
* Calls the callback with "1001", text=null, and releases the counter if it is at top level count. \n
|
45
|
+
* \ingroup counter */
|
46
|
+
void imCounterEnd(int counter);
|
47
|
+
|
48
|
+
/** Increments a count. Must set the total first. \n
|
49
|
+
* Calls the callback, text=message if it is the first increment for the count. \n
|
50
|
+
* Returns 0 if the callback aborted, 1 if returns normally.
|
51
|
+
* \ingroup counter */
|
52
|
+
int imCounterInc(int counter);
|
53
|
+
|
54
|
+
/** Set a specific count. Must set the total first. \n
|
55
|
+
* Calls the callback, text=message if it is the first increment for the count. \n
|
56
|
+
* Returns 0 if the callback aborted, 1 if returns normally.
|
57
|
+
* \ingroup counter */
|
58
|
+
int imCounterIncTo(int counter, int count);
|
59
|
+
|
60
|
+
/** Sets the total increments of a count.
|
61
|
+
* \ingroup counter */
|
62
|
+
void imCounterTotal(int counter, int total, const char* message);
|
63
|
+
|
64
|
+
|
65
|
+
#if defined(__cplusplus)
|
66
|
+
}
|
67
|
+
#endif
|
68
|
+
|
69
|
+
#endif
|
@@ -1,195 +1,195 @@
|
|
1
|
-
/** \file
|
2
|
-
* \brief Windows DIB (Device Independent Bitmap)
|
3
|
-
*
|
4
|
-
* See Copyright Notice in im_lib.h
|
5
|
-
*/
|
6
|
-
|
7
|
-
#ifndef __IM_DIB_H
|
8
|
-
#define __IM_DIB_H
|
9
|
-
|
10
|
-
#if defined(__cplusplus)
|
11
|
-
extern "C" {
|
12
|
-
#endif
|
13
|
-
|
14
|
-
|
15
|
-
/** \defgroup dib Windows DIB
|
16
|
-
*
|
17
|
-
* \par
|
18
|
-
* Windows DIBs in memory are handled just like a BMP file without the file header. \n
|
19
|
-
* These functions will work only in Windows. They are usefull for interchanging data
|
20
|
-
* with the clipboard, with capture drivers, with the AVI and WMF file formats and others.
|
21
|
-
* \par
|
22
|
-
* Supported DIB aspects:
|
23
|
-
* \li bpp must be 1, 4, 8, 16, 24, or 32.
|
24
|
-
* \li BITMAPV4HEADER or BITMAPV5HEADER are handled but ignored. \n
|
25
|
-
* \li BITMAPCOREHEADER is not handled .
|
26
|
-
* \li BI_JPEG and BI_PNG compressions are not handled.
|
27
|
-
* \li biHeight can be negative, compression can be RLE only if created
|
28
|
-
* from imDibCreateReference, imDibPasteClipboard, imDibLoadFile.
|
29
|
-
* \li can not encode/decode Images to/from RLE compressed Dibs.
|
30
|
-
* \li if working with RLE Dibs bits_size is greatter than used.
|
31
|
-
* \li the resolution of a new Dib is taken from the screen.
|
32
|
-
* \li SetDIBitsToDevice(start_scan is 0, scan_lines is dib->bmih->biHeight).
|
33
|
-
* \li StretchDIBits(use always DIB_RGB_COLORS).
|
34
|
-
* \li CreateDIBPatternBrushPt(packed_dib is dib->dib).
|
35
|
-
* \par
|
36
|
-
* Must include <windows.h> before using these functions. \n
|
37
|
-
* Check <wingdi.h> for structures and definitions.
|
38
|
-
* \par
|
39
|
-
* See \ref im_dib.h
|
40
|
-
* \ingroup util */
|
41
|
-
|
42
|
-
|
43
|
-
/** \brief Windows DIB Structure
|
44
|
-
*
|
45
|
-
* \par
|
46
|
-
* Handles a DIB in memory. \n
|
47
|
-
* The DIB is stored in only one buffer.
|
48
|
-
* The secondary members are pointers to the main buffer.
|
49
|
-
* \ingroup dib */
|
50
|
-
typedef struct _imDib
|
51
|
-
{
|
52
|
-
HGLOBAL handle; /**< The windows memory handle */
|
53
|
-
BYTE* dib; /**< The DIB as it is defined in memory */
|
54
|
-
int size; /**< Full size in memory */
|
55
|
-
|
56
|
-
BITMAPINFO* bmi; /**< Bitmap Info = Bitmap Info Header + Palette */
|
57
|
-
BITMAPINFOHEADER* bmih; /**< Bitmap Info Header */
|
58
|
-
RGBQUAD* bmic; /**< Bitmap Info Colors = Palette */
|
59
|
-
BYTE* bits; /**< Bitmap Bits */
|
60
|
-
|
61
|
-
int palette_count; /**< number of colors in the palette */
|
62
|
-
int bits_size; /**< size in bytes of the Bitmap Bits */
|
63
|
-
int line_size; /**< size in bytes of one line, includes padding */
|
64
|
-
int pad_size; /**< number of bytes remaining in the line, lines are in a word boundary */
|
65
|
-
|
66
|
-
int is_reference; /**< only a reference, do not free pointer */
|
67
|
-
} imDib;
|
68
|
-
|
69
|
-
/** Creates a new DIB. \n
|
70
|
-
* use bpp=-16/-32 to allocate space for BITFLIEDS.
|
71
|
-
* \ingroup dib */
|
72
|
-
imDib* imDibCreate(int width, int height, int bpp);
|
73
|
-
|
74
|
-
/** Duplicates the DIB contents in a new DIB.
|
75
|
-
* \ingroup dib */
|
76
|
-
imDib* imDibCreateCopy(const imDib* dib);
|
77
|
-
|
78
|
-
/** Creates a DIB using an already allocated memory. \n
|
79
|
-
* "bmi" must be a pointer to BITMAPINFOHEADER. \n
|
80
|
-
* "bits" can be NULL if it is inside "bmi" after the palette.
|
81
|
-
* \ingroup dib */
|
82
|
-
imDib* imDibCreateReference(BYTE* bmi, BYTE* bits);
|
83
|
-
|
84
|
-
/** Creates a DIB section for drawing porposes. \n
|
85
|
-
* Returns the image handle also created.
|
86
|
-
* \ingroup dib */
|
87
|
-
imDib* imDibCreateSection(HDC hDC, HBITMAP *image, int width, int height, int bpp);
|
88
|
-
|
89
|
-
/** Destroy the DIB
|
90
|
-
* \ingroup dib */
|
91
|
-
void imDibDestroy(imDib* dib);
|
92
|
-
|
93
|
-
/** DIB GetPixel function definition. \n
|
94
|
-
* the DWORD is a raw copy of the bits, use (unsigned char*)&pixel
|
95
|
-
* \ingroup dib */
|
96
|
-
typedef unsigned int (*imDibLineGetPixel)(unsigned char* line, int col);
|
97
|
-
|
98
|
-
/** Returns a function to read pixels from a DIB line.
|
99
|
-
* \ingroup dib */
|
100
|
-
imDibLineGetPixel imDibLineGetPixelFunc(int bpp);
|
101
|
-
|
102
|
-
/** DIB SetPixel function definition
|
103
|
-
* \ingroup dib */
|
104
|
-
typedef void (*imDibLineSetPixel)(unsigned char* line, int col, unsigned int pixel);
|
105
|
-
|
106
|
-
/** Returns a function to write pixels into a DIB line.
|
107
|
-
* \ingroup dib */
|
108
|
-
imDibLineSetPixel imDibLineSetPixelFunc(int bpp);
|
109
|
-
|
110
|
-
/** Creates a DIB from a image handle and a palette handle.
|
111
|
-
* \ingroup dib */
|
112
|
-
imDib* imDibFromHBitmap(const HBITMAP image, const HPALETTE hPalette);
|
113
|
-
|
114
|
-
/** Creates a image handle from a DIB.
|
115
|
-
* \ingroup dib */
|
116
|
-
HBITMAP imDibToHBitmap(const imDib* dib);
|
117
|
-
|
118
|
-
/** Returns a Logical palette from the DIB palette. \n
|
119
|
-
* DIB bpp must be <=8.
|
120
|
-
* \ingroup dib */
|
121
|
-
HPALETTE imDibLogicalPalette(const imDib* dib);
|
122
|
-
|
123
|
-
/** Captures the screen into a DIB.
|
124
|
-
* \ingroup dib */
|
125
|
-
imDib* imDibCaptureScreen(int x, int y, int width, int height);
|
126
|
-
|
127
|
-
/** Transfer the DIB to the clipboard. \n
|
128
|
-
* "dib" pointer can not be used after, or use imDibCopyClipboard(imDibCreateCopy(dib)).
|
129
|
-
* Warning: Clipboard functions in C++ can fail with Visual C++ /EHsc (Enable C++ Exceptions)
|
130
|
-
* \ingroup dib */
|
131
|
-
void imDibCopyClipboard(imDib* dib);
|
132
|
-
|
133
|
-
/** Creates a reference for the DIB in the clipboard if any. Returns NULL otherwise.
|
134
|
-
* Warning: Clipboard functions in C++ can fail with Visual C++ /EHsc (Enable C++ Exceptions)
|
135
|
-
* \ingroup dib */
|
136
|
-
imDib* imDibPasteClipboard(void);
|
137
|
-
|
138
|
-
/** Checks if there is a dib at the clipboard.
|
139
|
-
* \ingroup dib */
|
140
|
-
int imDibIsClipboardAvailable(void);
|
141
|
-
|
142
|
-
/** Saves the DIB into a file ".bmp".
|
143
|
-
* \ingroup dib */
|
144
|
-
int imDibSaveFile(const imDib* dib, const char* filename);
|
145
|
-
|
146
|
-
/** Creates a DIB from a file ".bmp".
|
147
|
-
* \ingroup dib */
|
148
|
-
imDib* imDibLoadFile(const char* filename);
|
149
|
-
|
150
|
-
/** Converts a DIB into an RGBA image. alpha is optional. bpp must be >8. \n
|
151
|
-
* alpha is used only when bpp=32.
|
152
|
-
* \ingroup dib */
|
153
|
-
void imDibDecodeToRGBA(const imDib* dib, unsigned char* red, unsigned char* green, unsigned char* blue, unsigned char* alpha);
|
154
|
-
|
155
|
-
/** Converts a DIB into an indexed image. bpp must be <=8. colors must have room for at least 256 colors.
|
156
|
-
* colors is rgb packed (RGBRGBRGB...)
|
157
|
-
* \ingroup dib */
|
158
|
-
void imDibDecodeToMap(const imDib* dib, unsigned char* map, long* palette);
|
159
|
-
|
160
|
-
/** Converts an RGBA image into a DIB. alpha is optional. bpp must be >8. \n
|
161
|
-
* alpha is used only when bpp=32.
|
162
|
-
* \ingroup dib */
|
163
|
-
void imDibEncodeFromRGBA(imDib* dib, const unsigned char* red, const unsigned char* green, const unsigned char* blue, const unsigned char* alpha);
|
164
|
-
|
165
|
-
/** Converts an indexed image into a DIB. bpp must be <=8. \n
|
166
|
-
* colors is rgb packed (RGBRGBRGB...)
|
167
|
-
* \ingroup dib */
|
168
|
-
void imDibEncodeFromMap(imDib* dib, const unsigned char* map, const long* palette, int palette_count);
|
169
|
-
|
170
|
-
/** Converts a IM_RGB packed image, with or without alpha, into a DIB.
|
171
|
-
* \ingroup dib */
|
172
|
-
void imDibEncodeFromBitmap(imDib* dib, const unsigned char* data);
|
173
|
-
|
174
|
-
/** Converts a DIB into IM_RGB packed image, with or without alpha.
|
175
|
-
* \ingroup dib */
|
176
|
-
void imDibDecodeToBitmap(const imDib* dib, unsigned char* data);
|
177
|
-
|
178
|
-
#ifdef __IM_IMAGE_H
|
179
|
-
/* You must include "im_image.h" before this header to enable these declarations. */
|
180
|
-
|
181
|
-
/** Creates a imImage from the dib data.
|
182
|
-
* \ingroup dib */
|
183
|
-
imImage* imDibToImage(const imDib* dib);
|
184
|
-
|
185
|
-
/** Creates a Dib from the image. It must be a bitmap image.
|
186
|
-
* \ingroup dib */
|
187
|
-
imDib* imDibFromImage(const imImage* image);
|
188
|
-
|
189
|
-
#endif
|
190
|
-
|
191
|
-
#if defined(__cplusplus)
|
192
|
-
}
|
193
|
-
#endif
|
194
|
-
|
195
|
-
#endif
|
1
|
+
/** \file
|
2
|
+
* \brief Windows DIB (Device Independent Bitmap)
|
3
|
+
*
|
4
|
+
* See Copyright Notice in im_lib.h
|
5
|
+
*/
|
6
|
+
|
7
|
+
#ifndef __IM_DIB_H
|
8
|
+
#define __IM_DIB_H
|
9
|
+
|
10
|
+
#if defined(__cplusplus)
|
11
|
+
extern "C" {
|
12
|
+
#endif
|
13
|
+
|
14
|
+
|
15
|
+
/** \defgroup dib Windows DIB
|
16
|
+
*
|
17
|
+
* \par
|
18
|
+
* Windows DIBs in memory are handled just like a BMP file without the file header. \n
|
19
|
+
* These functions will work only in Windows. They are usefull for interchanging data
|
20
|
+
* with the clipboard, with capture drivers, with the AVI and WMF file formats and others.
|
21
|
+
* \par
|
22
|
+
* Supported DIB aspects:
|
23
|
+
* \li bpp must be 1, 4, 8, 16, 24, or 32.
|
24
|
+
* \li BITMAPV4HEADER or BITMAPV5HEADER are handled but ignored. \n
|
25
|
+
* \li BITMAPCOREHEADER is not handled .
|
26
|
+
* \li BI_JPEG and BI_PNG compressions are not handled.
|
27
|
+
* \li biHeight can be negative, compression can be RLE only if created
|
28
|
+
* from imDibCreateReference, imDibPasteClipboard, imDibLoadFile.
|
29
|
+
* \li can not encode/decode Images to/from RLE compressed Dibs.
|
30
|
+
* \li if working with RLE Dibs bits_size is greatter than used.
|
31
|
+
* \li the resolution of a new Dib is taken from the screen.
|
32
|
+
* \li SetDIBitsToDevice(start_scan is 0, scan_lines is dib->bmih->biHeight).
|
33
|
+
* \li StretchDIBits(use always DIB_RGB_COLORS).
|
34
|
+
* \li CreateDIBPatternBrushPt(packed_dib is dib->dib).
|
35
|
+
* \par
|
36
|
+
* Must include <windows.h> before using these functions. \n
|
37
|
+
* Check <wingdi.h> for structures and definitions.
|
38
|
+
* \par
|
39
|
+
* See \ref im_dib.h
|
40
|
+
* \ingroup util */
|
41
|
+
|
42
|
+
|
43
|
+
/** \brief Windows DIB Structure
|
44
|
+
*
|
45
|
+
* \par
|
46
|
+
* Handles a DIB in memory. \n
|
47
|
+
* The DIB is stored in only one buffer.
|
48
|
+
* The secondary members are pointers to the main buffer.
|
49
|
+
* \ingroup dib */
|
50
|
+
typedef struct _imDib
|
51
|
+
{
|
52
|
+
HGLOBAL handle; /**< The windows memory handle */
|
53
|
+
BYTE* dib; /**< The DIB as it is defined in memory */
|
54
|
+
int size; /**< Full size in memory */
|
55
|
+
|
56
|
+
BITMAPINFO* bmi; /**< Bitmap Info = Bitmap Info Header + Palette */
|
57
|
+
BITMAPINFOHEADER* bmih; /**< Bitmap Info Header */
|
58
|
+
RGBQUAD* bmic; /**< Bitmap Info Colors = Palette */
|
59
|
+
BYTE* bits; /**< Bitmap Bits */
|
60
|
+
|
61
|
+
int palette_count; /**< number of colors in the palette */
|
62
|
+
int bits_size; /**< size in bytes of the Bitmap Bits */
|
63
|
+
int line_size; /**< size in bytes of one line, includes padding */
|
64
|
+
int pad_size; /**< number of bytes remaining in the line, lines are in a word boundary */
|
65
|
+
|
66
|
+
int is_reference; /**< only a reference, do not free pointer */
|
67
|
+
} imDib;
|
68
|
+
|
69
|
+
/** Creates a new DIB. \n
|
70
|
+
* use bpp=-16/-32 to allocate space for BITFLIEDS.
|
71
|
+
* \ingroup dib */
|
72
|
+
imDib* imDibCreate(int width, int height, int bpp);
|
73
|
+
|
74
|
+
/** Duplicates the DIB contents in a new DIB.
|
75
|
+
* \ingroup dib */
|
76
|
+
imDib* imDibCreateCopy(const imDib* dib);
|
77
|
+
|
78
|
+
/** Creates a DIB using an already allocated memory. \n
|
79
|
+
* "bmi" must be a pointer to BITMAPINFOHEADER. \n
|
80
|
+
* "bits" can be NULL if it is inside "bmi" after the palette.
|
81
|
+
* \ingroup dib */
|
82
|
+
imDib* imDibCreateReference(BYTE* bmi, BYTE* bits);
|
83
|
+
|
84
|
+
/** Creates a DIB section for drawing porposes. \n
|
85
|
+
* Returns the image handle also created.
|
86
|
+
* \ingroup dib */
|
87
|
+
imDib* imDibCreateSection(HDC hDC, HBITMAP *image, int width, int height, int bpp);
|
88
|
+
|
89
|
+
/** Destroy the DIB
|
90
|
+
* \ingroup dib */
|
91
|
+
void imDibDestroy(imDib* dib);
|
92
|
+
|
93
|
+
/** DIB GetPixel function definition. \n
|
94
|
+
* the DWORD is a raw copy of the bits, use (unsigned char*)&pixel
|
95
|
+
* \ingroup dib */
|
96
|
+
typedef unsigned int (*imDibLineGetPixel)(unsigned char* line, int col);
|
97
|
+
|
98
|
+
/** Returns a function to read pixels from a DIB line.
|
99
|
+
* \ingroup dib */
|
100
|
+
imDibLineGetPixel imDibLineGetPixelFunc(int bpp);
|
101
|
+
|
102
|
+
/** DIB SetPixel function definition
|
103
|
+
* \ingroup dib */
|
104
|
+
typedef void (*imDibLineSetPixel)(unsigned char* line, int col, unsigned int pixel);
|
105
|
+
|
106
|
+
/** Returns a function to write pixels into a DIB line.
|
107
|
+
* \ingroup dib */
|
108
|
+
imDibLineSetPixel imDibLineSetPixelFunc(int bpp);
|
109
|
+
|
110
|
+
/** Creates a DIB from a image handle and a palette handle.
|
111
|
+
* \ingroup dib */
|
112
|
+
imDib* imDibFromHBitmap(const HBITMAP image, const HPALETTE hPalette);
|
113
|
+
|
114
|
+
/** Creates a image handle from a DIB.
|
115
|
+
* \ingroup dib */
|
116
|
+
HBITMAP imDibToHBitmap(const imDib* dib);
|
117
|
+
|
118
|
+
/** Returns a Logical palette from the DIB palette. \n
|
119
|
+
* DIB bpp must be <=8.
|
120
|
+
* \ingroup dib */
|
121
|
+
HPALETTE imDibLogicalPalette(const imDib* dib);
|
122
|
+
|
123
|
+
/** Captures the screen into a DIB.
|
124
|
+
* \ingroup dib */
|
125
|
+
imDib* imDibCaptureScreen(int x, int y, int width, int height);
|
126
|
+
|
127
|
+
/** Transfer the DIB to the clipboard. \n
|
128
|
+
* "dib" pointer can not be used after, or use imDibCopyClipboard(imDibCreateCopy(dib)).
|
129
|
+
* Warning: Clipboard functions in C++ can fail with Visual C++ /EHsc (Enable C++ Exceptions)
|
130
|
+
* \ingroup dib */
|
131
|
+
void imDibCopyClipboard(imDib* dib);
|
132
|
+
|
133
|
+
/** Creates a reference for the DIB in the clipboard if any. Returns NULL otherwise.
|
134
|
+
* Warning: Clipboard functions in C++ can fail with Visual C++ /EHsc (Enable C++ Exceptions)
|
135
|
+
* \ingroup dib */
|
136
|
+
imDib* imDibPasteClipboard(void);
|
137
|
+
|
138
|
+
/** Checks if there is a dib at the clipboard.
|
139
|
+
* \ingroup dib */
|
140
|
+
int imDibIsClipboardAvailable(void);
|
141
|
+
|
142
|
+
/** Saves the DIB into a file ".bmp".
|
143
|
+
* \ingroup dib */
|
144
|
+
int imDibSaveFile(const imDib* dib, const char* filename);
|
145
|
+
|
146
|
+
/** Creates a DIB from a file ".bmp".
|
147
|
+
* \ingroup dib */
|
148
|
+
imDib* imDibLoadFile(const char* filename);
|
149
|
+
|
150
|
+
/** Converts a DIB into an RGBA image. alpha is optional. bpp must be >8. \n
|
151
|
+
* alpha is used only when bpp=32.
|
152
|
+
* \ingroup dib */
|
153
|
+
void imDibDecodeToRGBA(const imDib* dib, unsigned char* red, unsigned char* green, unsigned char* blue, unsigned char* alpha);
|
154
|
+
|
155
|
+
/** Converts a DIB into an indexed image. bpp must be <=8. colors must have room for at least 256 colors.
|
156
|
+
* colors is rgb packed (RGBRGBRGB...)
|
157
|
+
* \ingroup dib */
|
158
|
+
void imDibDecodeToMap(const imDib* dib, unsigned char* map, long* palette);
|
159
|
+
|
160
|
+
/** Converts an RGBA image into a DIB. alpha is optional. bpp must be >8. \n
|
161
|
+
* alpha is used only when bpp=32.
|
162
|
+
* \ingroup dib */
|
163
|
+
void imDibEncodeFromRGBA(imDib* dib, const unsigned char* red, const unsigned char* green, const unsigned char* blue, const unsigned char* alpha);
|
164
|
+
|
165
|
+
/** Converts an indexed image into a DIB. bpp must be <=8. \n
|
166
|
+
* colors is rgb packed (RGBRGBRGB...)
|
167
|
+
* \ingroup dib */
|
168
|
+
void imDibEncodeFromMap(imDib* dib, const unsigned char* map, const long* palette, int palette_count);
|
169
|
+
|
170
|
+
/** Converts a IM_RGB packed image, with or without alpha, into a DIB.
|
171
|
+
* \ingroup dib */
|
172
|
+
void imDibEncodeFromBitmap(imDib* dib, const unsigned char* data);
|
173
|
+
|
174
|
+
/** Converts a DIB into IM_RGB packed image, with or without alpha.
|
175
|
+
* \ingroup dib */
|
176
|
+
void imDibDecodeToBitmap(const imDib* dib, unsigned char* data);
|
177
|
+
|
178
|
+
#ifdef __IM_IMAGE_H
|
179
|
+
/* You must include "im_image.h" before this header to enable these declarations. */
|
180
|
+
|
181
|
+
/** Creates a imImage from the dib data.
|
182
|
+
* \ingroup dib */
|
183
|
+
imImage* imDibToImage(const imDib* dib);
|
184
|
+
|
185
|
+
/** Creates a Dib from the image. It must be a bitmap image.
|
186
|
+
* \ingroup dib */
|
187
|
+
imDib* imDibFromImage(const imImage* image);
|
188
|
+
|
189
|
+
#endif
|
190
|
+
|
191
|
+
#if defined(__cplusplus)
|
192
|
+
}
|
193
|
+
#endif
|
194
|
+
|
195
|
+
#endif
|