update viewing values at Fullscreen Toggle; added Fullscreen Toggle to Menus and Demo Playback

This commit is contained in:
zicodxx 2007-05-09 09:44:45 +00:00
parent 59cabbcb84
commit ecf8a53e0c
5 changed files with 32 additions and 1 deletions

View file

@ -1,5 +1,9 @@
D1X-Rebirth Changelog D1X-Rebirth Changelog
20070509
--------
arch/ogl/gr.c, arch/sdl/gr.c, main/game.c, main/newmenu.c: update viewing values at Fullscreen Toggle; added Fullscreen Toggle to Menus and Demo Playback
20070503 20070503
-------- --------
CHANGELOG.txt, COPYING.txt, INSTALL.txt, README.txt: updated docs CHANGELOG.txt, COPYING.txt, INSTALL.txt, README.txt: updated docs

View file

@ -65,6 +65,18 @@ void gr_do_fullscreen(int f){
int gr_toggle_fullscreen(void){ int gr_toggle_fullscreen(void){
gr_do_fullscreen(!ogl_fullscreen); gr_do_fullscreen(!ogl_fullscreen);
if (Screen_mode != SCREEN_GAME) // update viewing values for menus
{
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();//clear matrix
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
}
return ogl_fullscreen; return ogl_fullscreen;
} }

View file

@ -159,7 +159,7 @@ int gr_check_fullscreen(void){
} }
int gr_toggle_fullscreen(void){ int gr_toggle_fullscreen(void){
sdl_video_flags^=SDL_FULLSCREEN; sdl_video_flags^=SDL_FULLSCREEN;
grd_curscreen->sc_mode=0;//hack to get it to reset screen mode SDL_WM_ToggleFullScreen(screen);
return (sdl_video_flags & SDL_FULLSCREEN)?1:0; return (sdl_video_flags & SDL_FULLSCREEN)?1:0;
} }

View file

@ -2315,6 +2315,9 @@ void HandleDemoKey(int key)
game_do_render_frame(Game_double_buffer); game_do_render_frame(Game_double_buffer);
save_screen_shot(0); save_screen_shot(0);
Newdemo_vcr_state = old_state; Newdemo_vcr_state = old_state;
case KEYS_GR_TOGGLE_FULLSCREEN:
gr_toggle_fullscreen_game();
break;
break; break;
} }
} }

View file

@ -1063,6 +1063,10 @@ int newmenu_do3_real( char * title, char * subtitle, int nitems, newmenu_item *
done = 1; done = 1;
break; break;
case KEYS_GR_TOGGLE_FULLSCREEN:
gr_toggle_fullscreen();
break;
case KEY_ESC: case KEY_ESC:
if ( (choice>-1) && (item[choice].type==NM_TYPE_INPUT_MENU) && (item[choice].group==1)) { if ( (choice>-1) && (item[choice].type==NM_TYPE_INPUT_MENU) && (item[choice].group==1)) {
item[choice].group=0; item[choice].group=0;
@ -1792,6 +1796,10 @@ ReadFileNames:
done = 1; done = 1;
break; break;
case KEYS_GR_TOGGLE_FULLSCREEN:
gr_toggle_fullscreen();
break;
default: default:
{ {
int ascii = key_to_ascii(key); int ascii = key_to_ascii(key);
@ -2158,6 +2166,10 @@ int newmenu_listbox1( char * title, int nitems, char * items[], int allow_abort_
done = 1; done = 1;
break; break;
case KEYS_GR_TOGGLE_FULLSCREEN:
gr_toggle_fullscreen();
break;
default: default:
if ( key > 0 ) { if ( key > 0 ) {
int ascii = key_to_ascii(key); int ascii = key_to_ascii(key);