X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Ftab.c;h=5bde1b7c418c57d05bdbb78d42dae37ec32e09ef;hb=f3eba902a0deb8e3ce93383de255f7e0d39921b5;hp=7ce860f14e09c1e357eb11bafce1d3dba1d766b9;hpb=81579d9e9f994fb2908f50af41c3eb033d216e58;p=pspp diff --git a/src/output/tab.c b/src/output/tab.c index 7ce860f14e..5bde1b7c41 100644 --- a/src/output/tab.c +++ b/src/output/tab.c @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 1997-9, 2000, 2006, 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-9, 2000, 2006, 2009, 2010, 2011, 2013 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 @@ -24,10 +24,10 @@ #include #include "data/data-out.h" -#include "data/dictionary.h" #include "data/format.h" #include "data/settings.h" #include "data/value.h" +#include "data/variable.h" #include "libpspp/assertion.h" #include "libpspp/compiler.h" #include "libpspp/i18n.h" @@ -38,7 +38,6 @@ #include "output/table-provider.h" #include "output/text-item.h" -#include "gl/error.h" #include "gl/minmax.h" #include "gl/xalloc.h" @@ -360,7 +359,7 @@ tab_box (struct tab_table *t, int f_h, int f_v, int i_h, int i_v, from V, displayed with format spec F. */ void tab_value (struct tab_table *table, int c, int r, unsigned char opt, - const union value *v, const struct dictionary *dict, + const union value *v, const struct variable *var, const struct fmt_spec *f) { char *contents; @@ -379,7 +378,9 @@ tab_value (struct tab_table *table, int c, int r, unsigned char opt, } #endif - contents = data_out_pool (v, dict_get_encoding (dict), f, table->container); + contents = data_out_stretchy (v, var_get_encoding (var), + f != NULL ? f : var_get_print_format (var), + table->container); table->cc[c + r * table->cf] = contents; table->ct[c + r * table->cf] = opt; @@ -417,7 +418,7 @@ tab_fixed (struct tab_table *table, int c, int r, unsigned char opt, #endif double_value.f = val; - s = data_out_pool (&double_value, C_ENCODING, &f, table->container); + s = data_out_stretchy (&double_value, C_ENCODING, &f, table->container); table->cc[c + r * table->cf] = s + strspn (s, " "); table->ct[c + r * table->cf] = opt; @@ -459,7 +460,7 @@ tab_double (struct tab_table *table, int c, int r, unsigned char opt, #endif double_value.f = val; - s = data_out_pool (&double_value, C_ENCODING, fmt, table->container); + s = data_out_stretchy (&double_value, C_ENCODING, fmt, table->container); table->cc[c + r * table->cf] = s + strspn (s, " "); table->ct[c + r * table->cf] = opt; } @@ -765,6 +766,6 @@ static const struct table_class tab_table_class = struct tab_table * tab_cast (const struct table *table) { - assert (table->class == &tab_table_class); + assert (table->klass == &tab_table_class); return UP_CAST (table, struct tab_table, table); }