ruby-iup 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +97 -0
- data/doc/README +10 -0
- data/doc/build_install.txt +77 -0
- data/examples/README +16 -0
- data/examples/ctrl/cbox.rb +221 -0
- data/examples/ctrl/checkboard.rb +33 -0
- data/examples/ctrl/degrade.rb +73 -0
- data/examples/ctrl/example1.rb +53 -0
- data/examples/ctrl/example2.rb +39 -0
- data/examples/ctrl/iupcolorbar.rb +95 -0
- data/examples/ctrl/iupcolorbrowser.rb +45 -0
- data/examples/ctrl/iupdial.rb +117 -0
- data/examples/ctrl/iupgauge.rb +242 -0
- data/examples/ctrl/iupgetcolor.rb +8 -0
- data/examples/ctrl/iupgetparam.rb +62 -0
- data/examples/ctrl/iupglcanvas.rb +172 -0
- data/examples/ctrl/iupmask.rb +15 -0
- data/examples/ctrl/iupmatrix.rb +39 -0
- data/examples/ctrl/iupplot2.rb +603 -0
- data/examples/ctrl/iuptabs.rb +22 -0
- data/examples/ctrl/iuptree.rb +190 -0
- data/examples/ctrl/iupval.rb +71 -0
- data/examples/ctrl/numbering.rb +46 -0
- data/examples/ctrl/sample.rb +166 -0
- data/examples/dlg/iupalarm.rb +14 -0
- data/examples/dlg/iupfiledlg.rb +19 -0
- data/examples/dlg/iupgetfile.rb +19 -0
- data/examples/dlg/iuplistdialog.rb +26 -0
- data/examples/dlg/iupmessage.rb +5 -0
- data/examples/dlg/iupscanf.rb +17 -0
- data/examples/elem/iupbutton.rb +197 -0
- data/examples/elem/iupcanvas.rb +27 -0
- data/examples/elem/iupcanvas2.rb +113 -0
- data/examples/elem/iupcanvas3.rb +62 -0
- data/examples/elem/iupdialog.rb +71 -0
- data/examples/elem/iupdialog2.rb +25 -0
- data/examples/elem/iupfill.rb +51 -0
- data/examples/elem/iupframe.rb +25 -0
- data/examples/elem/iuphbox.rb +68 -0
- data/examples/elem/iupimage.rb +113 -0
- data/examples/elem/iupitem.rb +60 -0
- data/examples/elem/iuplabel.rb +57 -0
- data/examples/elem/iuplist.rb +41 -0
- data/examples/elem/iuplist2.rb +125 -0
- data/examples/elem/iupmenu.rb +32 -0
- data/examples/elem/iupmultiline.rb +24 -0
- data/examples/elem/iupmultiline2.rb +156 -0
- data/examples/elem/iupradio.rb +32 -0
- data/examples/elem/iupseparator.rb +81 -0
- data/examples/elem/iupsubmenu.rb +85 -0
- data/examples/elem/iuptext.rb +61 -0
- data/examples/elem/iuptimer.rb +36 -0
- data/examples/elem/iuptoggle.rb +110 -0
- data/examples/elem/iupvbox.rb +87 -0
- data/examples/elem/iupzbox.rb +60 -0
- data/examples/elem/mdisample.rb +376 -0
- data/examples/elem/progressbar.rb +294 -0
- data/examples/elem/scrollbar.rb +66 -0
- data/examples/elem/tray.rb +90 -0
- data/examples/func/iupgetattribute.rb +32 -0
- data/examples/func/iupidle.rb +48 -0
- data/ext/extconf.rb +27 -0
- data/ext/iup-linux/include/cd.h +494 -0
- data/ext/iup-linux/include/cd_canvas.hpp +358 -0
- data/ext/iup-linux/include/cd_old.h +158 -0
- data/ext/iup-linux/include/cd_private.h +362 -0
- data/ext/iup-linux/include/cdcgm.h +34 -0
- data/ext/iup-linux/include/cdclipbd.h +22 -0
- data/ext/iup-linux/include/cddbuf.h +23 -0
- data/ext/iup-linux/include/cddebug.h +24 -0
- data/ext/iup-linux/include/cddgn.h +23 -0
- data/ext/iup-linux/include/cddxf.h +22 -0
- data/ext/iup-linux/include/cdemf.h +22 -0
- data/ext/iup-linux/include/cdgdiplus.h +29 -0
- data/ext/iup-linux/include/cdimage.h +23 -0
- data/ext/iup-linux/include/cdirgb.h +30 -0
- data/ext/iup-linux/include/cdiup.h +22 -0
- data/ext/iup-linux/include/cdlua.h +39 -0
- data/ext/iup-linux/include/cdlua3_private.h +120 -0
- data/ext/iup-linux/include/cdlua5_private.h +141 -0
- data/ext/iup-linux/include/cdluaim.h +24 -0
- data/ext/iup-linux/include/cdluaiup.h +27 -0
- data/ext/iup-linux/include/cdluapdf.h +27 -0
- data/ext/iup-linux/include/cdmf.h +24 -0
- data/ext/iup-linux/include/cdmf_private.h +32 -0
- data/ext/iup-linux/include/cdnative.h +26 -0
- data/ext/iup-linux/include/cdpdf.h +38 -0
- data/ext/iup-linux/include/cdpicture.h +22 -0
- data/ext/iup-linux/include/cdprint.h +23 -0
- data/ext/iup-linux/include/cdps.h +37 -0
- data/ext/iup-linux/include/cdwmf.h +22 -0
- data/ext/iup-linux/include/im.h +282 -0
- data/ext/iup-linux/include/im_attrib.h +116 -0
- data/ext/iup-linux/include/im_attrib_flat.h +39 -0
- data/ext/iup-linux/include/im_binfile.h +214 -0
- data/ext/iup-linux/include/im_capture.h +365 -0
- data/ext/iup-linux/include/im_color.h +465 -0
- data/ext/iup-linux/include/im_colorhsi.h +61 -0
- data/ext/iup-linux/include/im_complex.h +160 -0
- data/ext/iup-linux/include/im_convert.h +127 -0
- data/ext/iup-linux/include/im_counter.h +69 -0
- data/ext/iup-linux/include/im_dib.h +195 -0
- data/ext/iup-linux/include/im_file.h +111 -0
- data/ext/iup-linux/include/im_format.h +79 -0
- data/ext/iup-linux/include/im_format_all.h +576 -0
- data/ext/iup-linux/include/im_format_avi.h +87 -0
- data/ext/iup-linux/include/im_format_ecw.h +93 -0
- data/ext/iup-linux/include/im_format_jp2.h +78 -0
- data/ext/iup-linux/include/im_format_raw.h +64 -0
- data/ext/iup-linux/include/im_format_wmv.h +100 -0
- data/ext/iup-linux/include/im_image.h +403 -0
- data/ext/iup-linux/include/im_kernel.h +315 -0
- data/ext/iup-linux/include/im_lib.h +191 -0
- data/ext/iup-linux/include/im_math.h +368 -0
- data/ext/iup-linux/include/im_math_op.h +219 -0
- data/ext/iup-linux/include/im_palette.h +172 -0
- data/ext/iup-linux/include/im_plus.h +73 -0
- data/ext/iup-linux/include/im_process.h +35 -0
- data/ext/iup-linux/include/im_process_ana.h +221 -0
- data/ext/iup-linux/include/im_process_glo.h +170 -0
- data/ext/iup-linux/include/im_process_loc.h +577 -0
- data/ext/iup-linux/include/im_process_pon.h +712 -0
- data/ext/iup-linux/include/im_raw.h +34 -0
- data/ext/iup-linux/include/im_util.h +277 -0
- data/ext/iup-linux/include/imlua.h +83 -0
- data/ext/iup-linux/include/iup.h +255 -0
- data/ext/iup-linux/include/iup_pplot.h +40 -0
- data/ext/iup-linux/include/iupcb.h +25 -0
- data/ext/iup-linux/include/iupcbox.h +23 -0
- data/ext/iup-linux/include/iupcbs.h +42 -0
- data/ext/iup-linux/include/iupcells.h +130 -0
- data/ext/iup-linux/include/iupcolorbar.h +126 -0
- data/ext/iup-linux/include/iupcompat.h +62 -0
- data/ext/iup-linux/include/iupcontrols.h +40 -0
- data/ext/iup-linux/include/iupcpi.h +76 -0
- data/ext/iup-linux/include/iupdef.h +520 -0
- data/ext/iup-linux/include/iupdial.h +64 -0
- data/ext/iup-linux/include/iupgauge.h +57 -0
- data/ext/iup-linux/include/iupgc.h +20 -0
- data/ext/iup-linux/include/iupgetparam.h +27 -0
- data/ext/iup-linux/include/iupgl.h +101 -0
- data/ext/iup-linux/include/iupim.h +21 -0
- data/ext/iup-linux/include/iupkey.h +290 -0
- data/ext/iup-linux/include/iuplua.h +41 -0
- data/ext/iup-linux/include/iuplua_pplot.h +26 -0
- data/ext/iup-linux/include/iupluacontrols.h +27 -0
- data/ext/iup-linux/include/iupluagl.h +26 -0
- data/ext/iup-linux/include/iupluaim.h +26 -0
- data/ext/iup-linux/include/iupluaole.h +26 -0
- data/ext/iup-linux/include/iupmask.h +52 -0
- data/ext/iup-linux/include/iupmatrix.h +69 -0
- data/ext/iup-linux/include/iupole.h +24 -0
- data/ext/iup-linux/include/iupsbox.h +20 -0
- data/ext/iup-linux/include/iupspeech.h +23 -0
- data/ext/iup-linux/include/iupspin.h +21 -0
- data/ext/iup-linux/include/iuptabs.h +79 -0
- data/ext/iup-linux/include/iuptree.h +93 -0
- data/ext/iup-linux/include/iupval.h +46 -0
- data/ext/iup-linux/include/lauxlib.h +174 -0
- data/ext/iup-linux/include/lua.h +388 -0
- data/ext/iup-linux/include/lua.hpp +9 -0
- data/ext/iup-linux/include/luaconf.h +763 -0
- data/ext/iup-linux/include/lualib.h +53 -0
- data/ext/iup-linux/include/old_im.h +59 -0
- data/ext/iup-linux/include/wd.h +78 -0
- data/ext/iup-linux/include/wd_old.h +85 -0
- data/ext/iup-linux/libcd.so +0 -0
- data/ext/iup-linux/libcdcontextplus.so +0 -0
- data/ext/iup-linux/libcdluacontextplus51.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/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/cdlua51.lib +0 -0
- data/ext/iup-win32/cdluacontextplus51.lib +0 -0
- data/ext/iup-win32/cdluaim51.lib +0 -0
- data/ext/iup-win32/cdluapdf51.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_avi.dll +0 -0
- data/ext/iup-win32/im_capture.dll +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_jp2.dll +0 -0
- data/ext/iup-win32/im_process.dll +0 -0
- data/ext/iup-win32/im_wmv.dll +0 -0
- data/ext/iup-win32/include/cd.h +494 -0
- data/ext/iup-win32/include/cd_canvas.hpp +358 -0
- data/ext/iup-win32/include/cd_old.h +158 -0
- data/ext/iup-win32/include/cd_private.h +362 -0
- data/ext/iup-win32/include/cdcgm.h +34 -0
- data/ext/iup-win32/include/cdclipbd.h +22 -0
- data/ext/iup-win32/include/cddbuf.h +23 -0
- data/ext/iup-win32/include/cddebug.h +24 -0
- data/ext/iup-win32/include/cddgn.h +23 -0
- data/ext/iup-win32/include/cddxf.h +22 -0
- data/ext/iup-win32/include/cdemf.h +22 -0
- data/ext/iup-win32/include/cdgdiplus.h +29 -0
- data/ext/iup-win32/include/cdimage.h +23 -0
- data/ext/iup-win32/include/cdirgb.h +30 -0
- data/ext/iup-win32/include/cdiup.h +22 -0
- data/ext/iup-win32/include/cdlua.h +39 -0
- data/ext/iup-win32/include/cdlua3_private.h +120 -0
- data/ext/iup-win32/include/cdlua5_private.h +141 -0
- data/ext/iup-win32/include/cdluaim.h +24 -0
- data/ext/iup-win32/include/cdluaiup.h +27 -0
- data/ext/iup-win32/include/cdluapdf.h +27 -0
- data/ext/iup-win32/include/cdmf.h +24 -0
- data/ext/iup-win32/include/cdmf_private.h +32 -0
- data/ext/iup-win32/include/cdnative.h +26 -0
- data/ext/iup-win32/include/cdpdf.h +38 -0
- data/ext/iup-win32/include/cdpicture.h +22 -0
- data/ext/iup-win32/include/cdprint.h +23 -0
- data/ext/iup-win32/include/cdps.h +37 -0
- data/ext/iup-win32/include/cdwmf.h +22 -0
- data/ext/iup-win32/include/iup.h +255 -0
- data/ext/iup-win32/include/iup_pplot.h +40 -0
- data/ext/iup-win32/include/iupcb.h +25 -0
- data/ext/iup-win32/include/iupcbox.h +23 -0
- data/ext/iup-win32/include/iupcbs.h +42 -0
- data/ext/iup-win32/include/iupcells.h +130 -0
- data/ext/iup-win32/include/iupcolorbar.h +126 -0
- data/ext/iup-win32/include/iupcompat.h +62 -0
- data/ext/iup-win32/include/iupcontrols.h +40 -0
- data/ext/iup-win32/include/iupcpi.h +76 -0
- data/ext/iup-win32/include/iupdef.h +520 -0
- data/ext/iup-win32/include/iupdial.h +64 -0
- data/ext/iup-win32/include/iupgauge.h +57 -0
- data/ext/iup-win32/include/iupgc.h +20 -0
- data/ext/iup-win32/include/iupgetparam.h +27 -0
- data/ext/iup-win32/include/iupgl.h +101 -0
- data/ext/iup-win32/include/iupim.h +21 -0
- data/ext/iup-win32/include/iupkey.h +290 -0
- data/ext/iup-win32/include/iuplua.h +41 -0
- data/ext/iup-win32/include/iuplua_pplot.h +26 -0
- data/ext/iup-win32/include/iupluacontrols.h +27 -0
- data/ext/iup-win32/include/iupluagl.h +26 -0
- data/ext/iup-win32/include/iupluaim.h +26 -0
- data/ext/iup-win32/include/iupluaole.h +26 -0
- data/ext/iup-win32/include/iupmask.h +52 -0
- data/ext/iup-win32/include/iupmatrix.h +69 -0
- data/ext/iup-win32/include/iupole.h +24 -0
- data/ext/iup-win32/include/iupsbox.h +20 -0
- data/ext/iup-win32/include/iupspeech.h +23 -0
- data/ext/iup-win32/include/iupspin.h +21 -0
- data/ext/iup-win32/include/iuptabs.h +79 -0
- data/ext/iup-win32/include/iuptree.h +93 -0
- data/ext/iup-win32/include/iupval.h +46 -0
- data/ext/iup-win32/include/wd.h +78 -0
- data/ext/iup-win32/include/wd_old.h +85 -0
- 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/iupim.dll +0 -0
- data/ext/iup-win32/iupim.lib +0 -0
- data/ext/iup-win32/iupimglib.dll +0 -0
- data/ext/iup-win32/iupimglib.lib +0 -0
- data/ext/iup-win32/iuplua51.lib +0 -0
- data/ext/iup-win32/iuplua_pplot51.lib +0 -0
- data/ext/iup-win32/iupluacd51.lib +0 -0
- data/ext/iup-win32/iupluacontrols51.lib +0 -0
- data/ext/iup-win32/iupluagl51.lib +0 -0
- data/ext/iup-win32/iupluaim51.lib +0 -0
- data/ext/iup-win32/iupluaimglib51.lib +0 -0
- data/ext/iup-win32/iupluaole51.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/iup.c +1261 -0
- data/ext/mkrf_conf.rb +72 -0
- data/ext/rb_cd.h +1525 -0
- data/ext/rb_iup.h +2446 -0
- data/ext/rb_iup_pplot.h +129 -0
- data/ext/rb_iupcb.h +13 -0
- data/ext/rb_iupcbox.h +40 -0
- data/ext/rb_iupcells.h +15 -0
- data/ext/rb_iupcolorbar.h +17 -0
- data/ext/rb_iupcompat.h +237 -0
- data/ext/rb_iupcontrols.h +28 -0
- data/ext/rb_iupdef.h +3 -0
- data/ext/rb_iupdial.h +24 -0
- data/ext/rb_iupgauge.h +15 -0
- data/ext/rb_iupgc.h +18 -0
- data/ext/rb_iupgetparam.h +72 -0
- data/ext/rb_iupgl.h +58 -0
- data/ext/rb_iupim.h +25 -0
- data/ext/rb_iupmask.h +189 -0
- data/ext/rb_iupmatrix.h +80 -0
- data/ext/rb_iupole.h +24 -0
- data/ext/rb_iupsbox.h +23 -0
- data/ext/rb_iupspeech.h +25 -0
- data/ext/rb_iupspin.h +29 -0
- data/ext/rb_iuptabs.h +29 -0
- data/ext/rb_iuptree.h +94 -0
- data/ext/rb_iupval.h +24 -0
- data/lib/README +1 -0
- metadata +391 -0
@@ -0,0 +1,73 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
|
5
|
+
def create()
|
6
|
+
cells = Iup.Cells()
|
7
|
+
cells.mouseclick_cb = lambda {|h,b,m,i,j,x,y,r|
|
8
|
+
puts("CLICK: #{b}: (#{i}, #{j})")
|
9
|
+
Iup::DEFAULT
|
10
|
+
}
|
11
|
+
cells.draw_cb = lambda {|h,i,j,xmin,xmax,ymin,ymax,cnv|
|
12
|
+
xm = (xmax + xmin) / 2
|
13
|
+
ym = (ymax + ymin) / 2
|
14
|
+
buffer = 0.chr * 64
|
15
|
+
|
16
|
+
return Iup::DEFAULT if (i == 1 && j == 2)
|
17
|
+
return Iup::DEFAULT if (i == 2 && j == 1)
|
18
|
+
return Iup::DEFAULT if (i == 2 && j == 2)
|
19
|
+
return Iup::DEFAULT if (i == 5 && j == 6)
|
20
|
+
return Iup::DEFAULT if (i == 6 && j == 5)
|
21
|
+
return Iup::DEFAULT if (i == 6 && j == 6)
|
22
|
+
|
23
|
+
if (i == 1 && j == 1)
|
24
|
+
cnv.CanvasSetForeground(Cd::WHITE)
|
25
|
+
else
|
26
|
+
cnv.CanvasSetForeground(Cd.EncodeColor(
|
27
|
+
(i*20),(j*100),(i+100)))
|
28
|
+
end
|
29
|
+
cnv.CanvasBox(xmin, xmax, ymin, ymax)
|
30
|
+
cnv.CanvasTextAlignment(Cd::CENTER)
|
31
|
+
cnv.CanvasSetForeground(Cd::BLACK)
|
32
|
+
buffer = "(#{i}, #{j})"
|
33
|
+
cnv.CanvasText( xm, ym, buffer)
|
34
|
+
|
35
|
+
Iup::DEFAULT
|
36
|
+
}
|
37
|
+
cells.width_cb = lambda {|h,j| (50+j*1.5).to_i }
|
38
|
+
cells.height_cb = lambda {|h,i| (30+i*1.5).to_i }
|
39
|
+
cells.nlines_cb = lambda {|h| 7 }
|
40
|
+
cells.ncols_cb = lambda {|h| 7 }
|
41
|
+
cells.hspan_cb = lambda {|h,i,j|
|
42
|
+
return 2 if (i == 1 && j == 1)
|
43
|
+
return 2 if (i == 5 && j == 5)
|
44
|
+
1
|
45
|
+
}
|
46
|
+
cells.vspan_cb = lambda {|h,i,j|
|
47
|
+
return 2 if (i == 1 && j == 1)
|
48
|
+
return 2 if (i == 5 && j == 5)
|
49
|
+
1
|
50
|
+
}
|
51
|
+
cells.scroll_cb = lambda {|h,i,j|
|
52
|
+
puts("SCROLL: (#{i}, #{j})");
|
53
|
+
Iup::DEFAULT
|
54
|
+
}
|
55
|
+
cells.boxed = 'NO'
|
56
|
+
cells.rastersize = "395x255"
|
57
|
+
|
58
|
+
return cells
|
59
|
+
end
|
60
|
+
|
61
|
+
cells = create()
|
62
|
+
box = Iup.Vbox([cells])
|
63
|
+
box.margin = "10x10"
|
64
|
+
|
65
|
+
dlg = Iup.Dialog(box)
|
66
|
+
dlg.title = "IupCells"
|
67
|
+
dlg.ShowXY(Iup::CENTER,Iup::CENTER)
|
68
|
+
Iup.MainLoop
|
69
|
+
dlg.Destroy
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
|
@@ -0,0 +1,53 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
img_bits1 = [
|
5
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,
|
6
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,
|
7
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,
|
8
|
+
1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,
|
9
|
+
1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,
|
10
|
+
1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,
|
11
|
+
1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,
|
12
|
+
1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,
|
13
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
14
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
15
|
+
2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
16
|
+
2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
17
|
+
2,2,2,0,2,0,2,0,2,2,0,2,2,2,0,0,0,2,2,2,0,0,2,0,2,2,0,0,0,2,2,2,
|
18
|
+
2,2,2,0,2,0,0,2,0,0,2,0,2,0,2,2,2,0,2,0,2,2,0,0,2,0,2,2,2,0,2,2,
|
19
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,2,2,2,2,0,2,0,2,2,2,0,2,0,2,2,2,0,2,2,
|
20
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,2,0,0,0,0,2,0,2,2,2,0,2,0,0,0,0,0,2,2,
|
21
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,0,2,2,2,0,2,0,2,2,2,0,2,0,2,2,2,2,2,2,
|
22
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,0,2,2,2,0,2,0,2,2,0,0,2,0,2,2,2,0,2,2,
|
23
|
+
2,2,2,0,2,0,2,2,0,2,2,0,2,2,0,0,0,0,2,2,0,0,2,0,2,2,0,0,0,2,2,2,
|
24
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,2,2,2,2,2,
|
25
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,2,2,2,0,2,2,2,2,2,2,2,2,
|
26
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,2,2,2,2,2,2,2,2,2,
|
27
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
28
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
29
|
+
1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,
|
30
|
+
1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,
|
31
|
+
1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
32
|
+
1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
33
|
+
1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
34
|
+
1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
35
|
+
1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
36
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
|
37
|
+
]
|
38
|
+
|
39
|
+
|
40
|
+
bt = Iup.Button(:title=>"Test",:expand=>'YES')
|
41
|
+
box = Iup.Sbox(:elem=>bt,:direction=>'SOUTH',:color=>'0 0 255')
|
42
|
+
|
43
|
+
ml = Iup.MultiLine(:expand=>'YES')
|
44
|
+
vbox = Iup.Vbox([box, ml])
|
45
|
+
|
46
|
+
lb = Iup.Label(:title=>"Label",:expand=>'YES')
|
47
|
+
dg = Iup.Dialog(Iup.Hbox([vbox, lb]))
|
48
|
+
|
49
|
+
dg.Show
|
50
|
+
|
51
|
+
Iup.MainLoop
|
52
|
+
dg.Destroy
|
53
|
+
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
def createtree()
|
5
|
+
tree = Iup.Tree(:size=>'80x80',:expand=>'YES',:font=>'COURIER_NORMAL_10',:name=>'Figures')
|
6
|
+
tree.addbranch='3D'
|
7
|
+
tree.addbranch='2D'
|
8
|
+
tree.addleaf1='trapeze'
|
9
|
+
tree.addbranch1='parallelogram'
|
10
|
+
tree.addleaf2='diamond'
|
11
|
+
tree.addleaf2='square'
|
12
|
+
tree.addbranch4='triangle'
|
13
|
+
tree.addleaf5='scalenus'
|
14
|
+
tree.addleaf5='isoceles'
|
15
|
+
tree.addleaf5='equilateral'
|
16
|
+
tree.value='6'
|
17
|
+
tree.addexpanded='NO'
|
18
|
+
return tree
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
tree = createtree()
|
23
|
+
sbox = Iup.Sbox(:elem=>tree,:direction=>'EAST')
|
24
|
+
|
25
|
+
cv = Iup.Canvas(:expand=>'YES')
|
26
|
+
|
27
|
+
ml = Iup.MultiLine(:expand=>'YES')
|
28
|
+
sbox2 = Iup.Sbox(:elem=>ml,:direction=>'WEST')
|
29
|
+
|
30
|
+
vbox = Iup.Hbox([sbox, cv, sbox2])
|
31
|
+
|
32
|
+
lb = Iup.Label(:title=>"This is a label",:expand=>'NO')
|
33
|
+
sbox3 = Iup.Sbox(:elem=>lb,:direction=>'NORTH')
|
34
|
+
dg = Iup.Dialog(Iup.Vbox([vbox, sbox3]))
|
35
|
+
|
36
|
+
dg.Show
|
37
|
+
Iup.MainLoop
|
38
|
+
dg.Destroy
|
39
|
+
|
@@ -0,0 +1,95 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
|
5
|
+
cdcanvas = nil
|
6
|
+
|
7
|
+
repaint_cb = lambda do |h,posx,posy|
|
8
|
+
return Iup::DEFAULT if cdcanvas==nil
|
9
|
+
|
10
|
+
cdcanvas.CanvasActivate()
|
11
|
+
cdcanvas.CanvasClear()
|
12
|
+
|
13
|
+
cdcanvas.CanvasBegin(Cd::FILL)
|
14
|
+
cdcanvas.CanvasVertex(50,50)
|
15
|
+
cdcanvas.CanvasVertex(150,50)
|
16
|
+
cdcanvas.CanvasVertex(100,150)
|
17
|
+
cdcanvas.CanvasEnd()
|
18
|
+
|
19
|
+
Iup::DEFAULT
|
20
|
+
end
|
21
|
+
|
22
|
+
|
23
|
+
cb = Iup.Colorbar()
|
24
|
+
cb.rastersize = "70x"
|
25
|
+
cb.expand = "VERTICAL"
|
26
|
+
cb.num_parts = 2
|
27
|
+
cb.show_secondary = "YES"
|
28
|
+
cb.preview_size = 60
|
29
|
+
cb.squared = "NO"
|
30
|
+
|
31
|
+
cnvs = Iup.Canvas()
|
32
|
+
cnvs.action = repaint_cb
|
33
|
+
|
34
|
+
# Sets size, mininum and maximum values, position and size of the thumb
|
35
|
+
# of the horizontal scrollbar of the canvas
|
36
|
+
cnvs.rastersize = "200x300"
|
37
|
+
|
38
|
+
cb.select_cb = lambda do |h,cell,type|
|
39
|
+
ri,gi,bi = h["CELL#{cell}"].scan(/\d+/)
|
40
|
+
cd_color = Cd.EncodeColor(ri.to_i,gi.to_i,bi.to_i)
|
41
|
+
|
42
|
+
cdcanvas.CanvasActivate()
|
43
|
+
if (type==Iup::PRIMARY)
|
44
|
+
cdcanvas.CanvasSetForeground(cd_color)
|
45
|
+
else
|
46
|
+
cdcanvas.CanvasSetBackground(cd_color)
|
47
|
+
end
|
48
|
+
repaint_cb.call(nil,0,0)
|
49
|
+
|
50
|
+
Iup::DEFAULT
|
51
|
+
end
|
52
|
+
|
53
|
+
cb.cell_cb = lambda do |h,cell|
|
54
|
+
ri,gi,bi = h["CELL#{cell}"].scan(/\d+/)
|
55
|
+
res = Iup.GetColor(Iup::MOUSEPOS, Iup::MOUSEPOS)
|
56
|
+
if res
|
57
|
+
r,g,b = res
|
58
|
+
str = "#{r} #{g} #{b}"
|
59
|
+
cdcanvas.CanvasActivate()
|
60
|
+
cdcanvas.CanvasSetForeground(Cd.EncodeColor(r,g,b))
|
61
|
+
repaint_cb.call(nil,0,0)
|
62
|
+
return str
|
63
|
+
end
|
64
|
+
nil
|
65
|
+
end
|
66
|
+
|
67
|
+
cb.switch_cb = lambda do |h,primcell,seccell|
|
68
|
+
cdcanvas.CanvasActivate()
|
69
|
+
fgcolor = cdcanvas.CanvasForeground(Cd::QUERY)
|
70
|
+
cdcanvas.CanvasSetForeground(Cd.CanvasBackground(Cd::QUERY))
|
71
|
+
cdcanvas.CanvasSetBackground(fgcolor)
|
72
|
+
repaint_cb.call(nil,0,0)
|
73
|
+
end
|
74
|
+
|
75
|
+
|
76
|
+
# Creates a dialog with a vbox containing the canvas and the colorbar.
|
77
|
+
dlg = Iup.Dialog(Iup.Hbox([cnvs,cb]))
|
78
|
+
|
79
|
+
# Sets the dialog's title, so that it is mapped properly
|
80
|
+
dlg.title = "IupColorbar"
|
81
|
+
|
82
|
+
# Maps the dialog. This must be done before the creation of the CD canvas
|
83
|
+
dlg.Map
|
84
|
+
|
85
|
+
# Creates a CD canvas of type CD_IUP
|
86
|
+
cdcanvas = Cd.CreateCanvas(Cd.CD_IUP, cnvs)
|
87
|
+
|
88
|
+
# Shows dialog on the center of the screen
|
89
|
+
dlg.Show
|
90
|
+
|
91
|
+
# Initializes IUP main loop
|
92
|
+
Iup.MainLoop
|
93
|
+
|
94
|
+
dlg.Destroy
|
95
|
+
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
|
5
|
+
text_red = Iup.Text()
|
6
|
+
text_green = Iup.Text()
|
7
|
+
text_blue = Iup.Text()
|
8
|
+
|
9
|
+
clrbrwsr_drag_cb = lambda do |h,r,g,b|
|
10
|
+
text_red.value = r
|
11
|
+
text_green.value = g
|
12
|
+
text_blue.value = b
|
13
|
+
Iup.LoopStep
|
14
|
+
|
15
|
+
Iup::DEFAULT
|
16
|
+
end
|
17
|
+
|
18
|
+
clrbrwsr = Iup.ColorBrowser()
|
19
|
+
clrbrwsr.drag_cb = clrbrwsr_drag_cb
|
20
|
+
clrbrwsr.change_cb = clrbrwsr_drag_cb
|
21
|
+
|
22
|
+
# Creates a vbox */
|
23
|
+
vbox = Iup.Vbox([
|
24
|
+
Iup.Fill(),
|
25
|
+
text_red,
|
26
|
+
Iup.Fill(),
|
27
|
+
text_green,
|
28
|
+
Iup.Fill(),
|
29
|
+
text_blue,
|
30
|
+
Iup.Fill()
|
31
|
+
])
|
32
|
+
|
33
|
+
# Creates an hbox */
|
34
|
+
hbox_final = Iup.Hbox([clrbrwsr, Iup.Fill(), vbox])
|
35
|
+
|
36
|
+
# Creates a dialog */
|
37
|
+
dlg = Iup.Dialog(hbox_final,:title=>"IupColorBrowser")
|
38
|
+
|
39
|
+
# Shows dialog in the center of the screen */
|
40
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
41
|
+
|
42
|
+
# Initializes IUP main loop */
|
43
|
+
Iup.MainLoop
|
44
|
+
|
45
|
+
dlg.Destroy()
|
@@ -0,0 +1,117 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
lbl_h = Iup.Label(:title=>"0",:alignment=>"ACENTER",:size=>"30x")
|
5
|
+
lbl_v = Iup.Label(:title=>"0",:alignment=>"ACENTER",:size=>"30x")
|
6
|
+
lbl_c = Iup.Label(:title=>"0",:alignment=>"ACENTER",:size=>"30x")
|
7
|
+
|
8
|
+
|
9
|
+
dial_v = Iup.Dial(:type=>"VERTICAL",:unit=>"DEGREES",:size=>"100x100")
|
10
|
+
dial_h = Iup.Dial(:type=>"HORIZONTAL",:density=>0.1)
|
11
|
+
dial_c = Iup.Dial(:type=>"CIRCULAR")
|
12
|
+
|
13
|
+
dlg = Iup.Dialog(
|
14
|
+
Iup.Hbox([
|
15
|
+
Iup.Fill(),
|
16
|
+
Iup.Vbox([
|
17
|
+
Iup.Frame(
|
18
|
+
Iup.Vbox([
|
19
|
+
Iup.Hbox([
|
20
|
+
Iup.Fill(),
|
21
|
+
dial_v,
|
22
|
+
Iup.Fill()
|
23
|
+
]),
|
24
|
+
Iup.Hbox([
|
25
|
+
Iup.Fill(),
|
26
|
+
lbl_v,
|
27
|
+
Iup.Fill()
|
28
|
+
])
|
29
|
+
])
|
30
|
+
),
|
31
|
+
Iup.Fill(),
|
32
|
+
Iup.Frame(
|
33
|
+
Iup.Vbox([
|
34
|
+
Iup.Hbox([
|
35
|
+
Iup.Fill(),
|
36
|
+
dial_h,
|
37
|
+
Iup.Fill()
|
38
|
+
]),
|
39
|
+
Iup.Hbox([
|
40
|
+
Iup.Fill(),
|
41
|
+
lbl_h,
|
42
|
+
Iup.Fill()
|
43
|
+
])
|
44
|
+
])
|
45
|
+
),
|
46
|
+
Iup.Fill(),
|
47
|
+
Iup.Frame(
|
48
|
+
Iup.Vbox([
|
49
|
+
Iup.Hbox([
|
50
|
+
Iup.Fill(),
|
51
|
+
dial_c,
|
52
|
+
Iup.Fill()
|
53
|
+
]),
|
54
|
+
Iup.Hbox([
|
55
|
+
Iup.Fill(),
|
56
|
+
lbl_c,
|
57
|
+
Iup.Fill()
|
58
|
+
])
|
59
|
+
])
|
60
|
+
),
|
61
|
+
Iup.Fill()
|
62
|
+
]),
|
63
|
+
Iup.Fill()
|
64
|
+
])
|
65
|
+
)
|
66
|
+
dlg.title = "IupDial"
|
67
|
+
|
68
|
+
printdial = lambda do |c,a,color|
|
69
|
+
case c['type']
|
70
|
+
when 'VERTICAL'
|
71
|
+
label = lbl_v
|
72
|
+
when 'HORIZONTAL'
|
73
|
+
label = lbl_h
|
74
|
+
when 'CIRCULAR'
|
75
|
+
label = lbl_c
|
76
|
+
end
|
77
|
+
|
78
|
+
if label
|
79
|
+
label.title = "%.3g" % a
|
80
|
+
label.bgcolor = color
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
mousemove = lambda do |c,a|
|
85
|
+
printdial.call(c, a, "0 255 0")
|
86
|
+
Iup::DEFAULT
|
87
|
+
end
|
88
|
+
|
89
|
+
button_press = lambda do |c,a|
|
90
|
+
printdial.call(c, a, "255 0 0")
|
91
|
+
Iup::DEFAULT
|
92
|
+
end
|
93
|
+
|
94
|
+
button_release = lambda do |c,a|
|
95
|
+
printdial.call(c, a,nil)
|
96
|
+
Iup::DEFAULT
|
97
|
+
end
|
98
|
+
|
99
|
+
dial_v.button_press_cb = button_press
|
100
|
+
dial_c.button_press_cb = button_press
|
101
|
+
dial_h.button_press_cb = button_press
|
102
|
+
|
103
|
+
dial_v.button_release_cb = button_release
|
104
|
+
dial_c.button_release_cb = button_release
|
105
|
+
dial_h.button_release_cb = button_release
|
106
|
+
|
107
|
+
dial_v.mousemove_cb = mousemove
|
108
|
+
dial_c.mousemove_cb = mousemove
|
109
|
+
dial_h.mousemove_cb = mousemove
|
110
|
+
|
111
|
+
# Shows dialog in the center of the screen */
|
112
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
113
|
+
|
114
|
+
# Initializes IUP main loop */
|
115
|
+
Iup.MainLoop
|
116
|
+
|
117
|
+
dlg.Destroy
|
@@ -0,0 +1,242 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
speed = 0.00001
|
5
|
+
|
6
|
+
pixmap_play = [
|
7
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
8
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
9
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
10
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
11
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
12
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
13
|
+
2,2,2,2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
14
|
+
2,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,
|
15
|
+
2,2,2,2,2,2,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
|
16
|
+
2,2,2,2,2,2,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
|
17
|
+
2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
|
18
|
+
2,2,2,2,2,2,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
|
19
|
+
2,2,2,2,2,2,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
|
20
|
+
2,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,
|
21
|
+
2,2,2,2,2,2,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
22
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
23
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
24
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
25
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
26
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
27
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
28
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
|
29
|
+
|
30
|
+
pixmap_start = [
|
31
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
32
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
33
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
34
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
35
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
36
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
37
|
+
2,2,2,2,1,1,2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,2,
|
38
|
+
2,2,2,2,1,1,2,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,
|
39
|
+
2,2,2,2,1,1,2,2,2,2,1,1,1,1,1,1,2,2,2,2,2,2,
|
40
|
+
2,2,2,2,1,1,2,2,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
|
41
|
+
2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
|
42
|
+
2,2,2,2,1,1,2,2,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
|
43
|
+
2,2,2,2,1,1,2,2,2,2,1,1,1,1,1,1,2,2,2,2,2,2,
|
44
|
+
2,2,2,2,1,1,2,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,
|
45
|
+
2,2,2,2,1,1,2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,2,
|
46
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
47
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
48
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
49
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
50
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
51
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
52
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
|
53
|
+
|
54
|
+
pixmap_rewind = [
|
55
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
56
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
57
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
58
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
59
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
60
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
61
|
+
2,2,2,2,2,2,2,2,2,1,2,2,2,2,1,2,2,2,2,2,2,2,
|
62
|
+
2,2,2,2,2,2,2,2,1,1,2,2,2,1,1,2,2,2,2,2,2,2,
|
63
|
+
2,2,2,2,2,2,2,1,1,1,2,2,1,1,1,2,2,2,2,2,2,2,
|
64
|
+
2,2,2,2,2,2,1,1,1,1,2,1,1,1,1,2,2,2,2,2,2,2,
|
65
|
+
2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
|
66
|
+
2,2,2,2,2,2,1,1,1,1,2,1,1,1,1,2,2,2,2,2,2,2,
|
67
|
+
2,2,2,2,2,2,2,1,1,1,2,2,1,1,1,2,2,2,2,2,2,2,
|
68
|
+
2,2,2,2,2,2,2,2,1,1,2,2,2,1,1,2,2,2,2,2,2,2,
|
69
|
+
2,2,2,2,2,2,2,2,2,1,2,2,2,2,1,2,2,2,2,2,2,2,
|
70
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
71
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
72
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
73
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
74
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
75
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
76
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
|
77
|
+
|
78
|
+
pixmap_forward = [
|
79
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
80
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
81
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
82
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
83
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
84
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
85
|
+
2,2,2,2,2,2,2,1,2,2,2,2,1,2,2,2,2,2,2,2,2,2,
|
86
|
+
2,2,2,2,2,2,2,1,1,2,2,2,1,1,2,2,2,2,2,2,2,2,
|
87
|
+
2,2,2,2,2,2,2,1,1,1,2,2,1,1,1,2,2,2,2,2,2,2,
|
88
|
+
2,2,2,2,2,2,2,1,1,1,1,2,1,1,1,1,2,2,2,2,2,2,
|
89
|
+
2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
|
90
|
+
2,2,2,2,2,2,2,1,1,1,1,2,1,1,1,1,2,2,2,2,2,2,
|
91
|
+
2,2,2,2,2,2,2,1,1,1,2,2,1,1,1,2,2,2,2,2,2,2,
|
92
|
+
2,2,2,2,2,2,2,1,1,2,2,2,1,1,2,2,2,2,2,2,2,2,
|
93
|
+
2,2,2,2,2,2,2,1,2,2,2,2,1,2,2,2,2,2,2,2,2,2,
|
94
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
95
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
96
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
97
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
98
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
99
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
100
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
|
101
|
+
|
102
|
+
pixmap_show = [
|
103
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
104
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
105
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
106
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
107
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
108
|
+
2,2,2,2,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,2,2,2,
|
109
|
+
2,2,2,2,2,2,2,1,1,2,2,2,2,1,1,2,2,2,2,2,2,2,
|
110
|
+
2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,
|
111
|
+
2,2,2,2,2,1,2,2,2,1,1,1,2,2,2,2,1,2,2,2,2,2,
|
112
|
+
2,2,2,2,1,2,2,2,1,1,2,2,1,2,2,2,2,1,2,2,2,2,
|
113
|
+
2,2,2,1,2,2,2,2,1,1,1,2,1,2,2,2,2,2,1,2,2,2,
|
114
|
+
2,2,2,2,1,2,2,2,1,1,1,1,1,2,2,2,2,1,2,2,2,2,
|
115
|
+
2,2,2,2,2,1,2,2,2,1,1,1,2,2,2,2,1,2,2,2,2,2,
|
116
|
+
2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,
|
117
|
+
2,2,2,2,2,2,2,1,1,2,2,2,2,1,1,2,2,2,2,2,2,2,
|
118
|
+
2,2,2,2,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,2,2,2,
|
119
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
120
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
121
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
122
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
123
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
|
124
|
+
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
|
125
|
+
|
126
|
+
|
127
|
+
|
128
|
+
gauge = Iup.Gauge(:expand=>"YES")
|
129
|
+
# gauge.max = 3.5
|
130
|
+
# gauge.min = 0.7
|
131
|
+
|
132
|
+
img_start = Iup.Image(22,22, pixmap_start)
|
133
|
+
img_play = Iup.Image(22,22, pixmap_play)
|
134
|
+
img_forward = Iup.Image(22,22, pixmap_forward)
|
135
|
+
img_rewind = Iup.Image(22,22, pixmap_rewind)
|
136
|
+
img_show = Iup.Image(22,22, pixmap_show)
|
137
|
+
|
138
|
+
img_start["1"]= "0 0 0"
|
139
|
+
img_start["2"]= Iup::BGCOLOR
|
140
|
+
img_play["1"]= "0 0 0"
|
141
|
+
img_play["2"]= Iup::BGCOLOR
|
142
|
+
img_forward["1"]= "0 0 0"
|
143
|
+
img_forward["2"]= Iup::BGCOLOR
|
144
|
+
img_rewind["1"]= "0 0 0"
|
145
|
+
img_rewind["2"]= Iup::BGCOLOR
|
146
|
+
img_show["1"]= "0 0 0"
|
147
|
+
img_show["2"]= Iup::BGCOLOR
|
148
|
+
|
149
|
+
btn_start = Iup.Button(:title=>"start",:image => img_start,:tip => "Start")
|
150
|
+
btn_pause = Iup.Button(:title=>"pause",:image => img_play,:tip => "Pause")
|
151
|
+
btn_accelerate = Iup.Button(:title=>"accelerate",:image => img_forward,:tip => "Accelerate")
|
152
|
+
btn_decelerate = Iup.Button(:title=>"decelerate",:image => img_rewind,:tip => "Decelerate" )
|
153
|
+
btn_show = Iup.Button(:title=>"show",:image => img_show,:tip => "Show" )
|
154
|
+
|
155
|
+
|
156
|
+
idle_cb = lambda do
|
157
|
+
value = gauge.value.to_f
|
158
|
+
value += speed
|
159
|
+
if(value > gauge.max.to_f)
|
160
|
+
value = gauge.min.to_f
|
161
|
+
end
|
162
|
+
gauge.value = "%.7f" % value
|
163
|
+
|
164
|
+
Iup::DEFAULT
|
165
|
+
end
|
166
|
+
|
167
|
+
btn_pause_cb = lambda do |h|
|
168
|
+
if(Iup.GetIdle==nil)
|
169
|
+
Iup.SetIdle(idle_cb)
|
170
|
+
else
|
171
|
+
Iup.SetIdle(nil)
|
172
|
+
end
|
173
|
+
|
174
|
+
Iup::DEFAULT
|
175
|
+
end
|
176
|
+
|
177
|
+
btn_start_cb = lambda do |h|
|
178
|
+
gauge.value = gauge.min
|
179
|
+
Iup::DEFAULT
|
180
|
+
end
|
181
|
+
|
182
|
+
btn_accelerate_cb = lambda do |h|
|
183
|
+
speed *= 2
|
184
|
+
if(speed > 1.0)
|
185
|
+
speed = 1.0
|
186
|
+
end
|
187
|
+
Iup::DEFAULT
|
188
|
+
end
|
189
|
+
|
190
|
+
btn_decelerate_cb = lambda do |h|
|
191
|
+
speed /= 2
|
192
|
+
Iup::DEFAULT
|
193
|
+
end
|
194
|
+
|
195
|
+
btn_show_cb = lambda do |h|
|
196
|
+
if(gauge.show_text=="NO")
|
197
|
+
gauge.show_text = "YES"
|
198
|
+
gauge.dashed = "NO"
|
199
|
+
else
|
200
|
+
gauge.show_text = "NO"
|
201
|
+
gauge.dashed = "YES"
|
202
|
+
end
|
203
|
+
|
204
|
+
Iup::DEFAULT
|
205
|
+
end
|
206
|
+
|
207
|
+
|
208
|
+
hbox = Iup.Hbox([
|
209
|
+
Iup.Fill(),
|
210
|
+
btn_pause,
|
211
|
+
btn_start,
|
212
|
+
btn_decelerate,
|
213
|
+
btn_accelerate,
|
214
|
+
btn_show,
|
215
|
+
Iup.Fill()
|
216
|
+
])
|
217
|
+
|
218
|
+
vbox = Iup.Vbox([ gauge , hbox],:margin=>"10x10",:gap=>5)
|
219
|
+
|
220
|
+
dlg = Iup.Dialog(vbox,:title=>"IupGauge")
|
221
|
+
btn_pause.action = btn_pause_cb
|
222
|
+
btn_start.action = btn_start_cb
|
223
|
+
btn_accelerate.action = btn_accelerate_cb
|
224
|
+
btn_decelerate.action = btn_decelerate_cb
|
225
|
+
btn_show.action = btn_show_cb
|
226
|
+
|
227
|
+
Iup.SetIdle(idle_cb)
|
228
|
+
|
229
|
+
# Shows dialog in the center of the screen */
|
230
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
231
|
+
|
232
|
+
# Initializes IUP main loop */
|
233
|
+
Iup.MainLoop
|
234
|
+
|
235
|
+
dlg.Destroy
|
236
|
+
|
237
|
+
img_start.Destroy
|
238
|
+
img_play.Destroy
|
239
|
+
img_forward.Destroy
|
240
|
+
img_rewind.Destroy
|
241
|
+
img_show.Destroy
|
242
|
+
|