Lines Matching defs:vt

38   VTerm *vt = (*funcs->malloc)(sizeof(VTerm), allocdata);
40 vt->allocator = funcs;
41 vt->allocdata = allocdata;
43 vt->rows = rows;
44 vt->cols = cols;
46 vt->parser_state = NORMAL;
48 vt->strbuffer_len = 64;
49 vt->strbuffer_cur = 0;
50 vt->strbuffer = vterm_allocator_malloc(vt, vt->strbuffer_len);
52 vt->outbuffer_len = 64;
53 vt->outbuffer_cur = 0;
54 vt->outbuffer = vterm_allocator_malloc(vt, vt->outbuffer_len);
56 return vt;
59 void vterm_free(VTerm *vt)
61 if(vt->screen)
62 vterm_screen_free(vt->screen);
64 if(vt->state)
65 vterm_state_free(vt->state);
67 vterm_allocator_free(vt, vt->strbuffer);
68 vterm_allocator_free(vt, vt->outbuffer);
70 vterm_allocator_free(vt, vt);
73 void *vterm_allocator_malloc(VTerm *vt, size_t size)
75 return (*vt->allocator->malloc)(size, vt->allocdata);
78 void vterm_allocator_free(VTerm *vt, void *ptr)
80 (*vt->allocator->free)(ptr, vt->allocdata);
83 void vterm_get_size(const VTerm *vt, int *rowsp, int *colsp)
86 *rowsp = vt->rows;
88 *colsp = vt->cols;
91 void vterm_set_size(VTerm *vt, int rows, int cols)
93 vt->rows = rows;
94 vt->cols = cols;
96 if(vt->parser_callbacks && vt->parser_callbacks->resize)
97 (*vt->parser_callbacks->resize)(rows, cols, vt->cbdata);
100 void vterm_set_parser_callbacks(VTerm *vt, const VTermParserCallbacks *callbacks, void *user)
102 vt->parser_callbacks = callbacks;
103 vt->cbdata = user;
106 void vterm_parser_set_utf8(VTerm *vt, int is_utf8)
108 vt->mode.utf8 = is_utf8;
111 void vterm_push_output_bytes(VTerm *vt, const char *bytes, size_t len)
113 if(len > vt->outbuffer_len - vt->outbuffer_cur) {
115 len = vt->outbuffer_len - vt->outbuffer_cur;
118 memcpy(vt->outbuffer + vt->outbuffer_cur, bytes, len);
119 vt->outbuffer_cur += len;
122 void vterm_push_output_vsprintf(VTerm *vt, const char *format, va_list args)
124 int written = vsnprintf(vt->outbuffer + vt->outbuffer_cur,
125 vt->outbuffer_len - vt->outbuffer_cur,
127 vt->outbuffer_cur += written;
130 void vterm_push_output_sprintf(VTerm *vt, const char *format, ...)
134 vterm_push_output_vsprintf(vt, format, args);
138 void vterm_push_output_sprintf_ctrl(VTerm *vt, unsigned char ctrl, const char *fmt, ...)
140 if(ctrl >= 0x80 && !vt->mode.ctrl8bit)
141 vterm_push_output_sprintf(vt, "\e%c", ctrl - 0x40);
143 vterm_push_output_sprintf(vt, "%c", ctrl);
147 vterm_push_output_vsprintf(vt, fmt, args);
151 void vterm_push_output_sprintf_dcs(VTerm *vt, const char *fmt, ...)
153 if(!vt->mode.ctrl8bit)
154 vterm_push_output_sprintf(vt, "\e%c", C1_DCS - 0x40);
156 vterm_push_output_sprintf(vt, "%c", C1_DCS);
160 vterm_push_output_vsprintf(vt, fmt, args);
163 vterm_push_output_sprintf_ctrl(vt, C1_ST, "");
166 size_t vterm_output_bufferlen(VTerm *vt)
168 return vterm_output_get_buffer_current(vt);
171 size_t vterm_output_get_buffer_size(const VTerm *vt)
173 return vt->outbuffer_len;
176 size_t vterm_output_get_buffer_current(const VTerm *vt)
178 return vt->outbuffer_cur;
181 size_t vterm_output_get_buffer_remaining(const VTerm *vt)
183 return vt->outbuffer_len - vt->outbuffer_cur;
186 size_t vterm_output_bufferread(VTerm *vt, char *buffer, size_t len)
188 if(len > vt->outbuffer_cur)
189 len = vt->outbuffer_cur;
191 memcpy(buffer, vt->outbuffer, len);
193 if(len < vt->outbuffer_cur)
194 memmove(vt->outbuffer, vt->outbuffer + len, vt->outbuffer_cur - len);
196 vt->outbuffer_cur -= len;