BL_RESET usage for window port status line updating
Like BL_FLUSH, only send BL_RESET if the window port has indicated it wants them via setting the appropriate WC2 bits in its window_procs structure. Update documentation.
This commit is contained in:
@@ -774,8 +774,23 @@ to support:
|
|||||||
| wraptext | WC2_WRAPTEXT | wc2_wraptext |boolean |
|
| wraptext | WC2_WRAPTEXT | wc2_wraptext |boolean |
|
||||||
| selectsaved | WC2_SELECTSAVED | wc2_selectsaved |boolean |
|
| selectsaved | WC2_SELECTSAVED | wc2_selectsaved |boolean |
|
||||||
| hitpointbar | WC2_HITPOINTBAR | wc2_hitpointbar |boolean |
|
| hitpointbar | WC2_HITPOINTBAR | wc2_hitpointbar |boolean |
|
||||||
|
| hitpointbar | WC2_HITPOINTBAR | wc2_hitpointbar |boolean |
|
||||||
+--------------------+--------------------+--------------------+--------+
|
+--------------------+--------------------+--------------------+--------+
|
||||||
|
|
||||||
|
more wincap2 for STATUS_HILITES support and control
|
||||||
|
+--------------------------------- +---------------------------+
|
||||||
|
| To inform the game engine | |
|
||||||
|
| that the window port is equipped | bit to set in wincap mask |
|
||||||
|
| to receive the following in its | |
|
||||||
|
| x_status_update() routine | |
|
||||||
|
|----------------------------------+---------------------------+
|
||||||
|
| BL_FLUSH to render buffered | WC2_FLUSH_STATUS |
|
||||||
|
| field changes now | |
|
||||||
|
|----------------------------------+---------------------------+
|
||||||
|
| BL_RESET to indicate that all | WC2_RESET_STATUS |
|
||||||
|
| fields should be redone | |
|
||||||
|
+----------------------------------+---------------------------+
|
||||||
|
|
||||||
align_message -- where to place message window (top, bottom, left, right)
|
align_message -- where to place message window (top, bottom, left, right)
|
||||||
align_status -- where to place status display (top, bottom, left, right).
|
align_status -- where to place status display (top, bottom, left, right).
|
||||||
ascii_map -- port should display an ascii map if it can.
|
ascii_map -- port should display an ascii map if it can.
|
||||||
|
|||||||
+3
-1
@@ -214,7 +214,9 @@ extern
|
|||||||
#define WC2_HITPOINTBAR 0x0040L /* 07 show bar representing hit points */
|
#define WC2_HITPOINTBAR 0x0040L /* 07 show bar representing hit points */
|
||||||
#define WC2_FLUSH_STATUS 0x0080L /* 08 call status_update(BL_FLUSH)
|
#define WC2_FLUSH_STATUS 0x0080L /* 08 call status_update(BL_FLUSH)
|
||||||
after updating status window fields */
|
after updating status window fields */
|
||||||
/* 24 free bits */
|
#define WC2_RESET_STATUS 0x0100L /* 09 call status_update(BL_RESET) to indicate
|
||||||
|
draw everything */
|
||||||
|
/* 23 free bits */
|
||||||
|
|
||||||
#define ALIGN_LEFT 1
|
#define ALIGN_LEFT 1
|
||||||
#define ALIGN_RIGHT 2
|
#define ALIGN_RIGHT 2
|
||||||
|
|||||||
+2
-1
@@ -810,7 +810,8 @@ boolean *valsetlist;
|
|||||||
* the display, call status_update() with BL_FLUSH.
|
* the display, call status_update() with BL_FLUSH.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
if (context.botlx)
|
if (context.botlx &&
|
||||||
|
(windowprocs.wincap2 & WC2_RESET_STATUS) != 0L)
|
||||||
status_update(BL_RESET, (genericptr_t) 0, 0, 0,
|
status_update(BL_RESET, (genericptr_t) 0, 0, 0,
|
||||||
NO_COLOR, &cond_hilites[0]);
|
NO_COLOR, &cond_hilites[0]);
|
||||||
else if ((windowprocs.wincap2 & WC2_FLUSH_STATUS) != 0L)
|
else if ((windowprocs.wincap2 & WC2_FLUSH_STATUS) != 0L)
|
||||||
|
|||||||
+5
-1
@@ -100,7 +100,11 @@ struct window_procs X11_procs = {
|
|||||||
"X11",
|
"X11",
|
||||||
(WC_COLOR | WC_HILITE_PET | WC_ASCII_MAP | WC_TILED_MAP
|
(WC_COLOR | WC_HILITE_PET | WC_ASCII_MAP | WC_TILED_MAP
|
||||||
| WC_PLAYER_SELECTION | WC_PERM_INVENT | WC_MOUSE_SUPPORT),
|
| WC_PLAYER_SELECTION | WC_PERM_INVENT | WC_MOUSE_SUPPORT),
|
||||||
0L, /* WC2 flag mask */
|
(0
|
||||||
|
#if defined(STATUS_HILITES)
|
||||||
|
| WC2_FLUSH_STATUS | WC2_RESET_STATUS
|
||||||
|
#endif
|
||||||
|
),
|
||||||
X11_init_nhwindows,
|
X11_init_nhwindows,
|
||||||
X11_player_selection, X11_askname, X11_get_nh_event, X11_exit_nhwindows,
|
X11_player_selection, X11_askname, X11_get_nh_event, X11_exit_nhwindows,
|
||||||
X11_suspend_nhwindows, X11_resume_nhwindows, X11_create_nhwindow,
|
X11_suspend_nhwindows, X11_resume_nhwindows, X11_create_nhwindow,
|
||||||
|
|||||||
@@ -67,6 +67,7 @@ struct window_procs tty_procs = {
|
|||||||
#endif
|
#endif
|
||||||
#if defined(STATUS_HILITES)
|
#if defined(STATUS_HILITES)
|
||||||
| WC2_HILITE_STATUS | WC2_HITPOINTBAR | WC2_FLUSH_STATUS
|
| WC2_HILITE_STATUS | WC2_HITPOINTBAR | WC2_FLUSH_STATUS
|
||||||
|
| WC2_RESET_STATUS
|
||||||
#endif
|
#endif
|
||||||
| WC2_DARKGRAY),
|
| WC2_DARKGRAY),
|
||||||
tty_init_nhwindows, tty_player_selection, tty_askname, tty_get_nh_event,
|
tty_init_nhwindows, tty_player_selection, tty_askname, tty_get_nh_event,
|
||||||
|
|||||||
+1
-1
@@ -88,7 +88,7 @@ struct window_procs mswin_procs = {
|
|||||||
| WC_VARY_MSGCOUNT | WC_WINDOWCOLORS | WC_PLAYER_SELECTION
|
| WC_VARY_MSGCOUNT | WC_WINDOWCOLORS | WC_PLAYER_SELECTION
|
||||||
| WC_SPLASH_SCREEN | WC_POPUP_DIALOG | WC_MOUSE_SUPPORT,
|
| WC_SPLASH_SCREEN | WC_POPUP_DIALOG | WC_MOUSE_SUPPORT,
|
||||||
#ifdef STATUS_HILITES
|
#ifdef STATUS_HILITES
|
||||||
WC2_HITPOINTBAR | WC2_FLUSH_STATUS | WC2_HILITE_STATUS |
|
WC2_HITPOINTBAR | WC2_FLUSH_STATUS | WC2_RESET_STATUS | WC2_HILITE_STATUS |
|
||||||
#endif
|
#endif
|
||||||
0L, mswin_init_nhwindows, mswin_player_selection, mswin_askname,
|
0L, mswin_init_nhwindows, mswin_player_selection, mswin_askname,
|
||||||
mswin_get_nh_event, mswin_exit_nhwindows, mswin_suspend_nhwindows,
|
mswin_get_nh_event, mswin_exit_nhwindows, mswin_suspend_nhwindows,
|
||||||
|
|||||||
Reference in New Issue
Block a user