mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-03-12 05:34:01 -04:00
wip: vt parsing: break out grid operating functions
This commit is contained in:
parent
6d5f5b9f7a
commit
4585df532c
5 changed files with 56 additions and 36 deletions
34
grid.c
Normal file
34
grid.c
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
#include "grid.h"
|
||||
|
||||
#include <string.h>
|
||||
|
||||
void
|
||||
grid_erase(struct grid *grid, int start, int end)
|
||||
{
|
||||
for (int i = start; i < end; i++) {
|
||||
struct cell *cell = &grid->cells[i];
|
||||
memset(cell, 0, sizeof(*cell));
|
||||
|
||||
cell->attrs.foreground = grid->foreground;
|
||||
cell->attrs.background = grid->background;
|
||||
|
||||
cell->dirty = true;
|
||||
grid->dirty = true;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
grid_cursor_move(struct grid *grid, int cols)
|
||||
{
|
||||
int new_cursor = grid->cursor + cols;
|
||||
grid->cells[grid->cursor].dirty = true;
|
||||
grid->cells[new_cursor].dirty = true;
|
||||
grid->cursor = new_cursor;
|
||||
grid->dirty = true;
|
||||
}
|
||||
|
||||
void
|
||||
grid_cursor_to(struct grid *grid, int pos)
|
||||
{
|
||||
grid_cursor_move(grid, pos - grid->cursor);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue