summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pttbbs/mbbsd/board.c21
-rw-r--r--pttbbs/mbbsd/menu.c6
2 files changed, 18 insertions, 9 deletions
diff --git a/pttbbs/mbbsd/board.c b/pttbbs/mbbsd/board.c
index ac8976d0..aa4318bb 100644
--- a/pttbbs/mbbsd/board.c
+++ b/pttbbs/mbbsd/board.c
@@ -1230,20 +1230,23 @@ brdlist_foot(void)
}
-static inline char *
+static inline const char *
make_class_color(char *name)
{
/* 34 is too dark */
- char *colorset[8] = {"", ANSI_COLOR(32),
+ const char *colorset[8] = {"", ANSI_COLOR(32),
ANSI_COLOR(33), ANSI_COLOR(36), ANSI_COLOR(1;34),
ANSI_COLOR(1), ANSI_COLOR(1;32), ANSI_COLOR(1;33)};
+ const char *colorset2[8] = {"", ANSI_COLOR(32),
+ ANSI_COLOR(33), ANSI_COLOR(36), ANSI_COLOR(1;34),
+ "", ANSI_COLOR(32), ANSI_COLOR(33)};
+ uint32_t index = (((uint32_t)name[0] + name[1] + name[2] + name[3]) & 0x07);
- return colorset[(unsigned int)
- (name[0] + name[1] +
- name[2] + name[3]) & 0x7];
+ return HasUserFlag(UF_MENU_LIGHTBAR) ? colorset2[index] : colorset[index];
}
#define HILIGHT_COLOR ANSI_COLOR(1;36)
+#define HILIGHT_COLOR2 ANSI_COLOR(36)
static void
show_brdlist(int head, int clsflag, int newflag)
@@ -1341,7 +1344,9 @@ show_brdlist(int head, int clsflag, int newflag)
// fight with users...
// think about new way some otherday.
prints("%sMyFavFolder" ANSI_RESET " ¥Ø¿ý ¡¼%-34s",
- !(HasUserFlag(UF_FAV_NOHILIGHT))?HILIGHT_COLOR : "",
+ !(HasUserFlag(UF_FAV_NOHILIGHT))?
+ (HasUserFlag(UF_MENU_LIGHTBAR) ?
+ HILIGHT_COLOR2 : HILIGHT_COLOR) : "",
title);
/*
if (!(HasUserFlag(UF_FAV_NOHILIGHT)))
@@ -1403,7 +1408,9 @@ show_brdlist(int head, int clsflag, int newflag)
prints("%s%-13s" ANSI_RESET "%s%5.5s" ANSI_COLOR(0;37)
"%2.2s" ANSI_RESET "%-34.34s",
((!(HasUserFlag(UF_FAV_NOHILIGHT)) &&
- getboard(ptr->bid) != NULL))? HILIGHT_COLOR : "",
+ getboard(ptr->bid) != NULL))?
+ (HasUserFlag(UF_MENU_LIGHTBAR) ? HILIGHT_COLOR2 :
+ HILIGHT_COLOR) : "",
B_BH(ptr)->brdname,
make_class_color(B_BH(ptr)->title),
B_BH(ptr)->title, B_BH(ptr)->title + 5, B_BH(ptr)->title + 7);
diff --git a/pttbbs/mbbsd/menu.c b/pttbbs/mbbsd/menu.c
index 608040d4..b6327b12 100644
--- a/pttbbs/mbbsd/menu.c
+++ b/pttbbs/mbbsd/menu.c
@@ -423,8 +423,10 @@ show_menu(int menu_index, const commands_t * p)
move(row, 0);
while ((s = p[n].desc)) {
if (CheckMenuPerm(p[n].level)) {
- prints("%*s (" ANSI_COLOR(1;36) "%c" ANSI_RESET ")%s\n",
- menu_column, "", s[0], s+1);
+ prints("%*s (%s%c" ANSI_RESET ")%s\n",
+ menu_column, "",
+ (HasUserFlag(UF_MENU_LIGHTBAR) ? ANSI_COLOR(36) :
+ ANSI_COLOR(1;36)), s[0], s+1);
}
n++;
}