video/sdl_v.c
changeset 2228 7014d372374f
parent 2226 efc1f77d27fc
child 2664 fcefd29dd9d2
equal deleted inserted replaced
2227:24f19bde1400 2228:7014d372374f
   348 	case SDL_QUIT:
   348 	case SDL_QUIT:
   349 		// do not ask to quit on the main screen
   349 		// do not ask to quit on the main screen
   350 		if (_game_mode != GM_MENU) {
   350 		if (_game_mode != GM_MENU) {
   351 			if(_patches.autosave_on_exit) {
   351 			if(_patches.autosave_on_exit) {
   352 				DoExitSave();
   352 				DoExitSave();
   353 				return ML_QUIT;
   353 				return 0;
   354 			} else
   354 			} else
   355 				AskExitGame();
   355 				AskExitGame();
   356 		} else
   356 		} else
   357 			return ML_QUIT;
   357 			return 0;
   358 		break;
   358 		break;
   359 
   359 
   360 		case SDL_KEYDOWN: /* Toggle full-screen on ALT + ENTER/F */
   360 		case SDL_KEYDOWN: /* Toggle full-screen on ALT + ENTER/F */
   361 		if ((ev.key.keysym.mod & (KMOD_ALT | KMOD_META)) &&
   361 		if ((ev.key.keysym.mod & (KMOD_ALT | KMOD_META)) &&
   362 				(ev.key.keysym.sym == SDLK_RETURN || ev.key.keysym.sym == SDLK_f)) {
   362 				(ev.key.keysym.sym == SDLK_RETURN || ev.key.keysym.sym == SDLK_f)) {
   398 static void SdlVideoStop(void)
   398 static void SdlVideoStop(void)
   399 {
   399 {
   400 	SdlClose(SDL_INIT_VIDEO);
   400 	SdlClose(SDL_INIT_VIDEO);
   401 }
   401 }
   402 
   402 
   403 static int SdlVideoMainLoop(void)
   403 static void SdlVideoMainLoop(void)
   404 {
   404 {
   405 	uint32 next_tick = SDL_CALL SDL_GetTicks() + 30;
   405 	uint32 next_tick = SDL_CALL SDL_GetTicks() + 30;
   406 	uint32 cur_ticks;
   406 	uint32 cur_ticks;
   407 	uint32 pal_tick = 0;
   407 	uint32 pal_tick = 0;
   408 	int i;
   408 	int i;
   412 
   412 
   413 	for (;;) {
   413 	for (;;) {
   414 		InteractiveRandom(); // randomness
   414 		InteractiveRandom(); // randomness
   415 
   415 
   416 		while ((i = PollEvent()) == -1) {}
   416 		while ((i = PollEvent()) == -1) {}
   417 		if (i >= 0) return i;
   417 		if (i >= 0) return;
   418 
   418 
   419 		if (_exit_game) return ML_QUIT;
   419 		if (_exit_game) return;
   420 
   420 
   421 		mod = SDL_CALL SDL_GetModState();
   421 		mod = SDL_CALL SDL_GetModState();
   422 		keys = SDL_CALL SDL_GetKeyState(&numkeys);
   422 		keys = SDL_CALL SDL_GetKeyState(&numkeys);
   423 #if defined(_DEBUG)
   423 #if defined(_DEBUG)
   424 		if (_shift_pressed)
   424 		if (_shift_pressed)