char *title; /* Table title. */
unsigned flags; /* SOMF_*. */
int nc, nr; /* Number of columns, rows. */
char *title; /* Table title. */
unsigned flags; /* SOMF_*. */
int nc, nr; /* Number of columns, rows. */
unsigned char *ct; /* Cell types; unsigned char[nr][nc]. */
unsigned char *rh; /* Horiz rules; unsigned char[nr+1][nc]. */
unsigned char *rv; /* Vert rules; unsigned char[nr][nc+1]. */
unsigned char *ct; /* Cell types; unsigned char[nr][nc]. */
unsigned char *rh; /* Horiz rules; unsigned char[nr+1][nc]. */
unsigned char *rv; /* Vert rules; unsigned char[nr][nc+1]. */
/* Tables. */
struct tab_table *tab_create (int nc, int nr, int reallocable);
void tab_destroy (struct tab_table *);
/* Tables. */
struct tab_table *tab_create (int nc, int nr, int reallocable);
void tab_destroy (struct tab_table *);
void tab_resize (struct tab_table *, int nc, int nr);
void tab_realloc (struct tab_table *, int nc, int nr);
void tab_headers (struct tab_table *, int l, int r, int t, int b);
void tab_resize (struct tab_table *, int nc, int nr);
void tab_realloc (struct tab_table *, int nc, int nr);
void tab_headers (struct tab_table *, int l, int r, int t, int b);
void tab_title (struct tab_table *, const char *, ...)
PRINTF_FORMAT (2, 3);
void tab_flags (struct tab_table *, unsigned);
void tab_title (struct tab_table *, const char *, ...)
PRINTF_FORMAT (2, 3);
void tab_flags (struct tab_table *, unsigned);
tab_dim_func tab_natural_dimensions;
int tab_natural_width (const struct tab_rendering *, int c);
int tab_natural_height (const struct tab_rendering *, int r);
tab_dim_func tab_natural_dimensions;
int tab_natural_width (const struct tab_rendering *, int c);
int tab_natural_height (const struct tab_rendering *, int r);
-void tab_dim (struct tab_table *, tab_dim_func *, void *aux);
+void tab_dim (struct tab_table *,
+ tab_dim_func *, tab_dim_free_func *, void *aux);
/* Rules. */
void tab_hline (struct tab_table *, int style, int x1, int x2, int y);
/* Rules. */
void tab_hline (struct tab_table *, int style, int x1, int x2, int y);
TAT_TITLE = 0x0200 | TAB_EMPH, /* Title attributes. */
TAT_NOWRAP = 0x0800 /* No text wrap (tab_output_text() only). */
};
TAT_TITLE = 0x0200 | TAB_EMPH, /* Title attributes. */
TAT_NOWRAP = 0x0800 /* No text wrap (tab_output_text() only). */
};
void tab_double (struct tab_table *, int c, int r, unsigned char opt,
double v, const struct fmt_spec *);
void tab_double (struct tab_table *, int c, int r, unsigned char opt,
double v, const struct fmt_spec *);
-void tab_text (struct tab_table *, int c, int r, unsigned opt,
- const char *, ...)
+void tab_text (struct tab_table *, int c, int r, unsigned opt, const char *);
+void tab_text_format (struct tab_table *, int c, int r, unsigned opt,
+ const char *, ...)
void tab_joint_text (struct tab_table *, int x1, int y1, int x2, int y2,
void tab_joint_text (struct tab_table *, int x1, int y1, int x2, int y2,
- unsigned opt, const char *, ...)
+ unsigned opt, const char *);
+void tab_joint_text_format (struct tab_table *, int x1, int y1, int x2, int y2,
+ unsigned opt, const char *, ...)
-void tab_output_text (int options, const char *string, ...)
+void tab_output_text (int options, const char *string);
+void tab_output_text_format (int options, const char *, ...)