Change menu_headings to accept color and attribute

Instead of just accepting an attribute, it's now possible to
use a color, or both color and attribute, for example:

OPTIONS=menu_headings:inverse
OPTIONS=menu_headings:red
OPTIONS=menu_headings:red&underline

Default is still just inverse.
This lets the player change the menu heading color without
needing to use menu colors for them.

Also makes it so the core uses NO_COLOR instead of 0, for all
the menu lines which don't have any prefedefined color.

Tested for tty, curses, x11, qt, and win32
This commit is contained in:
Pasi Kallinen
2023-11-13 07:33:48 +02:00
parent dd6c249a8c
commit dd5ca5b058
47 changed files with 251 additions and 150 deletions

View File

@@ -188,7 +188,7 @@ extern int curses_ext_cmd(void);
extern void curses_create_nhmenu(winid wid, unsigned long);
extern void curses_add_nhmenu_item(winid wid, const glyph_info *,
const ANY_P *identifier, char accelerator,
char group_accel, int attr,
char group_accel, int attr, int clr,
const char *str, unsigned itemflags);
extern void curs_menu_set_bottom_heavy(winid);
extern void curses_finalize_nhmenu(winid wid, const char *prompt);
@@ -207,7 +207,7 @@ extern void curses_status_update(int, genericptr_t, int, int, int,
extern void curs_purge_perminv_data(boolean);
extern void curs_update_invt(int);
extern void curs_add_invt(int, char, attr_t, const char *);
extern void curs_add_invt(int, char, attr_t, int, const char *);
/* cursinit.c */