Lines Matching defs:gl

102 grid_get_extended_cell(struct grid_line *gl, struct grid_cell_entry *gce,
105 u_int at = gl->extdsize + 1;
107 gl->extddata = xreallocarray(gl->extddata, at, sizeof *gl->extddata);
108 gl->extdsize = at;
116 grid_extended_cell(struct grid_line *gl, struct grid_cell_entry *gce,
124 grid_get_extended_cell(gl, gce, flags);
125 else if (gce->offset >= gl->extdsize)
127 gl->flags |= GRID_LINE_EXTENDED;
134 gee = &gl->extddata[gce->offset];
147 grid_compact_line(struct grid_line *gl)
155 if (gl->extdsize == 0)
158 for (px = 0; px < gl->cellsize; px++) {
159 gce = &gl->celldata[px];
165 free(gl->extddata);
166 gl->extddata = NULL;
167 gl->extdsize = 0;
170 new_extddata = xreallocarray(NULL, new_extdsize, sizeof *gl->extddata);
173 for (px = 0; px < gl->cellsize; px++) {
174 gce = &gl->celldata[px];
176 gee = &gl->extddata[gce->offset];
182 free(gl->extddata);
183 gl->extddata = new_extddata;
184 gl->extdsize = new_extdsize;
205 struct grid_line *gl = &gd->linedata[py];
206 struct grid_cell_entry *gce = &gl->celldata[px];
212 grid_get_extended_cell(gl, gce, gce->flags);
213 gee = grid_extended_cell(gl, gce, &grid_cleared_cell);
481 struct grid_line *gl;
484 gl = &gd->linedata[py];
485 if (sx <= gl->cellsize)
495 gl->celldata = xreallocarray(gl->celldata, sx, sizeof *gl->celldata);
496 for (xx = gl->cellsize; xx < sx; xx++)
498 gl->cellsize = sx;
521 grid_get_cell1(struct grid_line *gl, u_int px, struct grid_cell *gc)
523 struct grid_cell_entry *gce = &gl->celldata[px];
527 if (gce->offset >= gl->extdsize)
530 gee = &gl->extddata[gce->offset];
574 struct grid_line *gl;
582 gl = &gd->linedata[py];
583 if (px + 1 > gl->cellused)
584 gl->cellused = px + 1;
586 gce = &gl->celldata[px];
588 grid_extended_cell(gl, gce, gc);
605 struct grid_line *gl;
615 gl = &gd->linedata[py];
616 if (px + slen > gl->cellused)
617 gl->cellused = px + slen;
620 gce = &gl->celldata[px + i];
622 gee = grid_extended_cell(gl, gce, gc);
633 struct grid_line *gl;
650 gl = &gd->linedata[yy];
653 if (sx > gl->cellsize)
654 sx = gl->cellsize;
738 struct grid_line *gl;
746 gl = &gd->linedata[py];
750 memmove(&gl->celldata[dx], &gl->celldata[px],
751 nx * sizeof *gl->celldata);
752 if (dx + nx > gl->cellused)
753 gl->cellused = dx + nx;
1072 const struct grid_line *gl;
1083 gl = grid_peek_line(gd, py);
1085 end = gl->cellsize;
1087 end = gl->cellused;
1089 if (gl == NULL || xx >= end)
1196 grid_reflow_dead(struct grid_line *gl)
1198 memset(gl, 0, sizeof *gl);
1199 gl->flags = GRID_LINE_DEAD;
1206 struct grid_line *gl;
1210 gl = &gd->linedata[gd->sy];
1211 memset(gl, 0, n * (sizeof *gl));
1213 return (gl);
1233 struct grid_line *gl, *from = NULL;
1244 gl = grid_reflow_move(target, &gd->linedata[yy]);
1247 gl = &target->linedata[to];
1249 at = gl->cellused;
1320 gl->flags &= ~GRID_LINE_WRAPPED;
1341 struct grid_line *gl = &gd->linedata[yy], *first;
1344 u_int used = gl->cellused;
1345 int flags = gl->flags;
1348 if (~gl->flags & GRID_LINE_EXTENDED)
1349 lines = 1 + (gl->cellused - 1) / sx;
1354 grid_get_cell1(gl, i, &gc);
1371 grid_get_cell1(gl, i, &gc);
1387 gl->cellsize = gl->cellused = at;
1388 gl->flags |= GRID_LINE_WRAPPED;
1389 memcpy(first, gl, sizeof *first);
1390 grid_reflow_dead(gl);
1409 struct grid_line *gl;
1423 gl = &gd->linedata[yy];
1424 if (gl->flags & GRID_LINE_DEAD)
1433 if (~gl->flags & GRID_LINE_EXTENDED) {
1434 width = gl->cellused;
1440 for (i = 0; i < gl->cellused; i++) {
1441 grid_get_cell1(gl, i, &gc);
1453 grid_reflow_move(target, gl);
1470 if (gl->flags & GRID_LINE_WRAPPED)
1473 grid_reflow_move(target, gl);