Mercurial > sdl-ios-xcode
comparison src/video/x11/SDL_x11events.c @ 3685:64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Thu, 21 Jan 2010 06:21:52 +0000 |
parents | d9dd6cbba4c0 |
children | f7b03b6838cb |
comparison
equal
deleted
inserted
replaced
3684:cc564f08884f | 3685:64ce267332c6 |
---|---|
64 | 64 |
65 data = NULL; | 65 data = NULL; |
66 if (videodata && videodata->windowlist) { | 66 if (videodata && videodata->windowlist) { |
67 for (i = 0; i < videodata->numwindows; ++i) { | 67 for (i = 0; i < videodata->numwindows; ++i) { |
68 if ((videodata->windowlist[i] != NULL) && | 68 if ((videodata->windowlist[i] != NULL) && |
69 (videodata->windowlist[i]->window == xevent.xany.window)) { | 69 (videodata->windowlist[i]->xwindow == xevent.xany.window)) { |
70 data = videodata->windowlist[i]; | 70 data = videodata->windowlist[i]; |
71 break; | 71 break; |
72 } | 72 } |
73 } | 73 } |
74 } | 74 } |
95 #endif | 95 #endif |
96 #if 1 | 96 #if 1 |
97 /* FIXME: Should we reset data for all mice? */ | 97 /* FIXME: Should we reset data for all mice? */ |
98 for (i = 0; i < SDL_GetNumMice(); ++i) { | 98 for (i = 0; i < SDL_GetNumMice(); ++i) { |
99 SDL_Mouse *mouse = SDL_GetMouse(i); | 99 SDL_Mouse *mouse = SDL_GetMouse(i); |
100 SDL_SetMouseFocus(mouse->id, data->windowID); | 100 SDL_SetMouseFocus(mouse->id, data->window); |
101 } | 101 } |
102 #endif | 102 #endif |
103 } | 103 } |
104 break; | 104 break; |
105 | 105 |
130 /* Gaining input focus? */ | 130 /* Gaining input focus? */ |
131 case FocusIn:{ | 131 case FocusIn:{ |
132 #ifdef DEBUG_XEVENTS | 132 #ifdef DEBUG_XEVENTS |
133 printf("FocusIn!\n"); | 133 printf("FocusIn!\n"); |
134 #endif | 134 #endif |
135 SDL_SetKeyboardFocus(videodata->keyboard, data->windowID); | 135 SDL_SetKeyboardFocus(videodata->keyboard, data->window); |
136 #ifdef X_HAVE_UTF8_STRING | 136 #ifdef X_HAVE_UTF8_STRING |
137 if (data->ic) { | 137 if (data->ic) { |
138 XSetICFocus(data->ic); | 138 XSetICFocus(data->ic); |
139 } | 139 } |
140 #endif | 140 #endif |
230 /* Have we been iconified? */ | 230 /* Have we been iconified? */ |
231 case UnmapNotify:{ | 231 case UnmapNotify:{ |
232 #ifdef DEBUG_XEVENTS | 232 #ifdef DEBUG_XEVENTS |
233 printf("UnmapNotify!\n"); | 233 printf("UnmapNotify!\n"); |
234 #endif | 234 #endif |
235 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_HIDDEN, 0, 0); | 235 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_HIDDEN, 0, 0); |
236 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_MINIMIZED, 0, | 236 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_MINIMIZED, 0, 0); |
237 0); | |
238 } | 237 } |
239 break; | 238 break; |
240 | 239 |
241 /* Have we been restored? */ | 240 /* Have we been restored? */ |
242 case MapNotify:{ | 241 case MapNotify:{ |
243 #ifdef DEBUG_XEVENTS | 242 #ifdef DEBUG_XEVENTS |
244 printf("MapNotify!\n"); | 243 printf("MapNotify!\n"); |
245 #endif | 244 #endif |
246 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_SHOWN, 0, 0); | 245 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_SHOWN, 0, 0); |
247 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_RESTORED, 0, | 246 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_RESTORED, 0, 0); |
248 0); | |
249 } | 247 } |
250 break; | 248 break; |
251 | 249 |
252 /* Have we been resized or moved? */ | 250 /* Have we been resized or moved? */ |
253 case ConfigureNotify:{ | 251 case ConfigureNotify:{ |
254 #ifdef DEBUG_XEVENTS | 252 #ifdef DEBUG_XEVENTS |
255 printf("ConfigureNotify! (resize: %dx%d)\n", | 253 printf("ConfigureNotify! (resize: %dx%d)\n", |
256 xevent.xconfigure.width, xevent.xconfigure.height); | 254 xevent.xconfigure.width, xevent.xconfigure.height); |
257 #endif | 255 #endif |
258 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_MOVED, | 256 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_MOVED, |
259 xevent.xconfigure.x, xevent.xconfigure.y); | 257 xevent.xconfigure.x, xevent.xconfigure.y); |
260 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_RESIZED, | 258 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_RESIZED, |
261 xevent.xconfigure.width, | 259 xevent.xconfigure.width, |
262 xevent.xconfigure.height); | 260 xevent.xconfigure.height); |
263 } | 261 } |
264 break; | 262 break; |
265 | 263 |
266 /* Have we been requested to quit (or another client message?) */ | 264 /* Have we been requested to quit (or another client message?) */ |
267 case ClientMessage:{ | 265 case ClientMessage:{ |
268 if ((xevent.xclient.format == 32) && | 266 if ((xevent.xclient.format == 32) && |
269 (xevent.xclient.data.l[0] == videodata->WM_DELETE_WINDOW)) { | 267 (xevent.xclient.data.l[0] == videodata->WM_DELETE_WINDOW)) { |
270 | 268 |
271 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_CLOSE, 0, | 269 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_CLOSE, 0, 0); |
272 0); | |
273 } | 270 } |
274 } | 271 } |
275 break; | 272 break; |
276 | 273 |
277 /* Do we need to refresh ourselves? */ | 274 /* Do we need to refresh ourselves? */ |
278 case Expose:{ | 275 case Expose:{ |
279 #ifdef DEBUG_XEVENTS | 276 #ifdef DEBUG_XEVENTS |
280 printf("Expose (count = %d)\n", xevent.xexpose.count); | 277 printf("Expose (count = %d)\n", xevent.xexpose.count); |
281 #endif | 278 #endif |
282 SDL_SendWindowEvent(data->windowID, SDL_WINDOWEVENT_EXPOSED, 0, | 279 SDL_SendWindowEvent(data->window, SDL_WINDOWEVENT_EXPOSED, 0, 0); |
283 0); | |
284 } | 280 } |
285 break; | 281 break; |
286 | 282 |
287 default:{ | 283 default:{ |
288 for (i = 0; i < SDL_GetNumMice(); ++i) { | 284 for (i = 0; i < SDL_GetNumMice(); ++i) { |