Lines Matching defs:rect
233 void vterm_scroll_rect(VTermRect rect,
237 int (*eraserect)(VTermRect rect, int selective, void *user),
243 if(abs(downward) >= rect.end_row - rect.start_row ||
244 abs(rightward) >= rect.end_col - rect.start_col) {
246 (*eraserect)(rect, 0, user);
251 /* rect: [XXX................]
255 dest.start_col = rect.start_col;
256 dest.end_col = rect.end_col - rightward;
257 src.start_col = rect.start_col + rightward;
258 src.end_col = rect.end_col;
261 /* rect: [................XXX]
266 dest.start_col = rect.start_col + leftward;
267 dest.end_col = rect.end_col;
268 src.start_col = rect.start_col;
269 src.end_col = rect.end_col - leftward;
273 dest.start_row = rect.start_row;
274 dest.end_row = rect.end_row - downward;
275 src.start_row = rect.start_row + downward;
276 src.end_row = rect.end_row;
280 dest.start_row = rect.start_row + upward;
281 dest.end_row = rect.end_row;
282 src.start_row = rect.start_row;
283 src.end_row = rect.end_row - upward;
290 rect.start_row = rect.end_row - downward;
292 rect.end_row = rect.start_row - downward;
295 rect.start_col = rect.end_col - rightward;
297 rect.end_col = rect.start_col - rightward;
299 (*eraserect)(rect, 0, user);