diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2016-05-21 22:29:28 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2016-05-22 00:05:31 +0200 |
| commit | d974dedbfd80e051fc26f9a42ea4f5059823bb86 (patch) | |
| tree | a04ac4d30c6acf700c47dca957762b584ed5d0ff /ui-curses.c | |
| parent | bff2afbf1dc4b302f600e56d46cb413f1c31be3c (diff) | |
| download | vis-d974dedbfd80e051fc26f9a42ea4f5059823bb86.tar.gz vis-d974dedbfd80e051fc26f9a42ea4f5059823bb86.tar.xz | |
vis: add function to change window statusbar content
Diffstat (limited to 'ui-curses.c')
| -rw-r--r-- | ui-curses.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ui-curses.c b/ui-curses.c index f2f215a..ce4ef03 100644 --- a/ui-curses.c +++ b/ui-curses.c @@ -669,6 +669,18 @@ static void ui_window_draw_status(UiWin *w) { mvwaddstr(win->winstatus, 0, win->width - (msg - buf) - 1, buf); } +static void ui_window_status(UiWin *w, const char *status) { + UiCursesWin *win = (UiCursesWin*)w; + if (!win->winstatus) + return; + UiCurses *uic = win->ui; + bool focused = uic->selwin == win; + wattrset(win->winstatus, focused ? A_REVERSE|A_BOLD : A_REVERSE); + mvwhline(win->winstatus, 0, 0, ' ', win->width); + if (status) + mvwprintw(win->winstatus, 0, 0, "%s", status); +} + static void ui_window_draw(UiWin *w) { UiCursesWin *win = (UiCursesWin*)w; if (!ui_window_draw_sidebar(win)) @@ -985,6 +997,7 @@ static UiWin *ui_window_new(Ui *ui, View *view, File *file, enum UiOption option win->uiwin = (UiWin) { .draw = ui_window_draw, .draw_status = ui_window_draw_status, + .status = ui_window_status, .options_set = ui_window_options_set, .options_get = ui_window_options_get, .reload = ui_window_reload, |
