int timer_stub () { SDL_Event ev; if (image_next (1) == 0) throw_exit (); /* * thanks to Ted Mielczarek <*****@*****.**> for this, fixes the X * Async request errors */ ev.type = SDL_USEREVENT; ev.user.code = SHOW_IMAGE; /* SDL_PushEvent (&ev); */ return wait_time; }
int handle_input () { SDL_Event e; SDL_WaitEvent (&e); switch (e.type) { /* * thanks to Ted Mielczarek <*****@*****.**> for this, fixes the X * Async request errors */ case SDL_USEREVENT: if (e.user.code == SHOW_IMAGE) image_freshen (); break; case SDL_KEYDOWN: switch (tolower (e.key.keysym.sym)) { case 'x': case 'q': case SDLK_ESCAPE: return 0; break; case SDLK_SPACE: timer_toggle (); break; case SDLK_RETURN: image_freshen (); timer_stop (); break; case SDLK_RIGHT: timer_stop (); image_next (0); break; case SDLK_LEFT: timer_stop (); image_prev (0); break; case 'z': timer_stop (); toggle_state (ZOOM); image_freshen (); break; case 'f': timer_stop (); toggle_state (FULLSCREEN); if (get_state_int (FULLSCREEN)) screen = SDL_SetVideoMode (vid_width (), vid_height (), vid_depth (), SDL_FULLSCREEN | SDL_DOUBLEBUF); image_freshen (); break; #if 0 case '+': case '=': scale += .1; image_freshen (); break; case '-': scale -= .1; image_freshen (); break; #endif default: /* * do nothing */ break; } break; case SDL_QUIT: return 0; break; } return 1; }
void press_btnA() { switch(work) { case MAIN_MENU:into_menu(); break; case BOOK_MENU:{ strcpy(book_name, "book/"); strcat(book_name, file_list[file_list_point]); into_book(book_name, 0); break; } case BOOK_CONFIG:if(!in_pallet) { switch(book_config_point) { case 0: case 1:{ draw_book_config_point(book_config_point, 255, 255, 255); show_pallet(book_config_point); break; } case 4:{ txtbr = temp_r[0]; txtbg = temp_g[0]; txtbb = temp_b[0]; txtfr = temp_r[1]; txtfg = temp_g[1]; txtfb = temp_b[1]; txtdot = temp_dot; if(txt_offset_changed) { txt_now_offset = txt_max_offset * temp_offset_rate / 100; if(txt_now_offset >= txt_max_offset) txt_now_offset -= 20; check_txt_offset(); } } case 5:exit_book_config(); break; } } else if(temp_point == 3) { myGLCD.setColor(temp_r[book_config_point], temp_g[book_config_point], temp_b[book_config_point]); myGLCD.fillRect(146, 2 + 66 * book_config_point, 209, 2 + 66 * book_config_point + 63); in_pallet = false; draw_book_config_point(book_config_point, 255, 0, 0); } break; case MUSIC_MENU:{ strcpy(music_name, file_list[file_list_point]); into_music(music_name); break; } case MUSIC_PLAY: stop_music(); break; case IMAGE_MENU:{ strcpy(image_name, "image/"); strcat(image_name, file_list[file_list_point]); into_image(image_name); break; } case IMAGE_SHOW:switch(image_point) { case 3: image_update(); break; case 4: image_left_spin(); break; case 5: image_right_spin(); break; case 6: image_next(-1); break; case 7: image_next(1); break; } break; case GAME_MENU: { strcpy(game_name, "game/"); strcat(game_name, file_list[file_list_point]); into_game(game_name); break; } case GAME_START:switch(game_menu_point) { case 0: game_start(); break; case 1: show_game_save(); break; case 2: show_game_help(); break; case 3: exit_game(); break; } break; case GAME_CLEAR:if(game_clear_point == 0) clear_cancel(); else clear_save(); break; case FILE_MENU: file_into(); break; case FILE_DELETE: if(file_delete_point == 0) file_no_delete(); else file_yes_delete(); break; case ABOUT_MENU:if(about_menu_point == 0) into_help(); else into_ap(); break; case ABOUT_HELP:show_help(about_help_point); break; } }