1 /* 2 * Copyright (C) 2014 haru <uobikiemukot at gmail dot com> 3 * Copyright (C) 2014 Hayaki Saito <user@zuse.jp> 4 * 5 * This program is free software: you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation, either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 */ 18 19 void erase_cell(struct terminal *term, int y, int x); 20 void copy_cell(struct terminal *term, int dst_y, int dst_x, int src_y, int src_x); 21 int set_cell(struct terminal *term, int y, int x, const struct glyph_t *glyphp); 22 void scroll(struct terminal *term, int from, int to, int offset); 23 24 /* relative movement: cause scrolling */ 25 void move_cursor(struct terminal *term, int y_offset, int x_offset); 26 27 /* absolute movement: never scroll */ 28 void set_cursor(struct terminal *term, int y, int x); 29 const struct glyph_t *drcsch(struct terminal *term, uint32_t code); 30 void addch(struct terminal *term, uint32_t code); 31 void reset_esc(struct terminal *term); 32 bool push_esc(struct terminal *term, uint8_t ch); 33 void reset_charset(struct terminal *term); 34 void reset(struct terminal *term); 35 void term_init(struct terminal *term, int width, int height, 36 int foreground_color, int background_color, 37 int cursor_color, int tabwidth, int cjkwidth); 38 void term_die(struct terminal *term); 39 40 /* emacs, -*- Mode: C; tab-width: 4; indent-tabs-mode: nil -*- */ 41 /* vim: set expandtab ts=4 : */ 42 /* EOF */ 43