Souris – Boutons et molettes

7 sujets de 1 à 7 (sur un total de 7)

  • Gilloo

    • Messages : 831
    #4061

    Est-ce que le bouton central d’une souris est géré dans input.device?

    Lors d’un évènement ie_Class IECLASS_RAWMOUSE, dans ie_Code de la structure InputEvent on peut mettre

    IECODE_LBUTTON pour le bouton gauche

    IECODE_RBUTTON pour le bouton droit

    Si je gère MBUTTON de la même façon que pour LBUTTON et RBUTTON, en mettant IECODE_MBUTTON, ça fait n’importe quoi (ni un gauche , ni un droit, ça perturbe le système…)

    C’est géré c’te chose ?

    Comment peut-on interpréter les ordres de la molette, sans ajouter d’inputhandler ou autres bidouilles (i.e. quel genre d’évènement peut-on générer)?

    (j’utilise OS3.1 (et parfois WB1.3, mais c’est une autre histoire ;-) ))

    Yomgui

    • Messages : 1589
    #72038

    Golioo,

    Il faudrait que tu charge le code source de Blender (version MorphOS) et que tu regarde dans intern/ghost/intern/GHOST_SystemMOS.cpp (ou qq chose dans le genre ;-), a moins que ce soit WindowMOS.cpp…)

    C’est compatible AmigaOS.

    le code source c’est ici.

    seg

    • Messages : 1149
    #72039

    @Gilloo

    T’as vraiment besoin de passer par le input.device?

    Tu ouvres une fenetre avec l’IDCMP_MOUSEBUTTONS.

    Tu interceptes le message qui va bien dans ta boucle de messages, et tu regardes dans ton msg->Code si t’as MIDDLEDOWN ou MIDDLEUP.

    a+

    Seg.

    Gilloo

    • Messages : 831
    #72040

    @seg

    Je passe des évènements directement à l’input.device car ma souris est USB…

    périphérique USB -> pile USB -> input.device -> intuition

    Les idcmp sont utilisables par les applications utilisant intuition. Mon problème se situe de l’autre coté de l’input.device, pour la génération :sweat:

    seg

    • Messages : 1149
    #72041

    En examinant un peu les includes, je me dis que si tu check le masque IEQUALIFIER_MIDBUTTON du champ ie_Qualifier, t’as peut-etre espoir d’en faire quelque chose…

    a+

    Seg.

    Gilloo

    • Messages : 831
    #72042

    @seg et @Yomgui

    Merci à tous les deux

    J’ai l’impression qu’il y a un loup avec les InputEvent du 3ième bouton de souris dans l’input.device… :sweat:

    Au moins j’aurais un bout de code pour tester le résultat attendu.

    Gilloo

    • Messages : 831
    #72043

    Gilloo a écrit :


    @seg
    et @Yomgui

    Merci à tous les deux

    J’ai l’impression qu’il y a un loup avec les InputEvent du 3ième bouton de souris dans l’input.device… :sweat:

    Au moins j’aurais un bout de code pour tester le résultat attendu.

    A y est: trouvé les loups.

    – Il faut que la tâche qui génére les évènements soit d’une priorité >= à celle de la tâche intuition (60) sinon les évènements ne se suivent pas en séquence.

    – Il faut générer les InputEvent de préférence dans des structures séparées, sinon on mélange: un pour le clic droit, un pour le clic gauche, un pour le clic central, un autre pour le déplacement soit 4 structures InputEvent.

    Le clic central est bien généré! :-D

    Merci pour vos bouts de code.

7 sujets de 1 à 7 (sur un total de 7)

  • Vous devez être connecté pour répondre à ce sujet.

Forums AmigaOS, MorphOS et AROS Développement Souris – Boutons et molettes

Amiga Impact