projects
/
pspp-builds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge commit 'origin/stable'
[pspp-builds.git]
/
src
/
output
/
table.h
diff --git
a/src/output/table.h
b/src/output/table.h
index 829410edfd3db644930a18233f9a3a939a8413c9..1748c24c855e71ec8c0212dac76d00662db76f67 100644
(file)
--- a/
src/output/table.h
+++ b/
src/output/table.h
@@
-1,5
+1,5
@@
/* PSPP - a program for statistical analysis.
/* PSPP - a program for statistical analysis.
- Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1997-9, 2000
, 2009
Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-67,7
+67,8
@@
struct tab_joined_cell
struct outp_driver;
struct tab_table;
struct outp_driver;
struct tab_table;
-typedef void tab_dim_func (struct tab_table *, struct outp_driver *);
+typedef void tab_dim_func (struct tab_table *, struct outp_driver *,
+ void *aux);
/* A table. */
struct tab_table
/* A table. */
struct tab_table
@@
-87,6
+88,7
@@
struct tab_table
unsigned char *rh; /* Horiz rules; unsigned char[nr+1][nc]. */
unsigned char *rv; /* Vert rules; unsigned char[nr][nc+1]. */
tab_dim_func *dim; /* Calculates cell widths and heights. */
unsigned char *rh; /* Horiz rules; unsigned char[nr+1][nc]. */
unsigned char *rv; /* Vert rules; unsigned char[nr][nc+1]. */
tab_dim_func *dim; /* Calculates cell widths and heights. */
+ void *dim_aux; /* Auxiliary data for dim function. */
/* Calculated during output. */
int *w; /* Column widths; [nc]. */
/* Calculated during output. */
int *w; /* Column widths; [nc]. */
@@
-133,7
+135,7
@@
void tab_submit (struct tab_table *);
tab_dim_func tab_natural_dimensions;
int tab_natural_width (struct tab_table *t, struct outp_driver *d, int c);
int tab_natural_height (struct tab_table *t, struct outp_driver *d, int r);
tab_dim_func tab_natural_dimensions;
int tab_natural_width (struct tab_table *t, struct outp_driver *d, int c);
int tab_natural_height (struct tab_table *t, struct outp_driver *d, int r);
-void tab_dim (struct tab_table *, tab_dim_func *);
+void tab_dim (struct tab_table *, tab_dim_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);
@@
-145,16
+147,17
@@
void tab_box (struct tab_table *, int f_h, int f_v, int i_h, int i_v,
enum
{
TAT_NONE = 0, /* No options. */
enum
{
TAT_NONE = 0, /* No options. */
- TAT_PRINTF = 0x0100, /* Format the text string with sprintf. */
TAT_TITLE = 0x0200 | TAB_EMPH, /* Title attributes. */
TAT_NOWRAP = 0x0800 /* No text wrap (tab_output_text() only). */
};
/* Cells. */
struct fmt_spec;
TAT_TITLE = 0x0200 | TAB_EMPH, /* Title attributes. */
TAT_NOWRAP = 0x0800 /* No text wrap (tab_output_text() only). */
};
/* Cells. */
struct fmt_spec;
+struct dictionary;
union value;
void tab_value (struct tab_table *, int c, int r, unsigned char opt,
union value;
void tab_value (struct tab_table *, int c, int r, unsigned char opt,
- const union value *, const struct fmt_spec *);
+ const union value *, const struct dictionary *dict,
+ const struct fmt_spec *);
void tab_fixed (struct tab_table *, int c, int r, unsigned char opt,
double v, int w, int d);
void tab_fixed (struct tab_table *, int c, int r, unsigned char opt,
double v, int w, int d);
@@
-162,11
+165,15
@@
void tab_fixed (struct tab_table *, int c, int r, unsigned char opt,
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 *, ...)
PRINTF_FORMAT (5, 6);
PRINTF_FORMAT (5, 6);
+
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 *, ...)
PRINTF_FORMAT (7, 8);
/* Cell low-level access. */
PRINTF_FORMAT (7, 8);
/* Cell low-level access. */
@@
-183,7
+190,8
@@
void tab_next_row (struct tab_table *);
#define tab_col(TABLE) ((TABLE)->col_ofs)
/* Simple output. */
#define tab_col(TABLE) ((TABLE)->col_ofs)
/* Simple output. */
-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 *, ...)
PRINTF_FORMAT (2, 3);
/* Embedding the command name in the output. */
PRINTF_FORMAT (2, 3);
/* Embedding the command name in the output. */