X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fvar-display.c;h=086b5d618421c96e91f1f53d0664050e59eb37fa;hb=5dbf5abcbed01f04422d4dead1c0ae0bb7efde4f;hp=50e0df4bbc7ec360869195c387ce9c1deadda119;hpb=dd5535725f86158e55b3fc263c17058005b0c0a5;p=pspp diff --git a/src/ui/gui/var-display.c b/src/ui/gui/var-display.c index 50e0df4bbc..086b5d6184 100644 --- a/src/ui/gui/var-display.c +++ b/src/ui/gui/var-display.c @@ -1,3 +1,21 @@ +/* +PSPP - a program for statistical analysis. +Copyright (C) 2017 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 +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + #include #include "var-display.h" @@ -17,24 +35,12 @@ static const gchar none[] = N_("None"); gchar * -measure_to_string (const struct variable *var, GError **err) -{ - const gint measure = var_get_measure (var); - - g_assert (measure < n_MEASURES); - return g_locale_to_utf8 (gettext (measures[measure]), - -1, 0, 0, err); -} - - -gchar * -missing_values_to_string (const PsppireDict *dict, const struct variable *pv, GError **err) +missing_values_to_string (const struct variable *pv, GError **err) { - const struct fmt_spec *fmt = var_get_print_format (pv); gchar *s; const struct missing_values *miss = var_get_missing_values (pv); if ( mv_is_empty (miss)) - return g_locale_to_utf8 (gettext (none), -1, 0, 0, err); + return xstrdup (gettext (none)); else { if ( ! mv_has_range (miss)) @@ -45,17 +51,14 @@ missing_values_to_string (const PsppireDict *dict, const struct variable *pv, GE gint i; for (i = 0 ; i < n; ++i ) { - union value v; - mv_get_value (miss, &v, i); - mv[i] = value_to_text (v, *fmt); + mv[i] = value_to_text (*mv_get_value (miss, i), pv); if ( i > 0 ) g_string_append (gstr, ", "); g_string_append (gstr, mv[i]); g_free (mv[i]); } - s = recode_string (UTF8, psppire_dict_encoding (dict), - gstr->str, gstr->len); - g_string_free (gstr, TRUE); + s = gstr->str; + g_string_free (gstr, FALSE); } else { @@ -64,8 +67,8 @@ missing_values_to_string (const PsppireDict *dict, const struct variable *pv, GE union value low, high; mv_get_range (miss, &low.f, &high.f); - l = value_to_text (low, *fmt); - h = value_to_text (high, *fmt); + l = value_to_text (low, pv); + h = value_to_text (high, pv); g_string_printf (gstr, "%s - %s", l, h); g_free (l); @@ -73,19 +76,16 @@ missing_values_to_string (const PsppireDict *dict, const struct variable *pv, GE if ( mv_has_value (miss)) { - gchar *ss = 0; - union value v; - mv_get_value (miss, &v, 0); + gchar *ss = NULL; - ss = value_to_text (v, *fmt); + ss = value_to_text (*mv_get_value (miss, 0), pv); g_string_append (gstr, ", "); g_string_append (gstr, ss); free (ss); } - s = recode_string (UTF8, psppire_dict_encoding (dict), - gstr->str, gstr->len); - g_string_free (gstr, TRUE); + s = gstr->str; + g_string_free (gstr, FALSE); } return s;