Пример #1
0
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;
}
Пример #2
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;
}
Пример #3
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;
}
Пример #4
0
//-------------------------------------------------------------------
int gui_bench_kbd_process()
{
    switch (kbd_get_autoclicked_key()) {
    case KEY_SET:
        gui_bench_init();
        gui_bench_run();
        break;
    }
    return 0;
}
Пример #5
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;
}
Пример #6
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;
        }
Пример #7
0
//-------------------------------------------------------------------
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;
}
Пример #8
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;
}
Пример #9
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;
}