I'm using MIDIBuddy in order to generate MIDI messages in MIDI Translator with the mouse and trackball. I need to be able to distinguish between the mouse and trackball, and also, constrain the movement of the cursor in response to the trackball, but not the mouse. Here's the situation:
- I use two monitors. One is placed above the other.
- Moving the trackball in the vertical axis moves the cursor from one monitor to the other.
- While the cursor is in the upper monitor, its position affects a parameter in Ableton Live (maximum effect when cursor is at the top of the screen, minimum when at the bottom of the screen)
- When the cursor is in the lower monitor, further movement of the cursor has no effect even though I can see MIDIBuddy continuing to reckon screen position.
Therein lies the problem. If I continue downward movement, MIDIBuddy will continue to countdown cursor position until the cursor is at the bottom of the lower screen. If I then reverse direction and move the trackball upwards, it doesn't begin to affect the Ableton parameter until the cursor is within the upper screen again. Then the desired action on the parameter starts to work again.
It's ok for the mouse to have this dead zone, since I would be using it only to control things displayed on the bottom monitor (in a second instance of Live). There are no constraints needed for this movement.
So what I've described is essentially a big dead zone in trackball response as long as the cursor is in the bottom monitor.
Is there some way to prevent the dead zone? You've suggested using relative mouse position to distinguish between the mouse and trackball and to constrain the trackball movement but not the mouse movement. That would be helpful, but the problem remains that I want to eliminate the dead zone so that no matter how far I've moved the cursor onto the lower monitor with the trackball, upward movement would immediately resume control of the parameter. Is that possible?
Also, could you give me an example of how I'd use relative mouse movements instead of absolute positioning. Hmmm.... I think this may take a few rounds of questions and answers to clear up what I'm after.