mirror of
https://github.com/tmux/tmux.git
synced 2024-12-12 17:38:48 +00:00
Sync OpenBSD patchset 322:
Permit options such as status-bg to be configured using the entire 256 colour palette by setting "colour0" to "colour255".
This commit is contained in:
parent
f0cb57d8ac
commit
0ec1ce005c
6
clock.c
6
clock.c
@ -1,4 +1,4 @@
|
||||
/* $Id: clock.c,v 1.6 2009-08-26 22:12:21 tcunha Exp $ */
|
||||
/* $Id: clock.c,v 1.7 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -120,7 +120,7 @@ clock_draw(struct screen_write_ctx *ctx, u_int colour, int style)
|
||||
screen_write_cursormove(ctx, x, y);
|
||||
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.fg = colour;
|
||||
colour_set_fg(&gc, colour);
|
||||
screen_write_puts(ctx, &gc, "%s", tim);
|
||||
}
|
||||
return;
|
||||
@ -130,7 +130,7 @@ clock_draw(struct screen_write_ctx *ctx, u_int colour, int style)
|
||||
y = (screen_size_y(s) / 2) - 3;
|
||||
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.bg = colour;
|
||||
colour_set_bg(&gc, colour);
|
||||
for (ptr = tim; *ptr != '\0'; ptr++) {
|
||||
if (*ptr >= '0' && *ptr <= '9')
|
||||
idx = *ptr - '0';
|
||||
|
45
colour.c
45
colour.c
@ -1,4 +1,4 @@
|
||||
/* $Id: colour.c,v 1.6 2009-05-18 15:42:30 nicm Exp $ */
|
||||
/* $Id: colour.c,v 1.7 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -18,13 +18,42 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
const char *
|
||||
colour_tostring(u_char c)
|
||||
/*
|
||||
* Colour to string conversion functions. Bit 8 of the colour means it is one
|
||||
* of the 256 colour palette.
|
||||
*/
|
||||
|
||||
void
|
||||
colour_set_fg(struct grid_cell *gc, int c)
|
||||
{
|
||||
if (c & 0x100)
|
||||
gc->flags |= GRID_FLAG_FG256;
|
||||
gc->fg = c;
|
||||
}
|
||||
|
||||
void
|
||||
colour_set_bg(struct grid_cell *gc, int c)
|
||||
{
|
||||
if (c & 0x100)
|
||||
gc->flags |= GRID_FLAG_BG256;
|
||||
gc->bg = c;
|
||||
}
|
||||
|
||||
const char *
|
||||
colour_tostring(int c)
|
||||
{
|
||||
static char s[32];
|
||||
|
||||
if (c & 0x100) {
|
||||
xsnprintf(s, sizeof s, "colour%u", c & ~0x100);
|
||||
return (s);
|
||||
}
|
||||
|
||||
switch (c) {
|
||||
case 0:
|
||||
return ("black");
|
||||
@ -51,6 +80,16 @@ colour_tostring(u_char c)
|
||||
int
|
||||
colour_fromstring(const char *s)
|
||||
{
|
||||
const char *errstr;
|
||||
int n;
|
||||
|
||||
if (strncasecmp(s, "colour", (sizeof "colour") - 1) == 0) {
|
||||
n = strtonum(s + (sizeof "colour") - 1, 0, 255, &errstr);
|
||||
if (errstr != NULL)
|
||||
return (-1);
|
||||
return (n | 0x100);
|
||||
}
|
||||
|
||||
if (strcasecmp(s, "black") == 0 || (s[0] == '0' && s[1] == '\0'))
|
||||
return (0);
|
||||
if (strcasecmp(s, "red") == 0 || (s[0] == '1' && s[1] == '\0'))
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: screen-redraw.c,v 1.46 2009-08-31 22:30:15 tcunha Exp $ */
|
||||
/* $Id: screen-redraw.c,v 1.47 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -240,7 +240,7 @@ screen_redraw_draw_number(struct client *c, struct window_pane *wp)
|
||||
struct session *s = c->session;
|
||||
struct grid_cell gc;
|
||||
u_int idx, px, py, i, j;
|
||||
u_char colour;
|
||||
int colour;
|
||||
char buf[16], *ptr;
|
||||
size_t len;
|
||||
|
||||
@ -256,7 +256,7 @@ screen_redraw_draw_number(struct client *c, struct window_pane *wp)
|
||||
if (wp->sx < len * 6 || wp->sy < 5) {
|
||||
tty_cursor(tty, px - len / 2, py, wp->xoff, wp->yoff);
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.fg = colour;
|
||||
colour_set_fg(&gc, colour);
|
||||
tty_attributes(tty, &gc);
|
||||
tty_puts(tty, buf);
|
||||
return;
|
||||
@ -266,7 +266,7 @@ screen_redraw_draw_number(struct client *c, struct window_pane *wp)
|
||||
py -= 2;
|
||||
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.bg = colour;
|
||||
colour_set_bg(&gc, colour);
|
||||
tty_attributes(tty, &gc);
|
||||
for (ptr = buf; *ptr != '\0'; ptr++) {
|
||||
if (*ptr < '0' || *ptr > '9')
|
||||
@ -276,9 +276,8 @@ screen_redraw_draw_number(struct client *c, struct window_pane *wp)
|
||||
for (j = 0; j < 5; j++) {
|
||||
for (i = px; i < px + 5; i++) {
|
||||
tty_cursor(tty, i, py + j, wp->xoff, wp->yoff);
|
||||
if (!clock_table[idx][j][i - px])
|
||||
continue;
|
||||
tty_putc(tty, ' ');
|
||||
if (clock_table[idx][j][i - px])
|
||||
tty_putc(tty, ' ');
|
||||
}
|
||||
}
|
||||
px += 6;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: screen-write.c,v 1.71 2009-09-07 23:37:48 tcunha Exp $ */
|
||||
/* $Id: screen-write.c,v 1.72 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -300,7 +300,7 @@ screen_write_parsestyle(
|
||||
char tmp[32];
|
||||
int val;
|
||||
size_t end;
|
||||
u_char fg, bg, attr;
|
||||
u_char fg, bg, attr, flags;
|
||||
|
||||
if (*in == '\0')
|
||||
return;
|
||||
@ -309,7 +309,8 @@ screen_write_parsestyle(
|
||||
|
||||
fg = gc->fg;
|
||||
bg = gc->bg;
|
||||
attr = 0;
|
||||
attr = gc->attr;
|
||||
flags = gc->flags;
|
||||
do {
|
||||
end = strcspn(in, delimiters);
|
||||
if (end > (sizeof tmp) - 1)
|
||||
@ -325,14 +326,24 @@ screen_write_parsestyle(
|
||||
if ((val = colour_fromstring(tmp + 3)) == -1)
|
||||
return;
|
||||
if (*in == 'f' || *in == 'F') {
|
||||
if (val != 8)
|
||||
if (val != 8) {
|
||||
if (val & 0x100) {
|
||||
flags |= GRID_FLAG_FG256;
|
||||
val &= ~0x100;
|
||||
} else
|
||||
flags &= ~GRID_FLAG_FG256;
|
||||
fg = val;
|
||||
else
|
||||
} else
|
||||
fg = defgc->fg;
|
||||
} else if (*in == 'b' || *in == 'B') {
|
||||
if (val != 8)
|
||||
if (val != 8) {
|
||||
if (val & 0x100) {
|
||||
flags |= GRID_FLAG_BG256;
|
||||
val &= ~0x100;
|
||||
} else
|
||||
flags &= ~GRID_FLAG_BG256;
|
||||
bg = val;
|
||||
else
|
||||
} else
|
||||
bg = defgc->bg;
|
||||
} else
|
||||
return;
|
||||
@ -347,6 +358,7 @@ screen_write_parsestyle(
|
||||
gc->fg = fg;
|
||||
gc->bg = bg;
|
||||
gc->attr = attr;
|
||||
gc->flags = flags;
|
||||
}
|
||||
|
||||
/* Copy from another screen. */
|
||||
@ -1002,7 +1014,8 @@ screen_write_cell(
|
||||
if (screen_check_selection(s, s->cx - width, s->cy)) {
|
||||
memcpy(&tmp_gc2, &s->sel.cell, sizeof tmp_gc2);
|
||||
tmp_gc2.data = gc->data;
|
||||
tmp_gc2.flags = gc->flags;
|
||||
tmp_gc2.flags = gc->flags & ~(GRID_FLAG_FG256|GRID_FLAG_BG256);
|
||||
tmp_gc2.flags |= s->sel.cell.flags & (GRID_FLAG_FG256|GRID_FLAG_BG256);
|
||||
ttyctx.cell = &tmp_gc2;
|
||||
tty_write(tty_cmd_cell, &ttyctx);
|
||||
} else {
|
||||
|
4
server.c
4
server.c
@ -1,4 +1,4 @@
|
||||
/* $Id: server.c,v 1.183 2009-09-08 00:01:11 tcunha Exp $ */
|
||||
/* $Id: server.c,v 1.184 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -604,7 +604,7 @@ server_redraw_locked(struct client *c)
|
||||
style = options_get_number(&global_w_options, "clock-mode-style");
|
||||
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.fg = colour;
|
||||
colour_set_fg(&gc, colour);
|
||||
gc.attr |= GRID_ATTR_BRIGHT;
|
||||
|
||||
screen_init(&screen, xx, yy, 0);
|
||||
|
47
status.c
47
status.c
@ -1,4 +1,4 @@
|
||||
/* $Id: status.c,v 1.117 2009-09-07 23:48:54 tcunha Exp $ */
|
||||
/* $Id: status.c,v 1.118 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -66,8 +66,8 @@ status_redraw(struct client *c)
|
||||
if (gettimeofday(&c->status_timer, NULL) != 0)
|
||||
fatal("gettimeofday");
|
||||
memcpy(&stdgc, &grid_default_cell, sizeof gc);
|
||||
stdgc.fg = options_get_number(&s->options, "status-fg");
|
||||
stdgc.bg = options_get_number(&s->options, "status-bg");
|
||||
colour_set_fg(&stdgc, options_get_number(&s->options, "status-fg"));
|
||||
colour_set_bg(&stdgc, options_get_number(&s->options, "status-bg"));
|
||||
stdgc.attr |= options_get_number(&s->options, "status-attr");
|
||||
|
||||
/*
|
||||
@ -79,19 +79,19 @@ status_redraw(struct client *c)
|
||||
memcpy(&sr_stdgc, &stdgc, sizeof sr_stdgc);
|
||||
sl_fg = options_get_number(&s->options, "status-left-fg");
|
||||
if (sl_fg != 8)
|
||||
sl_stdgc.fg = sl_fg;
|
||||
colour_set_fg(&sl_stdgc, sl_fg);
|
||||
sl_bg = options_get_number(&s->options, "status-left-bg");
|
||||
if (sl_bg != 8)
|
||||
sl_stdgc.bg = sl_bg;
|
||||
colour_set_bg(&sl_stdgc, sl_bg);
|
||||
sl_attr = options_get_number(&s->options, "status-left-attr");
|
||||
if (sl_attr != 0)
|
||||
sl_stdgc.attr = sl_attr;
|
||||
sr_fg = options_get_number(&s->options, "status-right-fg");
|
||||
if (sr_fg != 8)
|
||||
sr_stdgc.fg = sr_fg;
|
||||
colour_set_fg(&sr_stdgc, sr_fg);
|
||||
sr_bg = options_get_number(&s->options, "status-right-bg");
|
||||
if (sr_bg != 8)
|
||||
sr_stdgc.bg = sr_bg;
|
||||
colour_set_bg(&sr_stdgc, sr_bg);
|
||||
sr_attr = options_get_number(&s->options, "status-right-attr");
|
||||
if (sr_attr != 0)
|
||||
sr_stdgc.attr = sr_attr;
|
||||
@ -501,16 +501,17 @@ status_width(struct winlink *wl)
|
||||
char *
|
||||
status_print(struct session *s, struct winlink *wl, struct grid_cell *gc)
|
||||
{
|
||||
char *text, flag;
|
||||
u_char fg, bg, attr;
|
||||
struct options *oo = &wl->window->options;
|
||||
char *text, flag;
|
||||
u_char fg, bg, attr;
|
||||
|
||||
fg = options_get_number(&wl->window->options, "window-status-fg");
|
||||
fg = options_get_number(oo, "window-status-fg");
|
||||
if (fg != 8)
|
||||
gc->fg = fg;
|
||||
bg = options_get_number(&wl->window->options, "window-status-bg");
|
||||
colour_set_fg(gc, fg);
|
||||
bg = options_get_number(oo, "window-status-bg");
|
||||
if (bg != 8)
|
||||
gc->bg = bg;
|
||||
attr = options_get_number(&wl->window->options, "window-status-attr");
|
||||
colour_set_bg(gc, bg);
|
||||
attr = options_get_number(oo, "window-status-attr");
|
||||
if (attr != 0)
|
||||
gc->attr = attr;
|
||||
|
||||
@ -518,13 +519,13 @@ status_print(struct session *s, struct winlink *wl, struct grid_cell *gc)
|
||||
if (wl == SLIST_FIRST(&s->lastw))
|
||||
flag = '-';
|
||||
if (wl == s->curw) {
|
||||
fg = options_get_number(&wl->window->options, "window-status-current-fg");
|
||||
fg = options_get_number(oo, "window-status-current-fg");
|
||||
if (fg != 8)
|
||||
gc->fg = fg;
|
||||
bg = options_get_number(&wl->window->options, "window-status-current-bg");
|
||||
colour_set_fg(gc, fg);
|
||||
bg = options_get_number(oo, "window-status-current-bg");
|
||||
if (bg != 8)
|
||||
gc->bg = bg;
|
||||
attr = options_get_number(&wl->window->options, "window-status-current-attr");
|
||||
colour_set_bg(gc, bg);
|
||||
attr = options_get_number(oo, "window-status-current-attr");
|
||||
if (attr != 0)
|
||||
gc->attr = attr;
|
||||
flag = '*';
|
||||
@ -606,8 +607,8 @@ status_message_redraw(struct client *c)
|
||||
len = c->tty.sx;
|
||||
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.fg = options_get_number(&s->options, "message-fg");
|
||||
gc.bg = options_get_number(&s->options, "message-bg");
|
||||
colour_set_fg(&gc, options_get_number(&s->options, "message-fg"));
|
||||
colour_set_bg(&gc, options_get_number(&s->options, "message-bg"));
|
||||
gc.attr |= options_get_number(&s->options, "message-attr");
|
||||
|
||||
screen_write_start(&ctx, NULL, &c->status);
|
||||
@ -719,8 +720,8 @@ status_prompt_redraw(struct client *c)
|
||||
len = c->tty.sx;
|
||||
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.fg = options_get_number(&s->options, "message-fg");
|
||||
gc.bg = options_get_number(&s->options, "message-bg");
|
||||
colour_set_fg(&gc, options_get_number(&s->options, "message-fg"));
|
||||
colour_set_bg(&gc, options_get_number(&s->options, "message-bg"));
|
||||
gc.attr |= options_get_number(&s->options, "message-attr");
|
||||
|
||||
screen_write_start(&ctx, NULL, &c->status);
|
||||
|
11
tmux.1
11
tmux.1
@ -1,4 +1,4 @@
|
||||
.\" $Id: tmux.1,v 1.166 2009-09-08 00:01:11 tcunha Exp $
|
||||
.\" $Id: tmux.1,v 1.167 2009-09-11 14:13:52 tcunha Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
.\"
|
||||
@ -14,7 +14,7 @@
|
||||
.\" IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
|
||||
.\" OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.Dd $Mdocdate: September 7 2009 $
|
||||
.Dd $Mdocdate: September 10 2009 $
|
||||
.Dt TMUX 1
|
||||
.Os
|
||||
.Sh NAME
|
||||
@ -1250,8 +1250,11 @@ is one of:
|
||||
.Ic blue ,
|
||||
.Ic magenta ,
|
||||
.Ic cyan ,
|
||||
.Ic white
|
||||
or
|
||||
.Ic white ,
|
||||
.Ic colour0
|
||||
to
|
||||
.Ic colour255
|
||||
from the 256-colour palette, or
|
||||
.Ic default .
|
||||
.It Ic message-fg Ar colour
|
||||
Set status line message foreground colour.
|
||||
|
6
tmux.h
6
tmux.h
@ -1,4 +1,4 @@
|
||||
/* $Id: tmux.h,v 1.439 2009-09-07 23:59:19 tcunha Exp $ */
|
||||
/* $Id: tmux.h,v 1.440 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -1484,7 +1484,9 @@ void input_key(struct window_pane *, int);
|
||||
void input_mouse(struct window_pane *, u_char, u_char, u_char);
|
||||
|
||||
/* colour.c */
|
||||
const char *colour_tostring(u_char);
|
||||
void colour_set_fg(struct grid_cell *, int);
|
||||
void colour_set_bg(struct grid_cell *, int);
|
||||
const char *colour_tostring(int);
|
||||
int colour_fromstring(const char *);
|
||||
u_char colour_256to16(u_char);
|
||||
u_char colour_256to88(u_char);
|
||||
|
5
tty.c
5
tty.c
@ -1,4 +1,4 @@
|
||||
/* $Id: tty.c,v 1.131 2009-08-31 22:30:15 tcunha Exp $ */
|
||||
/* $Id: tty.c,v 1.132 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -520,7 +520,8 @@ tty_draw_line(struct tty *tty, struct screen *s, u_int py, u_int ox, u_int oy)
|
||||
if (screen_check_selection(s, i, py)) {
|
||||
memcpy(&tmpgc, &s->sel.cell, sizeof tmpgc);
|
||||
tmpgc.data = gc->data;
|
||||
tmpgc.flags = gc->flags;
|
||||
tmpgc.flags = gc->flags & ~(GRID_FLAG_FG256|GRID_FLAG_BG256);
|
||||
tmpgc.flags |= s->sel.cell.flags & (GRID_FLAG_FG256|GRID_FLAG_BG256);
|
||||
tty_cell(tty, &tmpgc, gu);
|
||||
} else
|
||||
tty_cell(tty, gc, gu);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: window-choose.c,v 1.22 2009-08-09 16:50:57 tcunha Exp $ */
|
||||
/* $Id: window-choose.c,v 1.23 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -295,6 +295,7 @@ window_choose_write_line(
|
||||
{
|
||||
struct window_choose_mode_data *data = wp->modedata;
|
||||
struct window_choose_mode_item *item;
|
||||
struct options *oo = &wp->window->options;
|
||||
struct screen *s = &data->screen;
|
||||
struct grid_cell gc;
|
||||
int utf8flag;
|
||||
@ -305,9 +306,9 @@ window_choose_write_line(
|
||||
utf8flag = options_get_number(&wp->window->options, "utf8");
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
if (data->selected == data->top + py) {
|
||||
gc.fg = options_get_number(&wp->window->options, "mode-fg");
|
||||
gc.bg = options_get_number(&wp->window->options, "mode-bg");
|
||||
gc.attr |= options_get_number(&wp->window->options, "mode-attr");
|
||||
colour_set_fg(&gc, options_get_number(oo, "mode-fg"));
|
||||
colour_set_bg(&gc, options_get_number(oo, "mode-bg"));
|
||||
gc.attr |= options_get_number(oo, "mode-attr");
|
||||
}
|
||||
|
||||
screen_write_cursormove(ctx, 0, py);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: window-copy.c,v 1.85 2009-09-07 23:48:54 tcunha Exp $ */
|
||||
/* $Id: window-copy.c,v 1.86 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -660,14 +660,15 @@ window_copy_write_line(
|
||||
{
|
||||
struct window_copy_mode_data *data = wp->modedata;
|
||||
struct screen *s = &data->screen;
|
||||
struct options *oo = &wp->window->options;
|
||||
struct grid_cell gc;
|
||||
char hdr[32];
|
||||
size_t last, xoff = 0, size = 0;
|
||||
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.fg = options_get_number(&wp->window->options, "mode-fg");
|
||||
gc.bg = options_get_number(&wp->window->options, "mode-bg");
|
||||
gc.attr |= options_get_number(&wp->window->options, "mode-attr");
|
||||
colour_set_fg(&gc, options_get_number(oo, "mode-fg"));
|
||||
colour_set_bg(&gc, options_get_number(oo, "mode-bg"));
|
||||
gc.attr |= options_get_number(oo, "mode-attr");
|
||||
|
||||
last = screen_size_y(s) - 1;
|
||||
if (py == 0) {
|
||||
@ -765,6 +766,7 @@ window_copy_update_selection(struct window_pane *wp)
|
||||
{
|
||||
struct window_copy_mode_data *data = wp->modedata;
|
||||
struct screen *s = &data->screen;
|
||||
struct options *oo = &wp->window->options;
|
||||
struct grid_cell gc;
|
||||
u_int sx, sy, ty;
|
||||
|
||||
@ -773,9 +775,9 @@ window_copy_update_selection(struct window_pane *wp)
|
||||
|
||||
/* Set colours. */
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
gc.fg = options_get_number(&wp->window->options, "mode-fg");
|
||||
gc.bg = options_get_number(&wp->window->options, "mode-bg");
|
||||
gc.attr |= options_get_number(&wp->window->options, "mode-attr");
|
||||
colour_set_fg(&gc, options_get_number(oo, "mode-fg"));
|
||||
colour_set_bg(&gc, options_get_number(oo, "mode-bg"));
|
||||
gc.attr |= options_get_number(oo, "mode-attr");
|
||||
|
||||
/* Find top of screen. */
|
||||
ty = screen_hsize(&wp->base) - data->oy;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: window-more.c,v 1.37 2009-08-20 11:24:33 tcunha Exp $ */
|
||||
/* $Id: window-more.c,v 1.38 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -164,6 +164,7 @@ window_more_write_line(
|
||||
{
|
||||
struct window_more_mode_data *data = wp->modedata;
|
||||
struct screen *s = &data->screen;
|
||||
struct options *oo = &wp->window->options;
|
||||
struct grid_cell gc;
|
||||
char *msg, hdr[32];
|
||||
size_t size;
|
||||
@ -176,9 +177,9 @@ window_more_write_line(
|
||||
size = xsnprintf(hdr, sizeof hdr,
|
||||
"[%u/%u]", data->top, ARRAY_LENGTH(&data->list));
|
||||
screen_write_cursormove(ctx, screen_size_x(s) - size, 0);
|
||||
gc.fg = options_get_number(&wp->window->options, "mode-fg");
|
||||
gc.bg = options_get_number(&wp->window->options, "mode-bg");
|
||||
gc.attr |= options_get_number(&wp->window->options, "mode-attr");
|
||||
colour_set_fg(&gc, options_get_number(oo, "mode-fg"));
|
||||
colour_set_bg(&gc, options_get_number(oo, "mode-bg"));
|
||||
gc.attr |= options_get_number(oo, "mode-attr");
|
||||
screen_write_puts(ctx, &gc, "%s", hdr);
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
} else
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $Id: window-scroll.c,v 1.40 2009-08-16 19:26:49 tcunha Exp $ */
|
||||
/* $Id: window-scroll.c,v 1.41 2009-09-11 14:13:52 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -192,6 +192,7 @@ window_scroll_write_line(
|
||||
{
|
||||
struct window_scroll_mode_data *data = wp->modedata;
|
||||
struct screen *s = &data->screen;
|
||||
struct options *oo = &wp->window->options;
|
||||
struct grid_cell gc;
|
||||
char hdr[32];
|
||||
size_t size;
|
||||
@ -200,9 +201,9 @@ window_scroll_write_line(
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
size = xsnprintf(hdr, sizeof hdr,
|
||||
"[%u,%u/%u]", data->ox, data->oy, screen_hsize(&wp->base));
|
||||
gc.fg = options_get_number(&wp->window->options, "mode-fg");
|
||||
gc.bg = options_get_number(&wp->window->options, "mode-bg");
|
||||
gc.attr |= options_get_number(&wp->window->options, "mode-attr");
|
||||
colour_set_fg(&gc, options_get_number(oo, "mode-fg"));
|
||||
colour_set_bg(&gc, options_get_number(oo, "mode-bg"));
|
||||
gc.attr |= options_get_number(oo, "mode-attr");
|
||||
screen_write_cursormove(ctx, screen_size_x(s) - size, 0);
|
||||
screen_write_puts(ctx, &gc, "%s", hdr);
|
||||
memcpy(&gc, &grid_default_cell, sizeof gc);
|
||||
|
Loading…
Reference in New Issue
Block a user