Lines Matching defs:sl
281 struct status_line *sl = &c->status;
284 if (y >= nitems(sl->entries))
286 TAILQ_FOREACH(sr, &sl->entries[y].ranges, entry) {
309 struct status_line *sl = &c->status;
311 if (sl->active == &sl->screen) {
312 sl->active = xmalloc(sizeof *sl->active);
313 screen_init(sl->active, c->tty.sx, status_line_size(c), 0);
315 sl->references++;
322 struct status_line *sl = &c->status;
324 if (--sl->references == 0) {
325 screen_free(sl->active);
326 free(sl->active);
327 sl->active = &sl->screen;
335 struct status_line *sl = &c->status;
338 for (i = 0; i < nitems(sl->entries); i++)
339 TAILQ_INIT(&sl->entries[i].ranges);
341 screen_init(&sl->screen, c->tty.sx, 1, 0);
342 sl->active = &sl->screen;
349 struct status_line *sl = &c->status;
352 for (i = 0; i < nitems(sl->entries); i++) {
353 status_free_ranges(&sl->entries[i].ranges);
354 free((void *)sl->entries[i].expanded);
357 if (event_initialized(&sl->timer))
358 evtimer_del(&sl->timer);
360 if (sl->active != &sl->screen) {
361 screen_free(sl->active);
362 free(sl->active);
364 screen_free(&sl->screen);
371 struct status_line *sl = &c->status;
386 if (sl->active != &sl->screen)
409 if (!grid_cells_equal(&gc, &sl->style)) {
411 memcpy(&sl->style, &gc, sizeof sl->style);
415 if (screen_size_x(&sl->screen) != width ||
416 screen_size_y(&sl->screen) != lines) {
417 screen_resize(&sl->screen, width, lines, 0);
420 screen_write_start(&ctx, &sl->screen);
437 sle = &sl->entries[i];
551 struct status_line *sl = &c->status;
562 memcpy(&old_screen, sl->active, sizeof old_screen);
567 screen_init(sl->active, c->tty.sx, lines, 0);
581 screen_write_start(&ctx, sl->active);
582 screen_write_fast_copy(&ctx, &sl->screen, 0, 0, c->tty.sx, lines);
593 if (grid_compare(sl->active->grid, old_screen.grid) == 0) {
784 struct status_line *sl = &c->status;
795 memcpy(&old_screen, sl->active, sizeof old_screen);
800 screen_init(sl->active, c->tty.sx, lines, 0);
803 sl->active->default_ccolour = n;
805 screen_set_cursor_style(n, &sl->active->default_cstyle,
806 &sl->active->default_mode);
823 screen_write_start(&ctx, sl->active);
824 screen_write_fast_copy(&ctx, &sl->screen, 0, 0, c->tty.sx, lines);
868 if (grid_compare(sl->active->grid, old_screen.grid) == 0) {