From dc6e13b39ba2190d7f11378be48f8ccfe10d47f6 Mon Sep 17 00:00:00 2001 From: Dirk Engling Date: Sat, 21 May 2022 13:42:44 +0200 Subject: Add an option to invert the window bars instead of coloring them --- vchat-config.h | 1 + vchat-ui.c | 20 +++++++++++++++----- vchat.h | 2 +- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/vchat-config.h b/vchat-config.h index 89cf231..56e0b60 100755 --- a/vchat-config.h +++ b/vchat-config.h @@ -50,6 +50,7 @@ static volatile configoption configoptions[] = { {CF_USETOPIC, CO_INT, "usetopicbar",(char *) 1, (char *)-1, { NULL } }, {CF_PRIVHEIGHT, CO_INT, "messages", (char *) 0, (char *)-1, { NULL } }, {CF_PRIVCOLLAPS, CO_INT, "privcollaps",(char *) 0, (char *)-1, { NULL } }, + {CF_INVWINBAR, CO_INT, "invwinbar", (char *) 0, (char *)-1, { NULL } }, {CF_HSCROLL, CO_INT, "hscroll", (char *)15, (char *)-1, { .pint = &hscroll } }, {CF_CHANNEL, CO_INT, "channel", (char *) 0, (char *)-1, { NULL } }, {CF_SCROLLBPRIV, CO_INT, "privscrollb",(char *) 2048, (char *)-1, { NULL } }, diff --git a/vchat-ui.c b/vchat-ui.c index a55f7f8..62ef372 100755 --- a/vchat-ui.c +++ b/vchat-ui.c @@ -1150,17 +1150,27 @@ initui (void) /* set colors for windows */ if (has_colors()) { - wattrset (console, COLOR_PAIR (9)); + if (getintoption(CF_INVWINBAR)) { + wbkgd (console, COLOR_PAIR (0)); + wattron (console, A_REVERSE); + } else { + wattrset (console, COLOR_PAIR (9)); + wbkgd (console, COLOR_PAIR (9)); + } wattrset (input, COLOR_PAIR (0)); wbkgd (output, COLOR_PAIR(8)); - wbkgd (console, COLOR_PAIR (9)); wbkgd (channel, COLOR_PAIR (0)); wbkgd (input, COLOR_PAIR (0)); if (private) wbkgd (private, COLOR_PAIR (0)); - if( topic ) { - wattrset (topic, COLOR_PAIR (9)); - wbkgd (topic, COLOR_PAIR (9)); + if (topic) { + if (getintoption(CF_INVWINBAR)) { + wbkgd (input, COLOR_PAIR (0)); + wattron(topic, A_REVERSE); + } else { + wattrset (topic, COLOR_PAIR (9)); + wbkgd (topic, COLOR_PAIR (9)); + } } } else { wattron (console, A_REVERSE); diff --git a/vchat.h b/vchat.h index 71ad149..54fd006 100755 --- a/vchat.h +++ b/vchat.h @@ -32,7 +32,7 @@ typedef enum { CO_NIL, CO_STR, CO_INT } conftype; typedef enum { CF_NIL, CF_NICK, CF_FROM, CF_SERVERHOST, CF_SERVERPORT, CF_CIPHERSUITE, CF_CONFIGFILE, CF_CERTFILE, CF_KEYFILE, CF_CAFILE, CF_FORMFILE, CF_LOGINSCRIPT, CF_FINGERPRINT, CF_PINFINGER, CF_USESSL, CF_IGNSSL, CF_VERIFYSSL, CF_USECERT, -CF_PRIVHEIGHT, CF_PRIVCOLLAPS, CF_HSCROLL, CF_CHANNEL, CF_USETIME, CF_USETOPIC, +CF_PRIVHEIGHT, CF_PRIVCOLLAPS, CF_INVWINBAR, CF_HSCROLL, CF_CHANNEL, CF_USETIME, CF_USETOPIC, CF_SCROLLBPRIV, CF_SCROLLBACK, CF_SCROLLBPRIVT, CF_SCROLLBACKT, CF_ENCODING, CF_BELLPRIV, CF_CASEFIRST, CF_AUTORECONN, CF_KEEPALIVE } confopt; -- cgit v1.2.3