int gui_tetris_kbd_process() { switch ( kbd_get_autoclicked_key() ) { case KEY_UP: if ((game->isPaused) || (game->isOver)) { TurnOnBackLight(); } else { TurnOffBackLight(); } game->events |= EVENT_PAUSE; break; case KEY_LEFT: game->events |= EVENT_MOVE_LEFT; break; case KEY_RIGHT: game->events |= EVENT_MOVE_RIGHT; break; case KEY_DOWN: game->events |= EVENT_MOVE_DOWN; break; //case KEY_SET: //game->events |= EVENT_RESTART; //break; case KEY_DISPLAY: case KEY_ERASE: case KEY_SET: game->events |= EVENT_ROTATE_CW; break; default: break; } return 0; }
//------------------------------------------------------------------- int gui_read_kbd_process() { switch (kbd_get_autoclicked_key() | get_jogdial_direction()) { case JOGDIAL_LEFT: case KEY_ZOOM_OUT: case KEY_UP: case KEY_LEFT: if (conf.reader_pos>0) { conf.reader_pos -= 45*15; if (conf.reader_pos<0) conf.reader_pos=0; read_to_draw = 1; } break; case JOGDIAL_RIGHT: case KEY_ZOOM_IN: case KEY_DOWN: case KEY_RIGHT: case KEY_SHOOT_HALF: if ((conf.reader_pos+read_on_screen)<read_file_size) { conf.reader_pos += read_on_screen; read_to_draw = 1; } break; case KEY_SET: break; case KEY_DISPLAY: pause = !pause; gui_read_draw_scroll_indicator(); last_time = get_tick_count(); break; case KEY_MENU: gui_read_kbd_leave(); break; } return 0; }
//------------------------------------------------------------------- int gui_calendar_kbd_process() { switch (kbd_get_autoclicked_key()) { case KEY_UP: ++cal_year; need_redraw = 1; break; case KEY_DOWN: if (cal_year>1) --cal_year; need_redraw = 1; break; case KEY_LEFT: if (--cal_month<0) { cal_month=11; --cal_year; } need_redraw = 1; break; case KEY_RIGHT: if (++cal_month>11) { cal_month=0; ++cal_year; } need_redraw = 1; break; case KEY_ERASE: case KEY_DISPLAY: calendar_goto_today(); need_redraw = 1; break; } return 0; }
//------------------------------------------------------------------- int gui_bench_kbd_process() { switch (kbd_get_autoclicked_key()) { case KEY_SET: gui_bench_init(); gui_bench_run(); break; } return 0; }
int gui_module_kbd_process() { switch (kbd_get_autoclicked_key()) { case KEY_SET: modinspect_redraw=2; break; case KEY_DISPLAY: gui_mbox_init( (int)"Module Inspector", (int)"Unload all modules?", MBOX_TEXT_CENTER|MBOX_BTN_YES_NO|MBOX_DEF_BTN2, modinspect_unload_cb); break; } return 0; }
//------------------------------------------------------------------- void gui_palette_kbd_process() { switch (kbd_get_autoclicked_key()) { case KEY_DOWN: if (!full_palette) { cl = ((((cl>>4)+1)<<4)|(cl&0x0f))&0xFF; gui_palette_redraw = 1; } break; case KEY_UP: if (!full_palette) { cl = ((((cl>>4)-1)<<4)|(cl&0x0f))&0xFF; gui_palette_redraw = 1; }
//------------------------------------------------------------------- int gui_debug_kbd_process() { switch (kbd_get_autoclicked_key()) { case KEY_DOWN: break; case KEY_UP: debug_cont_update = !debug_cont_update; debug_to_draw = 2; break; case KEY_LEFT: addr-=step; debug_to_draw = 2; break; case KEY_RIGHT: addr+=step; debug_to_draw = 2; break; case KEY_DISPLAY: switch (step) { case 0x00000004: step = 0x00000010; break; case 0x10000000: step = 0x00000004; break; default: step<<=4; break; } debug_to_draw = 2; break; case KEY_ZOOM_IN: // reduce step switch (step) { case 0x00000010: step = 0x0000004; break; case 0x00000004: break; default: step>>=4; break; } debug_to_draw = 2; break; case KEY_ZOOM_OUT: // increase step switch (step) { case 0x00000004: step = 0x00000010; break; case 0x10000000: break; default: step<<=4; break; } debug_to_draw = 2; break; } return 0; }
int gui_snake_kbd_process() { switch (kbd_get_autoclicked_key()) { case KEY_UP: if(direction != DIR_DOWN) direction = DIR_UP; break; case KEY_DOWN: if(direction != DIR_UP) direction = DIR_DOWN; break; case KEY_LEFT: if(direction != DIR_RIGHT) direction = DIR_LEFT; break; case KEY_RIGHT: if(direction != DIR_LEFT) direction = DIR_RIGHT; break; case KEY_SET: break; case KEY_ERASE: case KEY_DISPLAY: break; } return 0; }
//------------------------------------------------------------------- // Process button presses when in GUI_MODE_MENU mode int gui_menu_kbd_process() { switch (kbd_get_autoclicked_key() | get_jogdial_direction()) { case KEY_ERASE: case KEY_SHOOT_HALF: if (!increment_factor()) int_incr = 1; gui_menu_redraw=1; break; case JOGDIAL_LEFT: case KEY_UP: gui_menu_updown(-1); break; case JOGDIAL_RIGHT: case KEY_DOWN: gui_menu_updown(1); break; case FRONTDIAL_LEFT: case KEY_LEFT: if (gui_menu_curr_item >= 0) { switch (curr_menu->menu[gui_menu_curr_item].type & MENUITEM_MASK) { case MENUITEM_INT: update_int_value(&curr_menu->menu[gui_menu_curr_item],-1); break; case MENUITEM_BOOL: update_bool_value(&curr_menu->menu[gui_menu_curr_item]); break; case MENUITEM_ENUM: case MENUITEM_ENUM2: update_enum_value(&curr_menu->menu[gui_menu_curr_item],-1); break; case MENUITEM_UP: gui_menu_back(); break; case MENUITEM_STATE_VAL_PAIR: { CMenuItem *c = (CMenuItem*)(curr_menu->menu[gui_menu_curr_item].value); if (*(c[1].value) == 0) update_bool_value(&c[1]); switch (c[0].type & MENUITEM_MASK) { case MENUITEM_INT: update_int_value(&c[0],-1); break; case MENUITEM_ENUM: case MENUITEM_ENUM2: update_enum_value(&c[0],-1); break; } } break; } } else { gui_menu_back(); } break; case FRONTDIAL_RIGHT: case KEY_RIGHT: if (gui_menu_curr_item >= 0) { switch (curr_menu->menu[gui_menu_curr_item].type & MENUITEM_MASK){ case MENUITEM_INT: update_int_value(&curr_menu->menu[gui_menu_curr_item],1); break; case MENUITEM_BOOL: update_bool_value(&curr_menu->menu[gui_menu_curr_item]); break; case MENUITEM_ENUM: case MENUITEM_ENUM2: update_enum_value(&curr_menu->menu[gui_menu_curr_item],1); break; case MENUITEM_SUBMENU_PROC: select_proc(); break; case MENUITEM_SUBMENU: select_sub_menu(); break; case MENUITEM_STATE_VAL_PAIR: { CMenuItem *c = (CMenuItem*)(curr_menu->menu[gui_menu_curr_item].value); if (*(c[1].value) == 0) update_bool_value(&c[1]); switch (c[0].type & MENUITEM_MASK) { case MENUITEM_INT: update_int_value(&c[0],1); break; case MENUITEM_ENUM: case MENUITEM_ENUM2: update_enum_value(&c[0],1); break; } } break; } } break; case KEY_SET: if (gui_menu_curr_item >= 0) { switch (curr_menu->menu[gui_menu_curr_item].type & MENUITEM_MASK){ case MENUITEM_INT: if (camera_info.state.is_shutter_half_press) { *(curr_menu->menu[gui_menu_curr_item].value) = 0; gui_menu_redraw=1; } break; case MENUITEM_BOOL: update_bool_value(&curr_menu->menu[gui_menu_curr_item]); break; case MENUITEM_SUBMENU_PROC: case MENUITEM_PROC: select_proc(); break; case MENUITEM_SUBMENU: select_sub_menu(); break; case MENUITEM_UP: gui_menu_back(); break; case MENUITEM_COLOR_FG: case MENUITEM_COLOR_BG: item_color=((unsigned char*)(curr_menu->menu[gui_menu_curr_item].value)) + (((curr_menu->menu[gui_menu_curr_item].type & MENUITEM_MASK)==MENUITEM_COLOR_BG)?1:0); libpalette->show_palette(PALETTE_MODE_SELECT, FG_COLOR(*item_color), gui_menu_color_selected); gui_menu_redraw=2; break; case MENUITEM_ENUM: case MENUITEM_ENUM2: update_enum_value(&curr_menu->menu[gui_menu_curr_item],1); gui_menu_redraw=1; break; case MENUITEM_STATE_VAL_PAIR: { CMenuItem *c = (CMenuItem*)(curr_menu->menu[gui_menu_curr_item].value); if ((c[1].type & MENUITEM_MASK) == MENUITEM_ENUM) update_enum_value(&c[1],1); else update_bool_value(&c[1]); } break; } } break; case KEY_ZOOM_IN: if (decrement_factor()) gui_menu_redraw = 1; break; case KEY_ZOOM_OUT: if (increment_factor()) gui_menu_redraw = 1; break; case KEY_DISPLAY: if (camera_info.cam_has_zoom_lever) { gui_menu_back(); } else { // For cams without zoom lever, DISP adjusts increment factor if (!increment_factor()) int_incr = 1; gui_menu_redraw=1; } break; } return 0; }