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,62 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
need_redraw = nil
|
5
|
+
cdcanvas = nil
|
6
|
+
|
7
|
+
|
8
|
+
gauge = Iup.Gauge()
|
9
|
+
cv = Iup.Canvas()
|
10
|
+
bt = Iup.Button("Restart")
|
11
|
+
bt.size = "50x50"
|
12
|
+
bt.fgcolor = "255 255 255"
|
13
|
+
gauge.size = "200x15"
|
14
|
+
cv.size = "200x200"
|
15
|
+
dlg = Iup.Dialog(Iup.Vbox([cv, Iup.Hbox([gauge, bt])]),:title=>"Redraw test")
|
16
|
+
|
17
|
+
toggle_redraw = lambda do |ih|
|
18
|
+
need_redraw = 1 - need_redraw
|
19
|
+
Iup::DEFAULT
|
20
|
+
end
|
21
|
+
|
22
|
+
fake_redraw = lambda do |ih,posx,posy|
|
23
|
+
need_redraw = 1
|
24
|
+
Iup::DEFAULT
|
25
|
+
end
|
26
|
+
|
27
|
+
redraw = lambda do
|
28
|
+
if(need_redraw == 1)
|
29
|
+
need_redraw = 0
|
30
|
+
bt.fgcolor = "255 0 0"
|
31
|
+
Iup.Flush()
|
32
|
+
|
33
|
+
cdcanvas.CanvasActivate()
|
34
|
+
cdcanvas.CanvasForeground(Cd::BLUE)
|
35
|
+
cdcanvas.CanvasClear()
|
36
|
+
|
37
|
+
for i in 0 ... 300000
|
38
|
+
cdcanvas.CanvasBox(0, 300, 0, i/1000)
|
39
|
+
gauge.value = "%f" % (i/300000.0)
|
40
|
+
|
41
|
+
Iup.LoopStep()
|
42
|
+
end
|
43
|
+
|
44
|
+
bt.fgcolor = "255 255 255"
|
45
|
+
Iup.Flush()
|
46
|
+
end
|
47
|
+
Iup::DEFAULT
|
48
|
+
end
|
49
|
+
|
50
|
+
|
51
|
+
Iup.SetIdle(redraw)
|
52
|
+
|
53
|
+
dlg.Map()
|
54
|
+
|
55
|
+
cdcanvas = Cd.CreateCanvas(Cd.CD_IUP, cv)
|
56
|
+
|
57
|
+
cv.action = fake_redraw
|
58
|
+
bt.action = toggle_redraw
|
59
|
+
|
60
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
61
|
+
Iup.MainLoop()
|
62
|
+
dlg.Destroy()
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# defines icon's image */
|
5
|
+
img = [
|
6
|
+
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
|
7
|
+
1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,
|
8
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
9
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
10
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
11
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
12
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
13
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
14
|
+
1,3,5,5,6,6,6,6,6,6,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,5,5,5,4,2,
|
15
|
+
1,3,5,5,6,6,6,6,6,6,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,6,5,5,4,2,
|
16
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,5,5,6,6,6,5,5,4,2,
|
17
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,6,6,5,5,4,2,
|
18
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,6,6,5,5,4,2,
|
19
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,6,6,5,5,4,2,
|
20
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,5,5,6,6,6,5,5,4,2,
|
21
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,6,5,5,4,2,
|
22
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,6,6,6,6,6,5,5,5,4,2,
|
23
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
24
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
25
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
26
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
27
|
+
1,3,5,5,5,5,6,6,5,5,5,5,6,6,5,5,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
28
|
+
1,3,5,5,6,6,6,6,6,6,5,5,6,6,6,6,6,6,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
29
|
+
1,3,5,5,6,6,6,6,6,6,5,5,5,6,6,6,6,5,5,5,6,6,5,5,5,5,5,5,5,5,4,2,
|
30
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
31
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
32
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
33
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
34
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
35
|
+
1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,2,
|
36
|
+
1,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,2,
|
37
|
+
1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2
|
38
|
+
]
|
39
|
+
|
40
|
+
quit_cb = lambda do |ih|
|
41
|
+
Iup::CLOSE
|
42
|
+
end
|
43
|
+
|
44
|
+
|
45
|
+
# Creating dialog's icon */
|
46
|
+
icon = Iup.Image(32, 32, img)
|
47
|
+
icon["1"] = "255 255 255"
|
48
|
+
icon["2"] = "000 000 000"
|
49
|
+
icon["3"] = "226 226 226"
|
50
|
+
icon["4"] = "128 128 128"
|
51
|
+
icon["5"] = "192 192 192"
|
52
|
+
icon["6"] = "000 000 255"
|
53
|
+
Iup.SetHandle("icon", icon)
|
54
|
+
|
55
|
+
# Creating dialog's content */
|
56
|
+
quit_bt = Iup.Button(:title=>"Quit",:action=>quit_cb)
|
57
|
+
Iup.SetHandle("quit", quit_bt)
|
58
|
+
|
59
|
+
# Creating dialog's menu */
|
60
|
+
options = Iup.Menu([Iup.Item(:title=>"Exit",:action=>quit_cb)])
|
61
|
+
submenu = Iup.Submenu("File", options)
|
62
|
+
menu = Iup.Menu([submenu])
|
63
|
+
Iup.SetHandle("menu", menu)
|
64
|
+
|
65
|
+
# Creating main dialog */
|
66
|
+
dialog = Iup.Dialog(Iup.Vbox([quit_bt]),:title=>"IupDialog",:menu=>"menu",:cursor=>"CROSS",:icon=>"icon",:defaultesc=>"quit")
|
67
|
+
|
68
|
+
dialog.ShowXY(Iup::CENTER, Iup::CENTER)
|
69
|
+
Iup.MainLoop()
|
70
|
+
dialog.Destroy()
|
71
|
+
icon.Destroy()
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
|
5
|
+
quit_cb = lambda do |ih|
|
6
|
+
Iup::CLOSE
|
7
|
+
end
|
8
|
+
|
9
|
+
# Creating the button */
|
10
|
+
quit_bt = Iup.Button("Quit", quit_cb)
|
11
|
+
|
12
|
+
# the container with a label and the button */
|
13
|
+
vbox = Iup.Vbox([
|
14
|
+
Iup.Label(:title=>"Very Long Text Label",:attr=>"EXPAND=YES, ALIGNMENT=ACENTER"),
|
15
|
+
quit_bt
|
16
|
+
],:alignment=>"ACENTER",:margin=>"10x10",:gap=>5)
|
17
|
+
|
18
|
+
|
19
|
+
# Creating the dialog */
|
20
|
+
dialog = Iup.Dialog(vbox,:title=>"Dialog Title")
|
21
|
+
dialog.SetAttributeHandle("DEFAULTESC", quit_bt)
|
22
|
+
|
23
|
+
dialog.Show()
|
24
|
+
Iup.MainLoop()
|
25
|
+
dialog.Destroy()
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# Creates frame with left aligned button */
|
5
|
+
frame_left = Iup.Frame(
|
6
|
+
Iup.Hbox([
|
7
|
+
Iup.Button("Ok"),
|
8
|
+
Iup.Fill()
|
9
|
+
]
|
10
|
+
)
|
11
|
+
)
|
12
|
+
|
13
|
+
# Sets frame's title */
|
14
|
+
frame_left.title = "Left aligned"
|
15
|
+
|
16
|
+
# Creates frame with centered button */
|
17
|
+
frame_center = Iup.Frame(
|
18
|
+
Iup.Hbox([
|
19
|
+
Iup.Fill(),
|
20
|
+
Iup.Button("Ok"),
|
21
|
+
Iup.Fill()])
|
22
|
+
)
|
23
|
+
|
24
|
+
# Sets frame's title */
|
25
|
+
frame_center.title = "Centered"
|
26
|
+
|
27
|
+
# Creates frame with right aligned button */
|
28
|
+
frame_right = Iup.Frame(
|
29
|
+
Iup.Hbox([
|
30
|
+
Iup.Fill(),
|
31
|
+
Iup.Button( "Ok", "" )])
|
32
|
+
)
|
33
|
+
|
34
|
+
# Sets frame's title */
|
35
|
+
frame_right.title = "Right aligned"
|
36
|
+
|
37
|
+
# Creates dialog with these three frames */
|
38
|
+
dialog = Iup.Dialog(
|
39
|
+
Iup.Vbox([
|
40
|
+
frame_left,
|
41
|
+
frame_center,
|
42
|
+
frame_right])
|
43
|
+
)
|
44
|
+
|
45
|
+
# Sets dialog's size and title */
|
46
|
+
dialog.attr = "SIZE=120, TITLE=IupFill"
|
47
|
+
|
48
|
+
dialog.Show # Shows dialog in the center of the screen */
|
49
|
+
Iup.MainLoop # Initializes IUP main loop */
|
50
|
+
dialog.Destroy
|
51
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# Creates frame with a label */
|
5
|
+
frame = Iup.Frame(
|
6
|
+
Iup.Hbox([
|
7
|
+
Iup.Fill(),
|
8
|
+
Iup.Label("IupFrame Attributes:\nFGCOLOR = \"255 0 0\"\nSIZE = \"EIGHTHxEIGHTH\"\nTITLE = \"This is the frame\"\nMARGIN = \"10x10\""),
|
9
|
+
Iup.Fill()]
|
10
|
+
)
|
11
|
+
)
|
12
|
+
|
13
|
+
# Sets frame's attributes */
|
14
|
+
frame.attr = "FGCOLOR=\"255 0 0\", SIZE=EIGHTHxEIGHTH, TITLE=\"This is the frame\", MARGIN=10x10"
|
15
|
+
|
16
|
+
# Creates dialog with these three frames */
|
17
|
+
dialog = Iup.Dialog(frame)
|
18
|
+
|
19
|
+
# Sets dialog's title */
|
20
|
+
dialog.title = "IupFrame"
|
21
|
+
|
22
|
+
dialog.Show # Shows dialog in the center of the screen */
|
23
|
+
Iup.MainLoop # Initializes IUP main loop */
|
24
|
+
dialog.Destroy
|
25
|
+
|
@@ -0,0 +1,68 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'iup'
|
3
|
+
|
4
|
+
# Creates frame with three top aligned buttons */
|
5
|
+
fr1 = Iup.Frame(
|
6
|
+
h1=Iup.Hbox([
|
7
|
+
Iup.Fill(),
|
8
|
+
b11=Iup.Button("1"),
|
9
|
+
b12=Iup.Button("2"),
|
10
|
+
b13=Iup.Button("3"),
|
11
|
+
Iup.Fill()]
|
12
|
+
)
|
13
|
+
)
|
14
|
+
fr1.title = "ALIGNMENT=ATOP, GAP=10, SIZE=200"
|
15
|
+
b11.size = "30x30"
|
16
|
+
b12.size = "30x40"
|
17
|
+
b13.size = "30x50"
|
18
|
+
h1.attr = "ALIGNMENT=ATOP, GAP=10, SIZE=200" # Sets hbox's alignment, gap and size */
|
19
|
+
|
20
|
+
# Creates frame with three buttons */
|
21
|
+
fr2 = Iup.Frame(
|
22
|
+
h2=Iup.Hbox([
|
23
|
+
Iup.Fill(),
|
24
|
+
b21=Iup.Button("1"),
|
25
|
+
b22=Iup.Button("2"),
|
26
|
+
b23=Iup.Button("3"),
|
27
|
+
Iup.Fill()]
|
28
|
+
)
|
29
|
+
)
|
30
|
+
fr2.title = "ALIGNMENT=ACENTER, GAP=20"
|
31
|
+
b21.size = "30x30"
|
32
|
+
b22.size = "30x40"
|
33
|
+
b23.size = "30x50"
|
34
|
+
h2.attr = "ALIGNMENT=ACENTER, GAP=20" # Sets hbox's alignment and gap */
|
35
|
+
|
36
|
+
# Creates frame with three bottom aligned buttons */
|
37
|
+
fr3 = Iup.Frame(
|
38
|
+
h3=Iup.Hbox([
|
39
|
+
Iup.Fill(),
|
40
|
+
b31=Iup.Button("1"),
|
41
|
+
b32=Iup.Button("2"),
|
42
|
+
b33=Iup.Button("3"),
|
43
|
+
Iup.Fill()]
|
44
|
+
)
|
45
|
+
)
|
46
|
+
fr3.title = "ALIGNMENT = ABOTTOM, SIZE = 150"
|
47
|
+
b31.size = "30x30"
|
48
|
+
b32.size = "30x40"
|
49
|
+
b33.size = "30x50"
|
50
|
+
h3.attr = "ALIGNMENT = ABOTTOM, SIZE = 150" # Sets hbox's alignment and size */
|
51
|
+
|
52
|
+
# Creates dialog with the three frames */
|
53
|
+
dialog = Iup.Dialog(
|
54
|
+
Iup.Vbox([
|
55
|
+
fr1,
|
56
|
+
fr2,
|
57
|
+
fr3]
|
58
|
+
)
|
59
|
+
)
|
60
|
+
|
61
|
+
dialog.title = "IupHbox" # Sets dialog's title */
|
62
|
+
|
63
|
+
dialog.ShowXY(Iup::CENTER, Iup::CENTER ) # Shows dialog in the center of the screen */
|
64
|
+
|
65
|
+
dialog.Show # Shows dialog in the center of the screen */
|
66
|
+
Iup.MainLoop # Initializes IUP main loop */
|
67
|
+
dialog.Destroy
|
68
|
+
|
@@ -0,0 +1,113 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require "iup"
|
3
|
+
|
4
|
+
pixmap_x = [
|
5
|
+
1,2,3,3,3,3,3,3,3,2,1,
|
6
|
+
2,1,2,3,3,3,3,3,2,1,2,
|
7
|
+
3,2,1,2,3,3,3,2,1,2,3,
|
8
|
+
3,3,2,1,2,3,2,1,2,3,3,
|
9
|
+
3,3,3,2,1,2,1,2,3,3,3,
|
10
|
+
3,3,3,3,2,1,2,3,3,3,3,
|
11
|
+
3,3,3,2,1,2,1,2,3,3,3,
|
12
|
+
3,3,2,1,2,3,2,1,2,3,3,
|
13
|
+
3,2,1,2,3,3,3,2,1,2,3,
|
14
|
+
2,1,2,3,3,3,3,3,2,1,2,
|
15
|
+
1,2,3,3,3,3,3,3,3,2,1
|
16
|
+
]
|
17
|
+
|
18
|
+
pixmap_cursor = [
|
19
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
20
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
21
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
22
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
23
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
24
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
25
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
26
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
27
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
28
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,
|
29
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
30
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
31
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
32
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,
|
33
|
+
0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,2,2,2,0,0,0,0,0,0,0,0,0,0,0,
|
34
|
+
0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,1,1,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,
|
35
|
+
0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
36
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
37
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
38
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
39
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
40
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
41
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
42
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
43
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
44
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
45
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
46
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
47
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
48
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
49
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
50
|
+
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
51
|
+
]
|
52
|
+
|
53
|
+
|
54
|
+
img_x = Iup.Image( 11, 11, pixmap_x )
|
55
|
+
img_x["1"] = "0 1 0"
|
56
|
+
img_x["2"] = "255 0 0"
|
57
|
+
img_x["3"] = "255 255 0"
|
58
|
+
|
59
|
+
Iup.SetHandle( "img_x", img_x )
|
60
|
+
img_cursor = Iup.Image( 32, 32, pixmap_cursor )
|
61
|
+
|
62
|
+
img_cursor["1"] = "255 0 0"
|
63
|
+
img_cursor["2"] = "128 0 0"
|
64
|
+
|
65
|
+
img_cursor.hotspot = "21:10"
|
66
|
+
|
67
|
+
Iup.SetHandle( "img_cursor", img_cursor )
|
68
|
+
|
69
|
+
btn = Iup.Button( "Dummy")
|
70
|
+
btn.image = "img_x"
|
71
|
+
|
72
|
+
lbl = Iup.Label( "Dummy" )
|
73
|
+
lbl.image = "img_x"
|
74
|
+
|
75
|
+
tgl = Iup.Toggle("Dummy")
|
76
|
+
tgl.image = "img_x"
|
77
|
+
|
78
|
+
tgl_radio_1 = Iup.Toggle("Dummy")
|
79
|
+
tgl_radio_2 = Iup.Toggle("Dummy")
|
80
|
+
|
81
|
+
tgl_radio_1.image = "img_x"
|
82
|
+
tgl_radio_2.image = "img_x"
|
83
|
+
|
84
|
+
string_size = "\"X\" image width = #{img_x.width} \"X\" image height = #{img_x.height}"
|
85
|
+
|
86
|
+
lbl_size = Iup.Label( string_size )
|
87
|
+
|
88
|
+
frm_btn = Iup.Frame( btn )
|
89
|
+
frm_lbl = Iup.Frame( lbl )
|
90
|
+
frm_tgl = Iup.Frame( tgl )
|
91
|
+
frm_tgl_radio = Iup.Frame( Iup.Radio( Iup.Vbox([ tgl_radio_1, tgl_radio_2]) ) )
|
92
|
+
|
93
|
+
frm_btn.attr = "TITLE=button, SIZE=EIGHTHxEIGHTH"
|
94
|
+
frm_lbl.attr = "TITLE=label , SIZE=EIGHTHxEIGHTH"
|
95
|
+
frm_tgl.attr = "TITLE=toggle, SIZE=EIGHTHxEIGHTH"
|
96
|
+
frm_tgl_radio.attr = "TITLE=radio, SIZE=EIGHTHxEIGHTH"
|
97
|
+
|
98
|
+
dlg = Iup.Dialog(
|
99
|
+
Iup.Vbox([
|
100
|
+
Iup.Hbox([ frm_btn, frm_lbl, frm_tgl, frm_tgl_radio]),
|
101
|
+
Iup.Fill(),
|
102
|
+
Iup.Hbox([ Iup.Fill(), lbl_size, Iup.Fill()])]
|
103
|
+
)
|
104
|
+
)
|
105
|
+
|
106
|
+
dlg.attr = "TITLE=\"Iup.Image Example\", SIZE=HALFxQUARTER, CURSOR=img_cursor"
|
107
|
+
|
108
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
109
|
+
|
110
|
+
Iup.MainLoop()
|
111
|
+
dlg.Destroy()
|
112
|
+
img_x.Destroy()
|
113
|
+
img_cursor.Destroy()
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require "iup"
|
3
|
+
|
4
|
+
item_save_cb = lambda do |ih,*c|
|
5
|
+
Iup.Message("Test","Saved!")
|
6
|
+
Iup::DEFAULT
|
7
|
+
end
|
8
|
+
|
9
|
+
item_autosave_cb = lambda do |ih,*c|
|
10
|
+
item_autosave = Iup.GetHandle("item_autosave")
|
11
|
+
if (item_autosave.value=="ON")
|
12
|
+
Iup.Message("Auto Save","OFF")
|
13
|
+
item_autosave.value = "OFF"
|
14
|
+
else
|
15
|
+
Iup.Message("Auto Save","ON")
|
16
|
+
item_autosave.value = "ON"
|
17
|
+
end
|
18
|
+
|
19
|
+
Iup::DEFAULT
|
20
|
+
end
|
21
|
+
|
22
|
+
item_exit_cb = lambda do |ih,*c|
|
23
|
+
return Iup::CLOSE
|
24
|
+
end
|
25
|
+
|
26
|
+
text = Iup.Text(:value=>"This is an empty text")
|
27
|
+
|
28
|
+
item_save = Iup.Item("Save\tCtrl+S") # this is NOT related with the Ctrl+S key callback, it will just align the text at right */
|
29
|
+
item_autosave = Iup.Item("&Auto Save")
|
30
|
+
item_exit = Iup.Item("Exit")
|
31
|
+
|
32
|
+
item_exit.key = "K_x" # this is NOT related with the Ctrl+X key callback, it will just underline the letter */
|
33
|
+
|
34
|
+
item_exit.action = item_exit_cb
|
35
|
+
item_autosave.action = item_autosave_cb
|
36
|
+
|
37
|
+
item_autosave.value = "ON"
|
38
|
+
Iup.SetHandle("item_autosave", item_autosave) # giving a name to a iup handle */
|
39
|
+
|
40
|
+
menu_file = Iup.Menu([item_save, item_autosave, item_exit])
|
41
|
+
|
42
|
+
submenu_file = Iup.Submenu("File", menu_file)
|
43
|
+
|
44
|
+
menu = Iup.Menu([submenu_file])
|
45
|
+
|
46
|
+
Iup.SetHandle("menu", menu)
|
47
|
+
|
48
|
+
dlg = Iup.Dialog(Iup.Vbox([text, Iup.Button("Test")]))
|
49
|
+
|
50
|
+
dlg.margin = "10x10"
|
51
|
+
dlg.gap = 10
|
52
|
+
dlg.title = "IupItem"
|
53
|
+
dlg.menu = "menu"
|
54
|
+
dlg.K_cX = item_exit_cb # this will also affect the Iup.Text if at focus, since it is used for clipboard cut */
|
55
|
+
dlg.K_cA = item_autosave_cb # this will also affect the Iup.Text if at focus, since it is used for select all */
|
56
|
+
dlg.K_cS = item_save_cb
|
57
|
+
|
58
|
+
dlg.ShowXY(Iup::CENTER, Iup::CENTER)
|
59
|
+
Iup.MainLoop()
|
60
|
+
dlg.Destroy()
|