-#if 0 // XXX25
- char ascii;
- int event = screen_qread(val, &ascii);
-#else
- int event = 123456789;
-#endif
-
- switch (event) {
- case LEFTMOUSE:
- if (*val) qualN |= LMOUSE;
- else qualN &= ~LMOUSE;
- break;
- case MIDDLEMOUSE:
- if (*val) qualN |= MMOUSE;
- else qualN &= ~MMOUSE;
- break;
- case RIGHTMOUSE:
- if (*val) qualN |= RMOUSE;
- else qualN &= ~RMOUSE;
- break;
- case LEFTSHIFTKEY:
- if (*val) qualN |= LSHIFT;
- else qualN &= ~LSHIFT;
- break;
- case RIGHTSHIFTKEY:
- if (*val) qualN |= RSHIFT;
- else qualN &= ~RSHIFT;
- break;
- case LEFTCTRLKEY:
- if (*val) qualN |= LCTRL;
- else qualN &= ~LCTRL;
- break;
- case RIGHTCTRLKEY:
- if (*val) qualN |= RCTRL;
- else qualN &= ~RCTRL;
- break;
- case LEFTALTKEY:
- if (*val) qualN |= LALT;
- else qualN &= ~LALT;
- break;
- case RIGHTALTKEY:
- if (*val) qualN |= RALT;
- else qualN &= ~RALT;
- break;
- }
-
- return(event);
+ int val;
+
+ /* Shift */
+ GHOST_GetModifierKeyState(g_system, GHOST_kModifierKeyLeftShift, &val);
+ if (val) qualN |= LSHIFT;
+ else qualN &= ~LSHIFT;
+
+ GHOST_GetModifierKeyState(g_system, GHOST_kModifierKeyRightShift, &val);
+ if (val) qualN |= RSHIFT;
+ else qualN &= ~RSHIFT;
+
+ /* Control */
+ GHOST_GetModifierKeyState(g_system, GHOST_kModifierKeyLeftControl, &val);
+ if (val) qualN |= LCTRL;
+ else qualN &= ~LCTRL;
+
+ GHOST_GetModifierKeyState(g_system, GHOST_kModifierKeyRightControl, &val);
+ if (val) qualN |= RCTRL;
+ else qualN &= ~RCTRL;
+
+ /* Alt */
+ GHOST_GetModifierKeyState(g_system, GHOST_kModifierKeyLeftAlt, &val);
+ if (val) qualN |= LCTRL;
+ else qualN &= ~LCTRL;
+
+ GHOST_GetModifierKeyState(g_system, GHOST_kModifierKeyRightAlt, &val);
+ if (val) qualN |= RCTRL;
+ else qualN &= ~RCTRL;
+
+ /* LMB */
+ GHOST_GetButtonState(g_system, GHOST_kButtonMaskLeft, &val);
+ if (val) qualN |= LMOUSE;
+ else qualN &= ~LMOUSE;
+
+ /* MMB */
+ GHOST_GetButtonState(g_system, GHOST_kButtonMaskMiddle, &val);
+ if (val) qualN |= MMOUSE;
+ else qualN &= ~MMOUSE;
+
+ /* RMB */
+ GHOST_GetButtonState(g_system, GHOST_kButtonMaskRight, &val);
+ if (val) qualN |= RMOUSE;
+ else qualN &= ~RMOUSE;