X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Ftable.h;h=e138361343ba3846fe6de8ad1b63de59d3f85bc0;hb=44c2b035a7526fdf366271de915fc774df302f96;hp=829410edfd3db644930a18233f9a3a939a8413c9;hpb=537fdeb3702c011e05d7826a8d556a7beeba2605;p=pspp-builds.git diff --git a/src/output/table.h b/src/output/table.h index 829410ed..e1383613 100644 --- a/src/output/table.h +++ b/src/output/table.h @@ -1,5 +1,5 @@ /* 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 @@ -67,7 +67,8 @@ struct tab_joined_cell 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 @@ -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. */ + void *dim_aux; /* Auxiliary data for dim function. */ /* 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); -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); @@ -152,9 +154,11 @@ enum /* Cells. */ struct fmt_spec; +struct dictionary; 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);