Left and right togle preview windows

This commit is contained in:
fabio.olimpieri 2015-02-08 13:42:52 +00:00
parent 1ebf09145f
commit ac19535954
3 changed files with 17 additions and 5 deletions

View File

@ -175,6 +175,7 @@ void computer_init () { //Called only on start-up
ordenador.tape_loop_counter = 0; ordenador.tape_loop_counter = 0;
ordenador.kbd_buffer_pointer = 0; ordenador.kbd_buffer_pointer = 0;
ordenador.vk_is_active=0; ordenador.vk_is_active=0;
ordenador.show_preview=1;
ordenador.key = SDL_GetKeyState(NULL); ordenador.key = SDL_GetKeyState(NULL);
#ifdef HW_RVL #ifdef HW_RVL
ordenador.joybuttonkey[0][3]=SDLK_LALT; //Fire button to wiimote1 button 2 ordenador.joybuttonkey[0][3]=SDLK_LALT; //Fire button to wiimote1 button 2

View File

@ -270,6 +270,7 @@ struct computer {
unsigned char vk_is_active; unsigned char vk_is_active;
unsigned char autoconf; unsigned char autoconf;
unsigned char ignore_z80_joy_conf; unsigned char ignore_z80_joy_conf;
unsigned char show_preview;
//Port variables //Port variables
unsigned char port; //SD, USB, SMB or FTP unsigned char port; //SD, USB, SMB or FTP

View File

@ -734,7 +734,7 @@ static void menu_draw(SDL_Surface *screen, menu_t *p_menu, int sel, int font_typ
if (font_type==FONT_ALT) y_start = p_menu->y1 + line_height+2/RATIO; if (font_type==FONT_ALT) y_start = p_menu->y1 + line_height+2/RATIO;
else y_start = p_menu->y1 + line_height+4/RATIO; else y_start = p_menu->y1 + line_height+4/RATIO;
if ((draw_scr)&&(RATIO==1)) max_string = 30; else max_string = 52; if ((draw_scr)&&(RATIO==1)&&ordenador.show_preview) max_string = 30; else max_string = 52;
//if ( p_menu->n_entries * line_height > p_menu->y2 ) //if ( p_menu->n_entries * line_height > p_menu->y2 )
//y_start = p_menu->y1 + line_height; //y_start = p_menu->y1 + line_height;
@ -781,7 +781,7 @@ static void menu_draw(SDL_Surface *screen, menu_t *p_menu, int sel, int font_typ
y = (i - p_menu->start_entry_visible) * line_height; y = (i - p_menu->start_entry_visible) * line_height;
r.x = p_menu->x1+2/RATIO; r.x = p_menu->x1+2/RATIO;
r.y = p_menu->y1 + line_height +y; r.y = p_menu->y1 + line_height +y;
if ((draw_scr)&&(RATIO==1)) r.w = 365; //Only in 640 mode if ((draw_scr)&&(RATIO==1)&&ordenador.show_preview) r.w = 365; //Only in 640 mode
else r.w = p_menu->x2 - p_menu->x1-4/RATIO; else r.w = p_menu->x2 - p_menu->x1-4/RATIO;
r.h = line_height; r.h = line_height;
@ -912,7 +912,7 @@ static void menu_draw(SDL_Surface *screen, menu_t *p_menu, int sel, int font_typ
} }
} }
if ((draw_scr)&&(RATIO==1)) //Only in 640 mode if ((draw_scr)&&(RATIO==1)&&ordenador.show_preview) //Only in 640 mode
{ {
r.x = 367; r.x = 367;
r.y = 39; r.y = 39;
@ -1264,9 +1264,19 @@ static int menu_select_internal(SDL_Surface *screen,
else if (keys & KEY_PAGEDOWN) else if (keys & KEY_PAGEDOWN)
{select_next(p_menu, 0, 19, 0);play_click(0);} {select_next(p_menu, 0, 19, 0);play_click(0);}
else if (keys & KEY_LEFT) else if (keys & KEY_LEFT)
{select_next(p_menu, -1, 0 ,1);play_click(0);} {
if (draw_scr)
ordenador.show_preview = 1;
else
{select_next(p_menu, -1, 0 ,1);play_click(0);}
}
else if (keys & KEY_RIGHT) else if (keys & KEY_RIGHT)
{select_next(p_menu, 1, 0 ,1);play_click(0);} {
if (draw_scr)
ordenador.show_preview = 0;
else
{select_next(p_menu, 1, 0 ,1);play_click(0);}
}
else if (keys & KEY_ESCAPE) else if (keys & KEY_ESCAPE)
{play_click(2);break;} {play_click(2);break;}
else if (keys & KEY_SELECT) else if (keys & KEY_SELECT)