Changeset d31c3ea in mainline for uspace/lib/vt/src/vt100.c
- Timestamp:
- 2024-10-01T11:13:28Z (10 months ago)
- Branches:
- master
- Children:
- 6907f26
- Parents:
- 357d9dd
- git-author:
- Jiri Svoboda <jiri@…> (2024-09-30 19:13:18)
- git-committer:
- Jiri Svoboda <jiri@…> (2024-10-01 11:13:28)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/vt/src/vt100.c
r357d9dd rd31c3ea 51 51 void vt100_cls(vt100_t *state) 52 52 { 53 state->c ontrol_puts(state->arg, "\033[2J");53 state->cb->control_puts(state->arg, "\033[2J"); 54 54 } 55 55 … … 60 60 61 61 snprintf(control, MAX_CONTROL, "\033[%um", mode); 62 state->c ontrol_puts(state->arg, control);62 state->cb->control_puts(state->arg, control); 63 63 } 64 64 … … 71 71 snprintf(control, MAX_CONTROL, "\033[%u;%u;%u;%u;%um", 72 72 a1, a2, a3, a4, a5); 73 state->c ontrol_puts(state->arg, control);73 state->cb->control_puts(state->arg, control); 74 74 } 75 75 … … 80 80 snprintf(control, MAX_CONTROL, "\033[%" PRIun ";%" PRIun "f", 81 81 row + 1, col + 1); 82 state->c ontrol_puts(state->arg, control);82 state->cb->control_puts(state->arg, control); 83 83 } 84 84 … … 147 147 } 148 148 149 vt100_t *vt100_create(void *arg, sysarg_t cols, sysarg_t rows, 150 vt100_putuchar_t putuchar_fn, vt100_control_puts_t control_puts_fn, 151 vt100_flush_t flush_fn) 149 vt100_t *vt100_create(void *arg, sysarg_t cols, sysarg_t rows, vt100_cb_t *cb) 152 150 { 153 151 vt100_t *state = malloc(sizeof(vt100_t)); … … 155 153 return NULL; 156 154 155 state->cb = cb; 157 156 state->arg = arg; 158 state->putuchar = putuchar_fn;159 state->control_puts = control_puts_fn;160 state->flush = flush_fn;161 157 162 158 state->cols = cols; … … 217 213 { 218 214 if (visible) 219 state->c ontrol_puts(state->arg, "\033[?25h");215 state->cb->control_puts(state->arg, "\033[?25h"); 220 216 else 221 state->c ontrol_puts(state->arg, "\033[?25l");217 state->cb->control_puts(state->arg, "\033[?25l"); 222 218 } 223 219 224 220 void vt100_putuchar(vt100_t *state, char32_t ch) 225 221 { 226 state-> putuchar(state->arg, ch == 0 ? ' ' : ch);222 state->cb->putuchar(state->arg, ch == 0 ? ' ' : ch); 227 223 state->cur_col++; 228 224 … … 235 231 void vt100_flush(vt100_t *state) 236 232 { 237 state-> flush(state->arg);233 state->cb->flush(state->arg); 238 234 } 239 235
Note:
See TracChangeset
for help on using the changeset viewer.