Lines Matching full:width
114 * used for the actual width calculations.
127 size_t ewidth, min1, min2, wanted, width, xwidth;
161 /* Handle explicit width specifications. */
164 dp->layout->width == 0 &&
167 dp->layout->width =
169 if (col->width < dp->layout->width)
170 col->width = dp->layout->width;
177 * Calculate an automatic width.
181 width = tblcalc_data(tbl,
185 dp->layout->width ? dp->layout->width :
194 * recording the minimum width for each group.
204 g->wanted = width;
208 } else if ((*gp)->wanted < width)
209 (*gp)->wanted = width;
214 * The minimum width of columns explicitly specified
222 if (col->width < 1)
223 col->width = 1;
226 * Column spacings are needed for span width
243 width = tbl->cols[icol].width;
245 width += tbl->cols[icol].spacing;
246 if (g->wanted <= width) {
250 g->wanted -= width;
271 colwidth[icol] = tbl->cols[icol].width;
274 * Find the smallest and second smallest column width
280 width = colwidth[icol];
281 if (min1 > width) {
283 min1 = width;
284 } else if (min1 < width && min2 > width)
285 min2 = width;
289 * Find the minimum wanted width
291 * and mark the columns wanting that width.
302 width = min1 + (g->wanted - 1) / necol + 1;
303 if (width > min2)
304 width = min2;
305 if (wanted > width)
306 wanted = width;
318 tbl->cols[icol].width += g->wanted;
322 tbl->cols[icol].width = wanted;
337 * Find maximum width of the columns to equalize.
338 * Find total width of the columns *not* to maximize.
345 if (col->width > col->nwidth)
346 col->decimal += (col->width - col->nwidth) / 2;
349 if (ewidth < col->width)
350 ewidth = col->width;
355 xwidth += col->width;
360 * Update total width of the columns not to maximize.
368 if (col->width == ewidth)
371 xwidth += ewidth - col->width;
372 col->width = ewidth;
378 * available width, deducting 3n margins between columns.
379 * Distribute the available width evenly.
391 * Emulate a bug in GNU tbl width calculation that
410 col->width = (double)xwidth * ++necol / nxcol
413 col->width--;
414 ewidth += col->width;
431 if (col != NULL && col->width < sz)
432 col->width = sz;
480 if (col != NULL && col->width < msz)
481 col->width = msz;
522 if (col != NULL && col->width < totsz)
523 col->width = totsz;
527 /* Measure the width of the integer part. */
550 /* Update the maximum total width seen so far. */
554 if (col->nwidth > col->width)
555 col->width = col->nwidth;