From 77a2aba5465a10dbe3d9fdb4bf306d1546a31ffa Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Sun, 26 Jan 2014 20:08:05 +0100 Subject: [PATCH] gui: Move call to print_all_items() into init_wins(). All three callers of init_wins() called print_all_items() directly thereafter. init_wins() had to be moved below print_all_items(). --- gui.c | 142 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 70 insertions(+), 72 deletions(-) diff --git a/gui.c b/gui.c index ead75209..57cfe638 100644 --- a/gui.c +++ b/gui.c @@ -564,75 +564,6 @@ __noreturn __printf_2_3 static void die(int exit_code, const char* fmt, ...) exit(exit_code); } -/* - * init all windows - */ -static void init_wins(int top_lines) -{ - int top_y = 0, bot_y = top_lines + 1, sb_y = LINES - 2, - in_y = LINES - 1, sep_y = top_lines; - - top.lines = top_lines; - bot.lines = LINES - top.lines - 3; - sb.lines = in.lines = sep.lines = 1; - - top.cols = bot.cols = sb.cols = in.cols = sep.cols = COLS; - - assume_default_colors(theme.default_fg, theme.default_bg); - if (top.win) { - wresize(top.win, top.lines, top.cols); - mvwin(top.win, top_y, 0); - - wresize(sb.win, sb.lines, sb.cols); - mvwin(sb.win, sb_y, 0); - - wresize(sep.win, sep.lines, sep.cols); - mvwin(sep.win, sep_y, 0); - - wresize(bot.win, bot.lines, bot.cols); - mvwin(bot.win, bot_y, 0); - - wresize(in.win, in.lines, in.cols); - mvwin(in.win, in_y, 0); - } else { - sep.win = newwin(sep.lines, sep.cols, sep_y, 0); - top.win = newwin(top.lines, top.cols, top_y, 0); - bot.win = newwin(bot.lines, bot.cols, bot_y, 0); - sb.win = newwin(sb.lines, sb.cols, sb_y, 0); - in.win = newwin(in.lines, in.cols, in_y, 0); - if (!top.win || !bot.win || !sb.win || !in.win || !sep.win) - die(EXIT_FAILURE, "Error: Cannot create curses windows\n"); - wclear(bot.win); - wclear(sb.win); - wclear(in.win); - scrollok(bot.win, 1); - wattron(sb.win, COLOR_PAIR(COLOR_STATUSBAR)); - wattron(sep.win, COLOR_PAIR(COLOR_SEPARATOR)); - wattron(bot.win, COLOR_PAIR(COLOR_BOT)); - wattron(top.win, COLOR_PAIR(COLOR_TOP)); - nodelay(top.win, 1); - nodelay(bot.win, 1); - nodelay(sb.win, 1); - nodelay(in.win, 0); - - keypad(top.win, 1); - keypad(bot.win, 1); - keypad(sb.win, 1); - keypad(in.win, 1); - } - wmove(sep.win, 0, 0); - whline(sep.win, theme.sep_char, COLS); - wclear(top.win); - //wclear(bot.win); - wnoutrefresh(top.win); - wnoutrefresh(bot.win); - print_status_bar(); - wnoutrefresh(sb.win); - wnoutrefresh(in.win); - wnoutrefresh(sep.win); - doupdate(); -} - /* * Print stat item #i to curses window */ @@ -737,6 +668,76 @@ static void clear_all_items(void) } } +/* + * init all windows + */ +static void init_wins(int top_lines) +{ + int top_y = 0, bot_y = top_lines + 1, sb_y = LINES - 2, + in_y = LINES - 1, sep_y = top_lines; + + top.lines = top_lines; + bot.lines = LINES - top.lines - 3; + sb.lines = in.lines = sep.lines = 1; + + top.cols = bot.cols = sb.cols = in.cols = sep.cols = COLS; + + assume_default_colors(theme.default_fg, theme.default_bg); + if (top.win) { + wresize(top.win, top.lines, top.cols); + mvwin(top.win, top_y, 0); + + wresize(sb.win, sb.lines, sb.cols); + mvwin(sb.win, sb_y, 0); + + wresize(sep.win, sep.lines, sep.cols); + mvwin(sep.win, sep_y, 0); + + wresize(bot.win, bot.lines, bot.cols); + mvwin(bot.win, bot_y, 0); + + wresize(in.win, in.lines, in.cols); + mvwin(in.win, in_y, 0); + } else { + sep.win = newwin(sep.lines, sep.cols, sep_y, 0); + top.win = newwin(top.lines, top.cols, top_y, 0); + bot.win = newwin(bot.lines, bot.cols, bot_y, 0); + sb.win = newwin(sb.lines, sb.cols, sb_y, 0); + in.win = newwin(in.lines, in.cols, in_y, 0); + if (!top.win || !bot.win || !sb.win || !in.win || !sep.win) + die(EXIT_FAILURE, "Error: Cannot create curses windows\n"); + wclear(bot.win); + wclear(sb.win); + wclear(in.win); + scrollok(bot.win, 1); + wattron(sb.win, COLOR_PAIR(COLOR_STATUSBAR)); + wattron(sep.win, COLOR_PAIR(COLOR_SEPARATOR)); + wattron(bot.win, COLOR_PAIR(COLOR_BOT)); + wattron(top.win, COLOR_PAIR(COLOR_TOP)); + nodelay(top.win, 1); + nodelay(bot.win, 1); + nodelay(sb.win, 1); + nodelay(in.win, 0); + + keypad(top.win, 1); + keypad(bot.win, 1); + keypad(sb.win, 1); + keypad(in.win, 1); + } + wmove(sep.win, 0, 0); + whline(sep.win, theme.sep_char, COLS); + wclear(top.win); + print_all_items(); + //wclear(bot.win); + wnoutrefresh(top.win); + wnoutrefresh(bot.win); + print_status_bar(); + wnoutrefresh(sb.win); + wnoutrefresh(in.win); + wnoutrefresh(sep.win); + doupdate(); +} + static void init_pair_or_die(short pair, short f, short b) { if (init_pair(pair, f, b) == ERR) @@ -787,7 +788,6 @@ static void init_curses(void) init_colors_or_die(); clear(); /* ignore non-fatal errors */ init_wins(theme.top_lines_default); - print_all_items(); // noecho(); /* don't echo input */ } @@ -1328,7 +1328,6 @@ static void com_shrink_top_win(void) return; } init_wins(top.lines - 1); - print_all_items(); print_in_bar(COLOR_MSG, "%s", "decreased top window"); } @@ -1339,7 +1338,6 @@ static void com_enlarge_top_win(void) return; } init_wins(top.lines + 1); - print_all_items(); print_in_bar(COLOR_MSG, "increased top window"); } -- 2.39.2