aboutsummaryrefslogtreecommitdiffstats
path: root/src/display.c
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-05-04 20:01:29 -0400
committerJesse Luehrs <doy@tozt.net>2014-05-04 20:01:29 -0400
commite9ff48e51a9df78375ce703ff3d4df1a362ac259 (patch)
treed4165155445d4fe741145243d1559d4cac6446d0 /src/display.c
parent270d383f9fa721bf910235625c77c6ce9245df7e (diff)
downloadrunes-e9ff48e51a9df78375ce703ff3d4df1a362ac259.tar.gz
runes-e9ff48e51a9df78375ce703ff3d4df1a362ac259.zip
refactor to make alternate screens work again
Diffstat (limited to 'src/display.c')
-rw-r--r--src/display.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/display.c b/src/display.c
index 71fb9df..be64180 100644
--- a/src/display.c
+++ b/src/display.c
@@ -91,10 +91,10 @@ void runes_display_draw_screen(RunesTerm *t)
}
/* XXX quite inefficient */
- for (r = 0; r < t->scr.max.row; ++r) {
+ for (r = 0; r < t->scr.grid->max.row; ++r) {
int c = 0;
- while (c < t->scr.max.col) {
+ while (c < t->scr.grid->max.col) {
c += runes_display_draw_cell(t, r, c);
}
}
@@ -106,10 +106,10 @@ void runes_display_draw_screen(RunesTerm *t)
void runes_display_draw_cursor(RunesTerm *t, cairo_t *cr)
{
if (!t->scr.hide_cursor) {
- int row = t->scr.cur.row, col = t->scr.cur.col;
+ int row = t->scr.grid->cur.row, col = t->scr.grid->cur.col;
- if (col >= t->scr.max.col) {
- col = t->scr.max.col - 1;
+ if (col >= t->scr.grid->max.col) {
+ col = t->scr.grid->max.col - 1;
}
cairo_save(cr);
@@ -124,7 +124,7 @@ void runes_display_draw_cursor(RunesTerm *t, cairo_t *cr)
cairo_stroke(cr);
}
else {
- struct runes_cell *cell = &t->scr.rows[t->scr.row_top + row].cells[col];
+ struct runes_cell *cell = &t->scr.grid->rows[t->scr.grid->row_top + row].cells[col];
cairo_rectangle(
cr,
@@ -182,7 +182,7 @@ static void runes_display_recalculate_font_metrics(RunesTerm *t)
static int runes_display_draw_cell(RunesTerm *t, int row, int col)
{
- struct runes_cell *cell = &t->scr.rows[row + t->scr.row_top - t->scr.row_visible_offset].cells[col];
+ struct runes_cell *cell = &t->scr.grid->rows[row + t->scr.grid->row_top - t->scr.row_visible_offset].cells[col];
cairo_pattern_t *bg = NULL, *fg = NULL;
int bg_is_custom = 0, fg_is_custom = 0;