Mercurial > sdl-ios-xcode
diff src/video/dga/SDL_dgaevents.c @ 1662:782fd950bd46 SDL-1.3
Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API.
WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid.
The code is now run through a consistent indent format:
indent -i4 -nut -nsc -br -ce
The headers are being converted to automatically generate doxygen documentation.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 28 May 2006 13:04:16 +0000 |
parents | 3ba88cb7eb1b |
children | 4da1ee79c9af |
line wrap: on
line diff
--- a/src/video/dga/SDL_dgaevents.c Sun May 21 17:27:13 2006 +0000 +++ b/src/video/dga/SDL_dgaevents.c Sun May 28 13:04:16 2006 +0000 @@ -36,118 +36,129 @@ #include "../x11/SDL_x11dyn.h" /* Heheh we're using X11 event code */ -extern int X11_Pending(Display *display); -extern void X11_InitKeymap(void); -extern SDLKey X11_TranslateKeycode(Display *display, KeyCode kc); +extern int X11_Pending (Display * display); +extern void X11_InitKeymap (void); +extern SDLKey X11_TranslateKeycode (Display * display, KeyCode kc); -static int DGA_DispatchEvent(_THIS) +static int +DGA_DispatchEvent (_THIS) { - int posted; - SDL_NAME(XDGAEvent) xevent; + int posted; + SDL_NAME (XDGAEvent) xevent; - XNextEvent(DGA_Display, (XEvent *)&xevent); + XNextEvent (DGA_Display, (XEvent *) & xevent); - posted = 0; - xevent.type -= DGA_event_base; - switch (xevent.type) { + posted = 0; + xevent.type -= DGA_event_base; + switch (xevent.type) { - /* Mouse motion? */ - case MotionNotify: { - if ( SDL_VideoSurface ) { - posted = SDL_PrivateMouseMotion(0, 1, - xevent.xmotion.dx, xevent.xmotion.dy); - } - } - break; + /* Mouse motion? */ + case MotionNotify: + { + if (SDL_VideoSurface) { + posted = SDL_PrivateMouseMotion (0, 1, + xevent.xmotion.dx, + xevent.xmotion.dy); + } + } + break; - /* Mouse button press? */ - case ButtonPress: { - posted = SDL_PrivateMouseButton(SDL_PRESSED, - xevent.xbutton.button, 0, 0); - } - break; + /* Mouse button press? */ + case ButtonPress: + { + posted = SDL_PrivateMouseButton (SDL_PRESSED, + xevent.xbutton.button, 0, 0); + } + break; - /* Mouse button release? */ - case ButtonRelease: { - posted = SDL_PrivateMouseButton(SDL_RELEASED, - xevent.xbutton.button, 0, 0); - } - break; + /* Mouse button release? */ + case ButtonRelease: + { + posted = SDL_PrivateMouseButton (SDL_RELEASED, + xevent.xbutton.button, 0, 0); + } + break; - /* Key press? */ - case KeyPress: { - SDL_keysym keysym; - KeyCode keycode; - XKeyEvent xkey; + /* Key press? */ + case KeyPress: + { + SDL_keysym keysym; + KeyCode keycode; + XKeyEvent xkey; - SDL_NAME(XDGAKeyEventToXKeyEvent)(&xevent.xkey, &xkey); - keycode = xkey.keycode; + SDL_NAME (XDGAKeyEventToXKeyEvent) (&xevent.xkey, &xkey); + keycode = xkey.keycode; #ifdef DEBUG_XEVENTS -printf("KeyPress (X11 keycode = 0x%X)\n", xkey.keycode); + printf ("KeyPress (X11 keycode = 0x%X)\n", xkey.keycode); #endif - /* Get the translated SDL virtual keysym */ - keysym.scancode = keycode; - keysym.sym = X11_TranslateKeycode(DGA_Display, keycode); - keysym.mod = KMOD_NONE; - keysym.unicode = 0; + /* Get the translated SDL virtual keysym */ + keysym.scancode = keycode; + keysym.sym = X11_TranslateKeycode (DGA_Display, keycode); + keysym.mod = KMOD_NONE; + keysym.unicode = 0; - /* Look up the translated value for the key event */ - if ( SDL_TranslateUNICODE ) { - static XComposeStatus state; - char keybuf[32]; + /* Look up the translated value for the key event */ + if (SDL_TranslateUNICODE) { + static XComposeStatus state; + char keybuf[32]; - if ( XLookupString(&xkey, keybuf, sizeof(keybuf), NULL, &state) ) { - /* - * FIXME: XLookupString() may yield more than one - * character, so we need a mechanism to allow for - * this (perhaps null keypress events with a - * unicode value) - */ - keysym.unicode = (Uint8)keybuf[0]; - } - } - posted = SDL_PrivateKeyboard(SDL_PRESSED, &keysym); - } - break; + if (XLookupString + (&xkey, keybuf, sizeof (keybuf), NULL, &state)) { + /* + * FIXME: XLookupString() may yield more than one + * character, so we need a mechanism to allow for + * this (perhaps null keypress events with a + * unicode value) + */ + keysym.unicode = (Uint8) keybuf[0]; + } + } + posted = SDL_PrivateKeyboard (SDL_PRESSED, &keysym); + } + break; - /* Key release? */ - case KeyRelease: { - SDL_keysym keysym; - KeyCode keycode; - XKeyEvent xkey; + /* Key release? */ + case KeyRelease: + { + SDL_keysym keysym; + KeyCode keycode; + XKeyEvent xkey; - SDL_NAME(XDGAKeyEventToXKeyEvent)(&xevent.xkey, &xkey); - keycode = xkey.keycode; + SDL_NAME (XDGAKeyEventToXKeyEvent) (&xevent.xkey, &xkey); + keycode = xkey.keycode; #ifdef DEBUG_XEVENTS -printf("KeyRelease (X11 keycode = 0x%X)\n", xkey.keycode); + printf ("KeyRelease (X11 keycode = 0x%X)\n", xkey.keycode); #endif - /* Get the translated SDL virtual keysym */ - keysym.scancode = keycode; - keysym.sym = X11_TranslateKeycode(DGA_Display, keycode); - keysym.mod = KMOD_NONE; - keysym.unicode = 0; - posted = SDL_PrivateKeyboard(SDL_RELEASED, &keysym); - } - break; + /* Get the translated SDL virtual keysym */ + keysym.scancode = keycode; + keysym.sym = X11_TranslateKeycode (DGA_Display, keycode); + keysym.mod = KMOD_NONE; + keysym.unicode = 0; + posted = SDL_PrivateKeyboard (SDL_RELEASED, &keysym); + } + break; - break; + break; - } - return(posted); + } + return (posted); } -void DGA_PumpEvents(_THIS) +void +DGA_PumpEvents (_THIS) { - /* Keep processing pending events */ - LOCK_DISPLAY(); - while ( X11_Pending(DGA_Display) ) { - DGA_DispatchEvent(this); - } - UNLOCK_DISPLAY(); + /* Keep processing pending events */ + LOCK_DISPLAY (); + while (X11_Pending (DGA_Display)) { + DGA_DispatchEvent (this); + } + UNLOCK_DISPLAY (); } -void DGA_InitOSKeymap(_THIS) +void +DGA_InitOSKeymap (_THIS) { - X11_InitKeymap(); + X11_InitKeymap (); } +/* vi: set ts=4 sw=4 expandtab: */