version 1.90, 2012/03/17 18:24:07 |
version 1.91, 2012/04/23 22:23:14 |
|
|
struct winlink *wl; |
struct winlink *wl; |
struct screen old_status, window_list; |
struct screen old_status, window_list; |
struct grid_cell stdgc, lgc, rgc, gc; |
struct grid_cell stdgc, lgc, rgc, gc; |
|
struct options *oo; |
time_t t; |
time_t t; |
char *left, *right; |
char *left, *right, *sep; |
u_int offset, needed; |
u_int offset, needed; |
u_int wlstart, wlwidth, wlavailable, wloffset, wlsize; |
u_int wlstart, wlwidth, wlavailable, wloffset, wlsize; |
size_t llen, rlen; |
size_t llen, rlen, seplen; |
int larrow, rarrow, utf8flag; |
int larrow, rarrow, utf8flag; |
|
|
/* No status line? */ |
/* No status line? */ |
|
|
|
|
if (wl == s->curw) |
if (wl == s->curw) |
wloffset = wlwidth; |
wloffset = wlwidth; |
wlwidth += wl->status_width + 1; |
|
|
oo = &wl->window->options; |
|
sep = options_get_string(oo, "window-status-separator"); |
|
seplen = screen_write_strlen(utf8flag, "%s", sep); |
|
wlwidth += wl->status_width + seplen; |
} |
} |
|
|
/* Create a new screen for the window list. */ |
/* Create a new screen for the window list. */ |
|
|
RB_FOREACH(wl, winlinks, &s->windows) { |
RB_FOREACH(wl, winlinks, &s->windows) { |
screen_write_cnputs(&ctx, |
screen_write_cnputs(&ctx, |
-1, &wl->status_cell, utf8flag, "%s", wl->status_text); |
-1, &wl->status_cell, utf8flag, "%s", wl->status_text); |
screen_write_putc(&ctx, &stdgc, ' '); |
|
|
oo = &wl->window->options; |
|
sep = options_get_string(oo, "window-status-separator"); |
|
screen_write_nputs(&ctx, -1, &stdgc, utf8flag, "%s", sep); |
} |
} |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
|
|