top: apply a special emphasis with some focus elements

Since top now uses string vectors for two items in the
new focus window (cmdline & environ), there is no real
use for that 'separator' specified at toggle time. So,
this commit will find a new use for what is the space.

Henceforth, when a user is navigating using the tab or
backtab keys, should a strv element with focus contain
embedded space(s), it will be emphasized & highlighted
using the current window's message color (capclr_msg).

Signed-off-by: Jim Warner <james.warner@comcast.net>
This commit is contained in:
Jim Warner 2022-05-18 00:00:00 -05:00 committed by Craig Small
parent 304c4370bb
commit 1dd27ba3fc
2 changed files with 12 additions and 4 deletions

View File

@ -4922,11 +4922,16 @@ static inline const char *forest_display (const WIN_t *q, int idx) {
* This guy actually draws the parsed strings | * This guy actually draws the parsed strings |
* including adding a highlight if necessary. | */ * including adding a highlight if necessary. | */
static void bot_do (const char *str, int focus) { static void bot_do (const char *str, int focus) {
char *cap = Cap_norm;
while (*str == ' ') putchar(*(str++)); while (*str == ' ') putchar(*(str++));
putp(fmtmk("%s%s%s" if (focus)
, focus ? Cap_reverse : Cap_norm #ifdef BOT_STRV_OFF
, str cap = Cap_reverse;
, Cap_norm)); #else
cap = strchr(str, Bot_sep) ? Curwin->capclr_msg : Cap_reverse;
#endif
putp(fmtmk("%s%s%s", cap, str, Cap_norm));
} // end: bot_do } // end: bot_do
@ -5592,9 +5597,11 @@ static void keys_global (int ch) {
} }
break; break;
case kbd_CtrlK: case kbd_CtrlK:
// with string vectors, the 'separator' may serve a different purpose
bot_item_toggle(eu_CMDLINE_V, "command line", BOT_SEP_SPC); bot_item_toggle(eu_CMDLINE_V, "command line", BOT_SEP_SPC);
break; break;
case kbd_CtrlN: case kbd_CtrlN:
// with string vectors, the 'separator' may serve a different purpose
bot_item_toggle(eu_ENVIRON_V, "environment", BOT_SEP_SPC); bot_item_toggle(eu_ENVIRON_V, "environment", BOT_SEP_SPC);
break; break;
case kbd_CtrlP: case kbd_CtrlP:

View File

@ -28,6 +28,7 @@
//#define ATEOJ_RPTSTD /* report on some miscellany at end-of-job */ //#define ATEOJ_RPTSTD /* report on some miscellany at end-of-job */
//#define BOT_DEAD_ZAP /* zap Ctrl bottom window when target dies */ //#define BOT_DEAD_ZAP /* zap Ctrl bottom window when target dies */
//#define BOT_MENU_YES /* enable bottom window for menu prototype */ //#define BOT_MENU_YES /* enable bottom window for menu prototype */
//#define BOT_STRV_OFF /* don't emphasize strv w/ focus if spaces */
//#define CASEUP_HEXES /* show all those hex values in upper case */ //#define CASEUP_HEXES /* show all those hex values in upper case */
//#define CASEUP_SUFIX /* show time/mem/cnts suffix in upper case */ //#define CASEUP_SUFIX /* show time/mem/cnts suffix in upper case */
//#define EQUCOLHDRYES /* yes, equalize the column header lengths */ //#define EQUCOLHDRYES /* yes, equalize the column header lengths */