Exemplo n.º 1
0
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;
}
Exemplo n.º 2
0
Arquivo: input.c Projeto: erikg/vp
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;
}
Exemplo n.º 3
0
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;
  }
}