Lines Matching refs:state
96 static void setpenattr(VTermState *state, VTermAttr attr, VTermValueType type, VTermValue *val) in setpenattr() argument
105 if(state->callbacks && state->callbacks->setpenattr) in setpenattr()
106 (*state->callbacks->setpenattr)(attr, val, state->cbdata); in setpenattr()
109 static void setpenattr_bool(VTermState *state, VTermAttr attr, int boolean) in setpenattr_bool() argument
112 setpenattr(state, attr, VTERM_VALUETYPE_BOOL, &val); in setpenattr_bool()
115 static void setpenattr_int(VTermState *state, VTermAttr attr, int number) in setpenattr_int() argument
118 setpenattr(state, attr, VTERM_VALUETYPE_INT, &val); in setpenattr_int()
121 static void setpenattr_col(VTermState *state, VTermAttr attr, VTermColor color) in setpenattr_col() argument
124 setpenattr(state, attr, VTERM_VALUETYPE_COLOR, &val); in setpenattr_col()
127 static void set_pen_col_ansi(VTermState *state, VTermAttr attr, long col) in set_pen_col_ansi() argument
129 VTermColor *colp = (attr == VTERM_ATTR_BACKGROUND) ? &state->pen.bg : &state->pen.fg; in set_pen_col_ansi()
133 setpenattr_col(state, attr, *colp); in set_pen_col_ansi()
136 void vterm_state_resetpen(VTermState *state) in vterm_state_resetpen() argument
138 state->pen.bold = 0; setpenattr_bool(state, VTERM_ATTR_BOLD, 0); in vterm_state_resetpen()
139 state->pen.underline = 0; setpenattr_int( state, VTERM_ATTR_UNDERLINE, 0); in vterm_state_resetpen()
140 state->pen.italic = 0; setpenattr_bool(state, VTERM_ATTR_ITALIC, 0); in vterm_state_resetpen()
141 state->pen.blink = 0; setpenattr_bool(state, VTERM_ATTR_BLINK, 0); in vterm_state_resetpen()
142 state->pen.reverse = 0; setpenattr_bool(state, VTERM_ATTR_REVERSE, 0); in vterm_state_resetpen()
143 state->pen.strike = 0; setpenattr_bool(state, VTERM_ATTR_STRIKE, 0); in vterm_state_resetpen()
144 state->pen.font = 0; setpenattr_int( state, VTERM_ATTR_FONT, 0); in vterm_state_resetpen()
146 state->fg_index = -1; in vterm_state_resetpen()
147 state->bg_index = -1; in vterm_state_resetpen()
148 …state->pen.fg = state->default_fg; setpenattr_col(state, VTERM_ATTR_FOREGROUND, state->default_fg… in vterm_state_resetpen()
149 …state->pen.bg = state->default_bg; setpenattr_col(state, VTERM_ATTR_BACKGROUND, state->default_bg… in vterm_state_resetpen()
152 void vterm_state_savepen(VTermState *state, int save) in vterm_state_savepen() argument
155 state->saved.pen = state->pen; in vterm_state_savepen()
158 state->pen = state->saved.pen; in vterm_state_savepen()
160 setpenattr_bool(state, VTERM_ATTR_BOLD, state->pen.bold); in vterm_state_savepen()
161 setpenattr_int( state, VTERM_ATTR_UNDERLINE, state->pen.underline); in vterm_state_savepen()
162 setpenattr_bool(state, VTERM_ATTR_ITALIC, state->pen.italic); in vterm_state_savepen()
163 setpenattr_bool(state, VTERM_ATTR_BLINK, state->pen.blink); in vterm_state_savepen()
164 setpenattr_bool(state, VTERM_ATTR_REVERSE, state->pen.reverse); in vterm_state_savepen()
165 setpenattr_bool(state, VTERM_ATTR_STRIKE, state->pen.strike); in vterm_state_savepen()
166 setpenattr_int( state, VTERM_ATTR_FONT, state->pen.font); in vterm_state_savepen()
167 setpenattr_col( state, VTERM_ATTR_FOREGROUND, state->pen.fg); in vterm_state_savepen()
168 setpenattr_col( state, VTERM_ATTR_BACKGROUND, state->pen.bg); in vterm_state_savepen()
172 void vterm_state_get_default_colors(const VTermState *state, VTermColor *default_fg, VTermColor *de… in vterm_state_get_default_colors() argument
174 *default_fg = state->default_fg; in vterm_state_get_default_colors()
175 *default_bg = state->default_bg; in vterm_state_get_default_colors()
178 void vterm_state_get_palette_color(const VTermState *state, int index, VTermColor *col) in vterm_state_get_palette_color() argument
183 void vterm_state_set_default_colors(VTermState *state, const VTermColor *default_fg, const VTermCol… in vterm_state_set_default_colors() argument
185 state->default_fg = *default_fg; in vterm_state_set_default_colors()
186 state->default_bg = *default_bg; in vterm_state_set_default_colors()
189 void vterm_state_set_bold_highbright(VTermState *state, int bold_is_highbright) in vterm_state_set_bold_highbright() argument
191 state->bold_is_highbright = bold_is_highbright; in vterm_state_set_bold_highbright()
194 void vterm_state_setpen(VTermState *state, const long args[], int argcount) in vterm_state_setpen() argument
210 vterm_state_resetpen(state); in vterm_state_setpen()
214 state->pen.bold = 1; in vterm_state_setpen()
215 setpenattr_bool(state, VTERM_ATTR_BOLD, 1); in vterm_state_setpen()
216 if(state->fg_index > -1 && state->fg_index < 8 && state->bold_is_highbright) in vterm_state_setpen()
217 set_pen_col_ansi(state, VTERM_ATTR_FOREGROUND, state->fg_index + (state->pen.bold ? 8 : 0)); in vterm_state_setpen()
221 state->pen.italic = 1; in vterm_state_setpen()
222 setpenattr_bool(state, VTERM_ATTR_ITALIC, 1); in vterm_state_setpen()
226 state->pen.underline = 1; in vterm_state_setpen()
227 setpenattr_int(state, VTERM_ATTR_UNDERLINE, 1); in vterm_state_setpen()
231 state->pen.blink = 1; in vterm_state_setpen()
232 setpenattr_bool(state, VTERM_ATTR_BLINK, 1); in vterm_state_setpen()
236 state->pen.reverse = 1; in vterm_state_setpen()
237 setpenattr_bool(state, VTERM_ATTR_REVERSE, 1); in vterm_state_setpen()
241 state->pen.strike = 1; in vterm_state_setpen()
242 setpenattr_bool(state, VTERM_ATTR_STRIKE, 1); in vterm_state_setpen()
247 state->pen.font = CSI_ARG(args[argi]) - 10; in vterm_state_setpen()
248 setpenattr_int(state, VTERM_ATTR_FONT, state->pen.font); in vterm_state_setpen()
252 state->pen.underline = 2; in vterm_state_setpen()
253 setpenattr_int(state, VTERM_ATTR_UNDERLINE, 2); in vterm_state_setpen()
257 state->pen.bold = 0; in vterm_state_setpen()
258 setpenattr_bool(state, VTERM_ATTR_BOLD, 0); in vterm_state_setpen()
262 state->pen.italic = 0; in vterm_state_setpen()
263 setpenattr_bool(state, VTERM_ATTR_ITALIC, 0); in vterm_state_setpen()
267 state->pen.underline = 0; in vterm_state_setpen()
268 setpenattr_int(state, VTERM_ATTR_UNDERLINE, 0); in vterm_state_setpen()
272 state->pen.blink = 0; in vterm_state_setpen()
273 setpenattr_bool(state, VTERM_ATTR_BLINK, 0); in vterm_state_setpen()
277 state->pen.reverse = 0; in vterm_state_setpen()
278 setpenattr_bool(state, VTERM_ATTR_REVERSE, 0); in vterm_state_setpen()
282 state->pen.strike = 0; in vterm_state_setpen()
283 setpenattr_bool(state, VTERM_ATTR_STRIKE, 0); in vterm_state_setpen()
289 state->fg_index = value; in vterm_state_setpen()
290 if(state->pen.bold && state->bold_is_highbright) in vterm_state_setpen()
292 set_pen_col_ansi(state, VTERM_ATTR_FOREGROUND, value); in vterm_state_setpen()
296 state->fg_index = -1; in vterm_state_setpen()
299 …okup_colour(CSI_ARG(args[argi+1]), args+argi+2, argcount-argi-2, &state->pen.fg, &state->fg_index); in vterm_state_setpen()
300 setpenattr_col(state, VTERM_ATTR_FOREGROUND, state->pen.fg); in vterm_state_setpen()
304 state->fg_index = -1; in vterm_state_setpen()
305 state->pen.fg = state->default_fg; in vterm_state_setpen()
306 setpenattr_col(state, VTERM_ATTR_FOREGROUND, state->pen.fg); in vterm_state_setpen()
312 state->bg_index = value; in vterm_state_setpen()
313 set_pen_col_ansi(state, VTERM_ATTR_BACKGROUND, value); in vterm_state_setpen()
317 state->bg_index = -1; in vterm_state_setpen()
320 …okup_colour(CSI_ARG(args[argi+1]), args+argi+2, argcount-argi-2, &state->pen.bg, &state->bg_index); in vterm_state_setpen()
321 setpenattr_col(state, VTERM_ATTR_BACKGROUND, state->pen.bg); in vterm_state_setpen()
325 state->bg_index = -1; in vterm_state_setpen()
326 state->pen.bg = state->default_bg; in vterm_state_setpen()
327 setpenattr_col(state, VTERM_ATTR_BACKGROUND, state->pen.bg); in vterm_state_setpen()
333 state->fg_index = value; in vterm_state_setpen()
334 set_pen_col_ansi(state, VTERM_ATTR_FOREGROUND, value); in vterm_state_setpen()
340 state->bg_index = value; in vterm_state_setpen()
341 set_pen_col_ansi(state, VTERM_ATTR_BACKGROUND, value); in vterm_state_setpen()
356 int vterm_state_getpen(VTermState *state, long args[], int argcount) in vterm_state_getpen() argument
360 if(state->pen.bold) in vterm_state_getpen()
363 if(state->pen.italic) in vterm_state_getpen()
366 if(state->pen.underline == 1) in vterm_state_getpen()
369 if(state->pen.blink) in vterm_state_getpen()
372 if(state->pen.reverse) in vterm_state_getpen()
375 if(state->pen.strike) in vterm_state_getpen()
378 if(state->pen.font) in vterm_state_getpen()
379 args[argi++] = 10 + state->pen.font; in vterm_state_getpen()
381 if(state->pen.underline == 2) in vterm_state_getpen()
384 if(state->fg_index >= 0 && state->fg_index < 8) in vterm_state_getpen()
385 args[argi++] = 30 + state->fg_index; in vterm_state_getpen()
386 else if(state->fg_index >= 8 && state->fg_index < 16) in vterm_state_getpen()
387 args[argi++] = 90 + state->fg_index - 8; in vterm_state_getpen()
388 else if(state->fg_index >= 16 && state->fg_index < 256) { in vterm_state_getpen()
391 args[argi++] = state->fg_index; in vterm_state_getpen()
394 if(state->bg_index >= 0 && state->bg_index < 8) in vterm_state_getpen()
395 args[argi++] = 40 + state->bg_index; in vterm_state_getpen()
396 else if(state->bg_index >= 8 && state->bg_index < 16) in vterm_state_getpen()
397 args[argi++] = 100 + state->bg_index - 8; in vterm_state_getpen()
398 else if(state->bg_index >= 16 && state->bg_index < 256) { in vterm_state_getpen()
401 args[argi++] = state->bg_index; in vterm_state_getpen()
407 int vterm_state_get_penattr(const VTermState *state, VTermAttr attr, VTermValue *val) in vterm_state_get_penattr() argument
411 val->boolean = state->pen.bold; in vterm_state_get_penattr()
415 val->number = state->pen.underline; in vterm_state_get_penattr()
419 val->boolean = state->pen.italic; in vterm_state_get_penattr()
423 val->boolean = state->pen.blink; in vterm_state_get_penattr()
427 val->boolean = state->pen.reverse; in vterm_state_get_penattr()
431 val->boolean = state->pen.strike; in vterm_state_get_penattr()
435 val->number = state->pen.font; in vterm_state_get_penattr()
439 val->color = state->pen.fg; in vterm_state_get_penattr()
443 val->color = state->pen.bg; in vterm_state_get_penattr()