Mercurial > sdl-ios-xcode
comparison test/threadwin.c @ 5125:dc0dfdd58f27
Removed completely non-portable event thread hack.
Next I'll be working on generalizing the event sources and making the event queue lock-free. :)
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Thu, 27 Jan 2011 22:44:08 -0800 |
parents | faa9fc8e7f67 |
children |
comparison
equal
deleted
inserted
replaced
5124:0ec550f04bbc | 5125:dc0dfdd58f27 |
---|---|
239 init_flags = SDL_INIT_VIDEO; | 239 init_flags = SDL_INIT_VIDEO; |
240 video_bpp = 8; | 240 video_bpp = 8; |
241 video_flags = SDL_SWSURFACE; | 241 video_flags = SDL_SWSURFACE; |
242 parsed = 1; | 242 parsed = 1; |
243 while (parsed) { | 243 while (parsed) { |
244 /* If the threaded option is enabled, and the SDL library hasn't | 244 if ((argc >= 2) && (strcmp(argv[1], "-fullscreen") == 0)) { |
245 been compiled with threaded events enabled, then the mouse and | |
246 keyboard won't respond. | |
247 */ | |
248 if ((argc >= 2) && (strcmp(argv[1], "-threaded") == 0)) { | |
249 init_flags |= SDL_INIT_EVENTTHREAD; | |
250 argc -= 1; | |
251 argv += 1; | |
252 printf("Running with threaded events\n"); | |
253 } else if ((argc >= 2) && (strcmp(argv[1], "-fullscreen") == 0)) { | |
254 video_flags |= SDL_FULLSCREEN; | 245 video_flags |= SDL_FULLSCREEN; |
255 argc -= 1; | 246 argc -= 1; |
256 argv += 1; | 247 argv += 1; |
257 } else if ((argc >= 3) && (strcmp(argv[1], "-bpp") == 0)) { | 248 } else if ((argc >= 3) && (strcmp(argv[1], "-bpp") == 0)) { |
258 video_bpp = atoi(argv[2]); | 249 video_bpp = atoi(argv[2]); |
318 SDL_UnlockSurface(screen); | 309 SDL_UnlockSurface(screen); |
319 SDL_UpdateRect(screen, 0, 0, 0, 0); | 310 SDL_UpdateRect(screen, 0, 0, 0, 0); |
320 | 311 |
321 /* Loop, waiting for QUIT */ | 312 /* Loop, waiting for QUIT */ |
322 while (!done) { | 313 while (!done) { |
323 if (!(init_flags & SDL_INIT_EVENTTHREAD)) { | 314 SDL_PumpEvents(); |
324 SDL_PumpEvents(); /* Needed when event thread is off */ | 315 |
325 } | |
326 if (SDL_PeepEvents(NULL, 0, SDL_PEEKEVENT, SDL_QUIT, SDL_QUIT)) { | 316 if (SDL_PeepEvents(NULL, 0, SDL_PEEKEVENT, SDL_QUIT, SDL_QUIT)) { |
327 done = 1; | 317 done = 1; |
328 } | 318 } |
329 /* Give up some CPU so the events can accumulate */ | 319 /* Give up some CPU so the events can accumulate */ |
330 SDL_Delay(20); | 320 SDL_Delay(20); |