Announcement

Collapse
No announcement yet.

Input tool using MouseWheel

Collapse
This topic is closed.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Input tool using MouseWheel

    Hi Guys,

    just built a nice little tool for entering keystrokes using the mouse wheel only and thought, you might wanna give it a try.

    After you've copied it to your harddrive and you run it, you'll get this picture on the screen:


    As you can see, it shows you a small tootip window, displaying the currently selected, the previous and the next character in the queue. To select a character, simply turn the mouse wheel. When you reach the character you need, click the mouse wheel button and it'll be send to the current control (which is supposed to be a textbox). Do that until you've completed your input.
    Further you see the window is split in four regions, whereas 3 of them have a special meaning:
    - BS sends a Backspace whenever you click it (with the left mouse button)
    - CR sends a Carriage Return
    - Func switches between normal characters, numbers and special characters

    Once you stop turning the mouse wheel, this window will hide itself. To bring it back, simply hold down the wheel button until it pops up again (this timings are configurable as well).

    What characters you see there browsing through, is defined within the according section in the configuration file. Feel free to edit and change this according to your needs.
    Also in the configuration file you can apply colors, position and font settings. I'd say, the configuration is self explaining (for those who know me: yes, it is XML - you can use PhoneCtlConfig.exe to change it)

    Needles to say that it's .NET and therefore it needs .NET Framework to run it.

    If you try it, please be aware that it's just capturing mouse input. Since it doesn't consume it completely, it may happen that the application in foreground reacts on the wheel command as well.


    You can download it here: MouseWheelInput.zip
    Skinning to go... VisualDesigner2!

  • #2
    Interesting idea...

    Comment


    • #3
      Yeah... but useless for you ... .NET... you know
      Skinning to go... VisualDesigner2!

      Comment


      • #4
        whoah, sweet prog.. haven't had a change to use yet, but I'm sure I'll need it, especially since the "i-drive" type of knob I have acts as a scroll wheel.

        Thanks!

        Comment


        • #5
          Originally posted by zorro
          Yeah... but useless for you ... .NET... you know
          RIGHT! Agrrrrr....
          Well, you still have got my compliment for invention and the end result.
          Now get back to chair and code it again from scratch in Delphi 8 or something.
          Bloddy coders...

          Comment


          • #6
            A small improvement: If the window is open and you hold down the mouse wheel button it'll switch function mode (normal / numbers / spec. char) without the need to move the mouse and click the upper right corner.
            Skinning to go... VisualDesigner2!

            Comment


            • #7
              Originally posted by LagunaICE
              RIGHT! Agrrrrr....
              Well, you still have got my compliment for invention and the end result.
              Now get back to chair and code it again from scratch in Delphi 8 or something.
              Bloddy coders...
              I could do that... but I love doing .NET so much.

              BTW: I recognized that there is a slight performance problem using .NET with on a Via Epia Mxxxxx. So I replaced my M10000 with an old notebook (Pentium III 1Ghz) and all performane issues were blown away.
              Beside, there are so many other benefits using a notebook. e.g. no more reset on starting the engine, you can use it elsewhere than only in your car.
              Pity I don't have a docking station for it... it'll be more comfy removing it.
              Skinning to go... VisualDesigner2!

              Comment


              • #8
                Field testing

                Works great
                Attached Files
                Skinning to go... VisualDesigner2!

                Comment


                • #9
                  Some comment on this?
                  Skinning to go... VisualDesigner2!

                  Comment


                  • #10
                    I personally dont have any use for this tool, but I tried it and I like it. Well done.
                    2002 Honda CR-V
                    Carputer progress: 90% [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ -]
                    Spent so far: $1105.90


                    Download the NEXUS Skin for Centrafuse
                    ...or even Listen to my music

                    Comment


                    • #11
                      I like it, really cool.
                      [H]4 Life
                      My next generation Front End is right on schedule.
                      It will be done sometime in the next generation.
                      I'm a lesbian too.
                      I am for hire!

                      Comment


                      • #12
                        This is awesome, I might have to add a wheel mouse to my carputer.

                        I'm soooooo glad it uses .NET
                        AMD XP 2600+/512MB RAM/120GB hard drive
                        Opus 150W/DVD/GPS/7" Lilliput TS/802.11g/Bluetooth
                        Installed.


                        -GPSSecure- - GPS Tracking
                        -AltTabber2.2.2- - Handy touchscreen utility.

                        Comment


                        • #13
                          I just added a Windows Messaging interface upon Frodo's suggestion. So you may use other hardware than a wheel mouse (like... hmmm... I-Bus, or... hmm... phidgets?)

                          Details will follow...
                          Skinning to go... VisualDesigner2!

                          Comment


                          • #14
                            [H]4 Life
                            My next generation Front End is right on schedule.
                            It will be done sometime in the next generation.
                            I'm a lesbian too.
                            I am for hire!

                            Comment


                            • #15
                              Update!

                              As I metioned before, I've updated MouseWheelInput to provide the capability of using other hardware for input than a wheel mouse only. This is how it works:



                              All you need is the piece of software labled "Driver" to translate the input device commands into MWI commands. These are:
                              Code:
                              WM_WHEELBUTTONDOWN = WM_USER + 0
                              WM_WHEELBUTTONUP = WM_USER + 1
                              WM_WHEELSCROLL = WM_USER + 2
                              WM_ENTER = WM_USER + 3
                              WM_BACK = WM_USER + 4
                              WM_SWITCHMODE = WM_USER + 5
                              The only message that is transmitting a parameter is WM_WHEELSCROLL, which has to describe the scrolling direction in lParam:
                              >0 - scroll up
                              <0 - scroll down

                              Messages have to be sent using
                              Code:
                              SendMessage(handle, message, wParam, lParam)
                              Whereas the handle can be determined using
                              Code:
                              handle = FindWindow(null, "MouseWheelInput")
                              To enable this feature, set <UseMouseHook> to false in the configuration file.

                              A driver also may communicate via the FrodoComm interface. This can be accomplished by sending a specific notification (with PostMessageById or PostMessageByName) with:
                              FrodoCommMessageType : SET
                              FrodoCommMessageEventName: INPUT
                              FrodoCommMessageFormat: TEXT
                              The FrodoCommMessage can be one of these:
                              Code:
                              WHEELBUTTONDOWN
                              WHEELBUTTONUP
                              WHEELSCROLLUP
                              WHEELSCROLLDOWN
                              ENTER
                              BACK
                              SWITCHMODE
                              As you see also in the picture above, keystrokes can be sent to Windows or to FrodoComm (with a PostMessageBroadCast message).
                              To make it work with FrodoComm instead of Windows, set option <UseFrodoComm> to true in the configuration file.

                              You'll get then a FrodoCommMessageType Notify with FrodoCommMessageEventName KeyPress and a Xml message like this one:
                              <Key virtualKey="65">A</Key>


                              Enjoy playing around
                              Skinning to go... VisualDesigner2!

                              Comment

                              Working...
                              X