/**/

call rxmuiopt("debugmode showerr")

signal on halt
signal on break_c

l="rmh.library";if ~show("L",l) then;if ~addlib(l,0,-30) then exit
if AddLibrary("rxmui.library")~=0 then exit

call createApp
call SetNotifies

call set("win","open",1)
call getattr("win","open","o")
if o=0 then do
    say "can't open window"
    exit
end

call handleApp
exit
/***********************************************************************/
handleApp: procedure
ctrl_c=2**12
do forever
    call newhandle("APP","H",ctrl_c)
    if and(h.signals,ctrl_c)>0 then exit
    select
        when h.event="QUIT" then exit
        otherwise interpret h.event
    end
end
exit
/***********************************************************************/
err: procedure expose sigl rxmuierror
parse arg res
say sigl "["res"]"
    say getrxmuistring(res) "in line" sigl-1 rxmuierror
    exit
/***********************************************************************/
createApp: procedure
    app.Title="Wheel"
    app.Version="$VER: Wheel 1.0 (10.12.99)"
    app.Copyright="©1999, alfie"
    app.Author="alfie"
    app.Description="Wheel example"
    app.Base="RXMUIEXAMPLE"
    app.SubWindow="WIN"
     win.ID="MAIN"
     win.Title="Wheel Example"
     win.Contents="MGROUP"
      mgroup.0="wh"
        wh.class="wheel"
        wh.frame="button"
        wh.min=0
        wh.max=1000000
        wh.value=1000
        wh.wheelinfinit=1

      mgroup.1="whh"
        whh.class="wheel"
        whh.frame="readlist"
        whh.wheelhoriz=1
        whh.min=0
        whh.max=1000000
        whh.value=1000

    res=NewObj("APPLICATION","APP")
    if res~=0 then call err(res)

    return
/***********************************************************************/
setNotifies: procedure
    res=Notify("WIN","CLOSEREQUEST",1,"APP","RETURNID","QUIT")
    if res~=0 then call err(res)

    res=Notify("wh","value","everytime","APP","RETURN","say 'V' h.value","triggerattr")
    if res~=0 then call err(res)

    res=Notify("whh","value","everytime","APP","RETURN","say 'H' h.value","triggerattr")
    if res~=0 then call err(res)

    return
/***********************************************************************/
halt:
break_c:
    exit
/**************************************************************************/
