• Just looking around
    evenmore
    Posts: 8 from 2012/2/6
    From: N. Ireland
    Thanks for your help. Then IDCMP rawkey is set up in the mSetup function...

    PROC mSetup(cl:PTR TO iclass,obj:PTR TO object,msg:PTR TO muip_handleinput)
    IF doSuperMethodA(cl,obj,msg)=NIL THEN RETURN FALSE
    Mui_RequestIDCMP(obj, IDCMP_MOUSEBUTTONS OR
    IDCMP_RAWKEY OR
    IDCMP_VANILLAKEY)
    ENDPROC MUI_TRUE

    The mHandleInput function calls the RAWKEY function...

    PROC mHandleInput(cl:PTR TO iclass, obj:PTR TO object, msg:PTR TO muip_handleinput)
    ...
    IF msg.imsg
    selectdummy:=msg.imsg.class
    qual := msg.imsg.qualifier
    code := msg.imsg.code

    SELECT selectdummy
    CASE IDCMP_RAWKEY; handlerawkeyevent(qual, code)
    CASE IDCMP_VANILLAKEY; handlevanillakeyevent(qual, code)
    ...
    ENDSELECT
    ENDPROC doSuperMethodA(cl,obj,msg)

    And then the handlerawkeyevent() function handles what is actually pressed...

    PROC handlerawkeyevent(qualifier, code)
    DEF value
    IF qualifier AND (IEQUAL_ALT)
    SELECT code
    CASE CURSOR_UP_KEY
    ...
    ENDSELECT
    ...
    ENDIF
    ENDPROC

    Am I missing something when it comes to MUI4? Thanks again!
  • »15.03.12 - 21:46
    Profile Visit Website