home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 22 / AACD 22.iso / AACD / Programming / RxMUI / Examples / slidorama.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  2001-05-24  |  6.5 KB  |  151 lines

  1. /**/
  2.  
  3. signal on halt
  4. signal on break_c
  5.  
  6. l="rmh.library";if ~show("L",l) then;if ~addlib(l,0,-30) then exit
  7. if AddLibrary("rxmui.library")~=0 then exit
  8.  
  9. call rxmuiopt("showerr debugmode")
  10.  
  11. call CreateApp
  12. call handleApp
  13.  
  14. /***********************************************************************/
  15. CreateApp: procedure
  16.  
  17.  
  18.     app.Title="Slidorama"
  19.     app.Version="$VER: Slidorama 1.0 (17.12.00)"
  20.     app.Copyright="©1999, alfie"
  21.     app.Author="alfie"
  22.     app.Description="Slidorama example"
  23.     app.Base="EXAMPLE"
  24.     app.menustrip=MakeObj(,"menustrip",,
  25.                     MakeObj(,"menu","Project",,
  26.                         menuitem("mabout","About...","?"),,
  27.                         menuitem("maboutrxmui","About RxMUI..."),,
  28.                         menuitem("maboutmui","About MUI..."),,
  29.                         menuitem("","BAR"),,
  30.                         menuitem("mhide","Hide","H"),,
  31.                         menuitem("","BAR"),,
  32.                         menuitem("mquit","Quit","Q")),,
  33.                     MakeObj("medit","menu","Editor",,
  34.                         MakeObj(,"MenuItem",menuitem("mtest","Test"),,
  35.                             menuitem("mtest1","Show all",,"CHECKED CHEKIT TOGGLE",6),,
  36.                             menuitem("mtest2","Show left",,"CHEKIT TOGGLE",5),,
  37.                             menuitem("mtest3","Show right",,"CHEKIT TOGGLE",3))))
  38.  
  39.     app.SubWindow="win"
  40.      win.ID="MAIN"
  41.      win.Title="Slidorama"
  42.  
  43.      sl.Stringify="parse arg v;if v=0 then return ' You''re kidding! '; if v<40 then return v 'points. :-(';if v<61 then return v 'points. :-|';if v=100 then return ' It''s magic! '; return v 'points. :-)'"
  44.  
  45.      win.Contents=,
  46.         MakeObj("mgroup","VGroup",,
  47.             MakeObj(,"HGroup",,
  48.                 MakeObj("left","HFrameGroup","Knobs",,
  49.                     MAkeObj(,"HCenter",,
  50.                         MAkeObj(,"VCenter",,
  51.                             MakeObj(,"ColGroup",2,,
  52.                                 Label("Volume:"),,
  53.                                 MakeObj(,"HGroup",,
  54.                                     MakeObj(,"Knob",,0,64,64),,
  55.                                     MakeObj(,"Knob",,0,64,64),,
  56.                                     MakeObj(,"Knob",,0,64,64),,
  57.                                     MakeObj(,"Knob",,0,64,64)),,
  58.                                 Label("Bass:"),,
  59.                                 MakeObj(,"HGroup",,
  60.                                     MakeObj(,"Knob",,-100,100,0),,
  61.                                     MakeObj(,"Knob",,-100,100,0),,
  62.                                     MakeObj(,"Knob",,-100,100,0),,
  63.                                     MakeObj(,"Knob",,-100,100,0)),,
  64.                                 Label("Treble:"),,
  65.                                 MakeObj(,"HGroup",,
  66.                                     MakeObj(,"Knob",,-100,100,0),,
  67.                                     MakeObj(,"Knob",,-100,100,0),,
  68.                                     MakeObj(,"Knob",,-100,100,0),,
  69.                                     MakeObj(,"Knob",,-100,100,0)))))),,
  70.                 MakeObj("right","VGroup",,
  71.                     MakeObj(,"HFrameGroup","Levelmeter Displays",,
  72.                         MakeObj(,"HCenter",,
  73.                             MAkeObj(,"VCenter",,
  74.                                 MakeObj(,"HGroup",,
  75.                                     MakeObj("lm1","Levelmeter",,,,,"Horizontal"),,
  76.                                     MakeObj("lm2","Levelmeter",,,,,"Vertical"),,
  77.                                     MakeObj("lm3","Levelmeter",,,,,"Total"))))),,
  78.                     MakeObj(,"HFrameGroup","Numeric Buttons",,
  79.                         MakeObj(,"HCenter",,
  80.                             MakeObj(,"ColGroup",2,,
  81.                                 Label("Low:"),,
  82.                                 MakeObj(,"HGroup",,
  83.                                     MakeObj(,"NumericButton",,,,,"%ld %%"),,
  84.                                     MakeObj(,"NumericButton",,,,,"%ld %%"),,
  85.                                     MakeObj(,"NumericButton",,,,,"%ld %%")),,
  86.                                 Label("Mid:"),,
  87.                                 MakeObj(,"HGroup",,
  88.                                     MakeObj(,"NumericButton",,,,,"%ld %%"),,
  89.                                     MakeObj(,"NumericButton",,,,,"%ld %%"),,
  90.                                     MakeObj(,"NumericButton",,,,,"%ld %%")),,
  91.                                 Label("High:"),,
  92.                                 MakeObj(,"HGroup",,
  93.                                     MakeObj(,"NumericButton",,,,,"%ld %%"),,
  94.                                     MakeObj(,"NumericButton",,,,,"%ld %%"),,
  95.                                     MakeObj(,"NumericButton",,,,,"%ld %%"))))))),,
  96.             MakeObj(,"HGroup",,
  97.                 Label("Slidorama Rating:"),,
  98.                 MakeObj("sl","Slider")))
  99.  
  100.     res=NewObj("application","app")
  101.     if res~=0 then exit
  102.  
  103.     call Notify("win","closerequest",1,"_app","returnid","quit")
  104.     call Notify("mabout","menutrigger","everytime","_app","about","win")
  105.     call Notify("maboutrxmui","menutrigger","everytime","_app","aboutrxmui","win")
  106.     call Notify("maboutmui","menutrigger","everytime","_app","aboutmui","win")
  107.     call Notify("mhide","menutrigger","everytime","_app","set","iconified",1)
  108.     call Notify("mquit","menutrigger","everytime","_app","returnid","quit")
  109.  
  110.     call Notify("mtest1","checked",1,"left","set","showme",1)
  111.     call Notify("mtest1","checked",1,"right","set","showme",1)
  112.  
  113.     call Notify("mtest2","checked",1,"left","set","showme",1)
  114.     call Notify("mtest2","checked",1,"right","set","showme",0)
  115.  
  116.     call Notify("mtest3","checked",1,"right","set","showme",1)
  117.     call Notify("mtest3","checked",1,"left","set","showme",0)
  118.  
  119.     call Notify("sl","value","EveryTime","lm1","set","value","triggervalue")
  120.     call Notify("sl","value","EveryTime","lm2","set","value","triggervalue")
  121.     call Notify("sl","value","EveryTime","lm3","set","value","triggervalue")
  122.  
  123.     call set("lm2","Reverse",1)
  124.  
  125.     call set("win","open",1)
  126.     if ~xget("win","open") then do
  127.         say "can't open window"
  128.         exit
  129.     end
  130.  
  131.     return
  132. /**************************************************************************/
  133. handleApp: procedure
  134.     hggg=1
  135.     ctrl_c=2**12
  136.     do forever
  137.         call newhandle("APP","H",ctrl_c)
  138.         if and(h.signals,ctrl_c)>0 then exit
  139.         select
  140.             when h.event="QUIT" then do
  141.                 exit
  142.             end
  143.             otherwise say h.event
  144.         end
  145.     end
  146. /***********************************************************************/
  147. halt:
  148. break_c:
  149.     exit
  150. /**************************************************************************/
  151.