a186@mindlink.UUCP (Harvey Taylor) (11/02/89)
I finally got a copy of MiddleButton by Michael Sinz currently
at CBM. This is a program which installs an input event handler
which watches for the MiddleMouse Button and converts it into a
Shift key, so you can do Extended Select with just the mouse.
The algorithm in the handler is this:
Is this a RawMouse class event?
If no: goto get next event
If yes:
Is this a MButton code event?
If no: goto test for MButton Up
If yes: save a LShift value
goto set qualifier
Is this a MButton Up code event?
If no: goto set ie_qualifier
If yes: clear the LShift value
Set the ie_qualifier field
Get the next event. If none quit.
This has the effect of passing on the _LShift qualifier for
mouse events until the middle mouse key is released.
This is interesting, but not what I was interested in. What I
wanted was a way to shove the WorkBench screen to the back, with
the mouse. ie I want to convert the MMB messages into LAmiga-M
messages. I modified the program to do this:
Is this a RawMouse class event?
If no: goto get next event
If yes:
Is this a MButton code event?
If no: goto test for MButton Up
If yes: set Keycode_m
goto set Class & Qualifier
Is this a MButton Up code event?
If no: goto get next event
If yes: set Keycode_m & Prefix_up
Set RawKey class & LAmiga qualifier
Get the next event. If none quit.
It seems to work. It moves the WBench back. I have not yet
tested it extensively, however.
What I am wondering is how dicey is changing input events that
dramatically? Just how thin is this ice?
<-Harvey
"Look out kid. It's something you did.
God knows what, but you're doing it again!"
Harvey Taylor Meta Media Productions
uunet!van-bc!rsoft!mindlink!Harvey_Taylor
a186@mindlink.UUCP