version 1.211, 2019/03/12 11:16:50 |
version 1.212, 2019/03/12 20:02:47 |
|
|
screen_write_start(&ctx, NULL, &data->screen); |
screen_write_start(&ctx, NULL, &data->screen); |
for (i = 0; i < screen_size_y(&data->screen); i++) |
for (i = 0; i < screen_size_y(&data->screen); i++) |
window_copy_write_line(wme, &ctx, i); |
window_copy_write_line(wme, &ctx, i); |
screen_write_cursormove(&ctx, data->cx, data->cy); |
screen_write_cursormove(&ctx, data->cx, data->cy, 0); |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
|
|
return (&data->screen); |
return (&data->screen); |
|
|
} |
} |
if (size > screen_size_x(s)) |
if (size > screen_size_x(s)) |
size = screen_size_x(s); |
size = screen_size_x(s); |
screen_write_cursormove(ctx, screen_size_x(s) - size, 0); |
screen_write_cursormove(ctx, screen_size_x(s) - size, 0, 0); |
screen_write_puts(ctx, &gc, "%s", hdr); |
screen_write_puts(ctx, &gc, "%s", hdr); |
} else |
} else |
size = 0; |
size = 0; |
|
|
if (size < screen_size_x(s)) { |
if (size < screen_size_x(s)) { |
screen_write_cursormove(ctx, 0, py); |
screen_write_cursormove(ctx, 0, py, 0); |
screen_write_copy(ctx, data->backing, 0, |
screen_write_copy(ctx, data->backing, 0, |
(screen_hsize(data->backing) - data->oy) + py, |
(screen_hsize(data->backing) - data->oy) + py, |
screen_size_x(s) - size, 1, data->searchmark, &gc); |
screen_size_x(s) - size, 1, data->searchmark, &gc); |
|
|
|
|
if (py == data->cy && data->cx == screen_size_x(s)) { |
if (py == data->cy && data->cx == screen_size_x(s)) { |
memcpy(&gc, &grid_default_cell, sizeof gc); |
memcpy(&gc, &grid_default_cell, sizeof gc); |
screen_write_cursormove(ctx, screen_size_x(s) - 1, py); |
screen_write_cursormove(ctx, screen_size_x(s) - 1, py, 0); |
screen_write_putc(ctx, &gc, '$'); |
screen_write_putc(ctx, &gc, '$'); |
} |
} |
} |
} |
|
|
screen_write_start(&ctx, wp, NULL); |
screen_write_start(&ctx, wp, NULL); |
for (i = py; i < py + ny; i++) |
for (i = py; i < py + ny; i++) |
window_copy_write_line(wme, &ctx, i); |
window_copy_write_line(wme, &ctx, i); |
screen_write_cursormove(&ctx, data->cx, data->cy); |
screen_write_cursormove(&ctx, data->cx, data->cy, 0); |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
} |
} |
|
|
|
|
window_copy_redraw_lines(wme, data->cy, 1); |
window_copy_redraw_lines(wme, data->cy, 1); |
else { |
else { |
screen_write_start(&ctx, wp, NULL); |
screen_write_start(&ctx, wp, NULL); |
screen_write_cursormove(&ctx, data->cx, data->cy); |
screen_write_cursormove(&ctx, data->cx, data->cy, 0); |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
} |
} |
} |
} |
|
|
window_copy_update_selection(wme, 0); |
window_copy_update_selection(wme, 0); |
|
|
screen_write_start(&ctx, wp, NULL); |
screen_write_start(&ctx, wp, NULL); |
screen_write_cursormove(&ctx, 0, 0); |
screen_write_cursormove(&ctx, 0, 0, 0); |
screen_write_deleteline(&ctx, ny, 8); |
screen_write_deleteline(&ctx, ny, 8); |
window_copy_write_lines(wme, &ctx, screen_size_y(s) - ny, ny); |
window_copy_write_lines(wme, &ctx, screen_size_y(s) - ny, ny); |
window_copy_write_line(wme, &ctx, 0); |
window_copy_write_line(wme, &ctx, 0); |
|
|
window_copy_write_line(wme, &ctx, screen_size_y(s) - 2); |
window_copy_write_line(wme, &ctx, screen_size_y(s) - 2); |
if (s->sel != NULL && screen_size_y(s) > ny) |
if (s->sel != NULL && screen_size_y(s) > ny) |
window_copy_write_line(wme, &ctx, screen_size_y(s) - ny - 1); |
window_copy_write_line(wme, &ctx, screen_size_y(s) - ny - 1); |
screen_write_cursormove(&ctx, data->cx, data->cy); |
screen_write_cursormove(&ctx, data->cx, data->cy, 0); |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
} |
} |
|
|
|
|
window_copy_update_selection(wme, 0); |
window_copy_update_selection(wme, 0); |
|
|
screen_write_start(&ctx, wp, NULL); |
screen_write_start(&ctx, wp, NULL); |
screen_write_cursormove(&ctx, 0, 0); |
screen_write_cursormove(&ctx, 0, 0, 0); |
screen_write_insertline(&ctx, ny, 8); |
screen_write_insertline(&ctx, ny, 8); |
window_copy_write_lines(wme, &ctx, 0, ny); |
window_copy_write_lines(wme, &ctx, 0, ny); |
if (s->sel != NULL && screen_size_y(s) > ny) |
if (s->sel != NULL && screen_size_y(s) > ny) |
window_copy_write_line(wme, &ctx, ny); |
window_copy_write_line(wme, &ctx, ny); |
else if (ny == 1) /* nuke position */ |
else if (ny == 1) /* nuke position */ |
window_copy_write_line(wme, &ctx, 1); |
window_copy_write_line(wme, &ctx, 1); |
screen_write_cursormove(&ctx, data->cx, data->cy); |
screen_write_cursormove(&ctx, data->cx, data->cy, 0); |
screen_write_stop(&ctx); |
screen_write_stop(&ctx); |
} |
} |
|
|