Tidy up newmenu_show/hide_cursor calls

This commit is contained in:
kreatordxx 2010-01-28 04:24:25 +00:00
parent 9d4e69c7a9
commit de7574451b
3 changed files with 19 additions and 12 deletions

View file

@ -5,6 +5,7 @@ D1X-Rebirth Changelog
main/playsave.c, main/playsave.h, main/object.c, main/render.c, main/hud.c, main/hostage.c, main/newdemo.c, main/gamerend.c, main/endlevel.c, main/game.c, main/gauges.c: Made PlayerCfg.CockpitMode an array to hold two values: 0 to store the actual "cockpit", 1 to also store Letterbox, Rear, etc. Greatly helps to switch and restore views - especially in Demo playback which now properly selects modes
main/newdemo.c: Added a new code to properly re-record view/cockpit-events at beginning and end of Demo recording so views will be fine if switched before recording started; Also added lost sequence to record Rear-view reset between levels; Last but not least, record wall tmaps so opened/blasted doors will be shown correctly if opened/blasted before recording; Everything done without breaking the Demo format!
arch/sdl/window.c, main/automap.c, main/game.c, main/gamecntl.c, main/kconfig.c, main/menu.c, main/net_ipx.c, main/net_udp.c, main/newmenu.c: Make response to EVENT_WINDOW_CLOSE conform to 'handling' system - returning 1 means abort closing
main/kconfig.c, main/newmenu.c: Tidy up newmenu_show/hide_cursor calls
20100127
--------

View file

@ -661,7 +661,6 @@ int kconfig_idle(window *wind, d_event *event, kc_menu *menu)
k = key_inkey();
#ifdef NEWMENU_MOUSE
newmenu_show_cursor(); // possibly hidden
menu->omouse_state = menu->mouse_state;
menu->mouse_state = mouse_button_state(0);
#endif
@ -916,6 +915,10 @@ int kconfig_handler(window *wind, d_event *event, kc_menu *menu)
switch (event->type)
{
case EVENT_WINDOW_ACTIVATED:
newmenu_show_cursor();
break;
case EVENT_IDLE:
return kconfig_idle(wind, event, menu);
break;
@ -987,8 +990,6 @@ void kconfig_sub(kc_item * items,int nitems, char *title)
game_flush_inputs();
newmenu_show_cursor();
#ifdef NEWMENU_MOUSE
menu->mouse_state = menu->omouse_state = 0;
#endif

View file

@ -562,7 +562,6 @@ int newmenu_idle(window *wind, d_event *event, newmenu *menu)
timer_delay2(50);
#ifdef NEWMENU_MOUSE
newmenu_show_cursor(); // possibly hidden
menu->omouse_state = menu->mouse_state;
menu->mouse_state = mouse_button_state(0);
#endif
@ -1129,9 +1128,6 @@ int newmenu_idle(window *wind, d_event *event, newmenu *menu)
}
#ifdef NEWMENU_MOUSE
newmenu_show_cursor();
#endif
for (i=menu->scroll_offset; i<menu->max_displayable+menu->scroll_offset; i++ )
if (i==menu->citem && (menu->items[i].type==NM_TYPE_INPUT || (menu->items[i].type==NM_TYPE_INPUT_MENU && menu->items[i].group)))
update_cursor( &menu->items[i],menu->scroll_offset);
@ -1228,6 +1224,13 @@ int newmenu_handler(window *wind, d_event *event, newmenu *menu)
{
switch (event->type)
{
case EVENT_WINDOW_ACTIVATED:
if (menu->subfunction)
(*menu->subfunction)(menu, event, menu->userdata);
newmenu_show_cursor();
break;
case EVENT_IDLE:
return newmenu_idle(wind, event, menu);
break;
@ -1299,7 +1302,6 @@ int newmenu_do4( char * title, char * subtitle, int nitems, newmenu_item * item,
menu->userdata = userdata;
newmenu_close();
newmenu_hide_cursor();
if (nitems < 1 )
{
@ -1505,7 +1507,6 @@ int newmenu_do4( char * title, char * subtitle, int nitems, newmenu_item * item,
digi_resume_digi_sounds();
d_free(menu);
newmenu_hide_cursor();
return -1;
}
@ -1563,7 +1564,6 @@ int newmenu_do4( char * title, char * subtitle, int nitems, newmenu_item * item,
#ifdef NEWMENU_MOUSE
menu->mouse_state = menu->omouse_state = 0;
newmenu_show_cursor();
#endif
gr_set_current_canvas(save_canvas);
@ -1925,6 +1925,13 @@ int listbox_handler(window *wind, d_event *event, listbox *lb)
{
switch (event->type)
{
case EVENT_WINDOW_ACTIVATED:
if (lb->listbox_callback)
(*lb->listbox_callback)(lb, event, lb->userdata);
newmenu_show_cursor();
break;
case EVENT_IDLE:
return listbox_idle(wind, event, lb);
break;
@ -2007,7 +2014,6 @@ int newmenu_listbox1( char * title, int nitems, char * items[], int allow_abort_
if (!wind)
{
d_free(lb);
newmenu_hide_cursor();
return -1;
}
@ -2020,7 +2026,6 @@ int newmenu_listbox1( char * title, int nitems, char * items[], int allow_abort_
lb->first_item = -1;
lb->mouse_state = lb->omouse_state = 0; //dblclick_flag = 0;
newmenu_show_cursor();
while(!lb->done)
event_process();