X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fvar-display.c;h=7081e9e2c0bde74fc4c9424f729733ba8a74c1c2;hb=82217038368a953179398d9ecc7b80169a1b9ddc;hp=07c7a4736ff08e8537d62182383592fc4aec0ec1;hpb=6234cd81c073b8a08077847d08a22c1715d903ae;p=pspp-builds.git diff --git a/src/ui/gui/var-display.c b/src/ui/gui/var-display.c index 07c7a473..7081e9e2 100644 --- a/src/ui/gui/var-display.c +++ b/src/ui/gui/var-display.c @@ -4,34 +4,17 @@ #include #include #include +#include "psppire-dict.h" #include #define _(msgid) gettext (msgid) #define N_(msgid) msgid #include "helper.h" +#include static const gchar none[] = N_("None"); -gchar * -name_to_string (const struct variable *var, GError **err) -{ - const char *name = var_get_name (var); - g_assert (name); - - return pspp_locale_to_utf8 (name, -1, err); -} - - -gchar * -label_to_string (const struct variable *var, GError **err) -{ - const char *label = var_get_label (var); - - if ( ! label ) return g_strdup (none); - - return pspp_locale_to_utf8 (label, -1, err); -} gchar * measure_to_string (const struct variable *var, GError **err) @@ -45,7 +28,7 @@ measure_to_string (const struct variable *var, GError **err) gchar * -missing_values_to_string (const struct variable *pv, GError **err) +missing_values_to_string (const PsppireDict *dict, const struct variable *pv, GError **err) { const struct fmt_spec *fmt = var_get_print_format (pv); gchar *s; @@ -62,16 +45,14 @@ missing_values_to_string (const struct variable *pv, GError **err) 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), dict, *fmt); if ( i > 0 ) g_string_append (gstr, ", "); g_string_append (gstr, mv[i]); g_free (mv[i]); } - s = pspp_locale_to_utf8 (gstr->str, gstr->len, err); - g_string_free (gstr, TRUE); + s = gstr->str; + g_string_free (gstr, FALSE); } else { @@ -80,8 +61,8 @@ missing_values_to_string (const struct variable *pv, GError **err) 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, dict, *fmt); + h = value_to_text (high, dict,*fmt); g_string_printf (gstr, "%s - %s", l, h); g_free (l); @@ -90,17 +71,15 @@ missing_values_to_string (const struct variable *pv, GError **err) if ( mv_has_value (miss)) { gchar *ss = 0; - union value v; - mv_get_value (miss, &v, 0); - ss = value_to_text (v, *fmt); + ss = value_to_text (*mv_get_value (miss, 0), dict, *fmt); g_string_append (gstr, ", "); g_string_append (gstr, ss); free (ss); } - s = pspp_locale_to_utf8 (gstr->str, gstr->len, err); - g_string_free (gstr, TRUE); + s = gstr->str; + g_string_free (gstr, FALSE); } return s;