Souris – Boutons et molettes

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

  • Gilloo

      #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

        #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

          #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

            #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

              #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

                #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

                  #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