From: Ben Pfaff Date: Mon, 13 Aug 2007 04:36:47 +0000 (+0000) Subject: Output variable measurement level, alignment, and display width as X-Git-Tag: v0.6.0~310 X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2bca558081e9fd942317538ac9e942e3f4b0560a;p=pspp-builds.git Output variable measurement level, alignment, and display width as part of DISPLAY DICTIONARY and SYSFILE INFO output. Bug #13019. Reviewed by John Darrington. * sys-file-info.c (cmd_sysfile_info): Allow space for new rows of info in output. (display_variables): Ditto. (describe_variable): Output variable measurement level, alignment, and display width as part of DISPLAY DICTIONARY and SYSFILE INFO output. --- diff --git a/src/language/dictionary/ChangeLog b/src/language/dictionary/ChangeLog index b7d543c1..fde939f9 100644 --- a/src/language/dictionary/ChangeLog +++ b/src/language/dictionary/ChangeLog @@ -1,3 +1,15 @@ +2007-08-12 Ben Pfaff + + Output variable measurement level, alignment, and display width as + part of DISPLAY DICTIONARY and SYSFILE INFO output. Bug #13019. + Reviewed by John Darrington. + * sys-file-info.c (cmd_sysfile_info): Allow space for new rows of + info in output. + (display_variables): Ditto. + (describe_variable): Output variable measurement level, alignment, + and display width as part of DISPLAY DICTIONARY and SYSFILE INFO + output. + 2007-06-06 Ben Pfaff Adapt case sources, sinks, and clients of procedure code to the diff --git a/src/language/dictionary/sys-file-info.c b/src/language/dictionary/sys-file-info.c index 452a67e0..abd1583b 100644 --- a/src/language/dictionary/sys-file-info.c +++ b/src/language/dictionary/sys-file-info.c @@ -166,7 +166,7 @@ cmd_sysfile_info (struct lexer *lexer, struct dataset *ds UNUSED) struct variable *v = dict_get_var (d, i); const int nvl = val_labs_count (var_get_value_labels (v)); - if (r + 10 + nvl > nr) + if (r + 13 + nvl > nr) { nr = MAX (nr * dict_get_var_cnt (d) / (i + 1), nr); nr += 10 + nvl; @@ -407,7 +407,7 @@ display_variables (const struct variable **vl, size_t n, int as) { int nvl = val_labs_count (var_get_value_labels (v)); - if (r + 10 + nvl > nr) + if (r + 13 + nvl > nr) { nr = MAX (nr * n / (i + 1), nr); nr += 10 + nvl; @@ -455,6 +455,8 @@ describe_variable (const struct variable *v, struct tab_table *t, int r, int as) { const struct fmt_spec *print = var_get_print_format (v); const struct fmt_spec *write = var_get_write_format (v); + enum measure m = var_get_measure (v); + enum alignment a = var_get_alignment (v); /* Put the name, var label, and position into the first row. */ tab_text (t, 0, r, TAB_LEFT, var_get_name (v)); @@ -485,6 +487,23 @@ describe_variable (const struct variable *v, struct tab_table *t, int r, int as) r++; } + /* Measurement level, display width, alignment. */ + tab_joint_text (t, 1, r, 2, r, TAB_LEFT | TAT_PRINTF, + _("Measure: %s"), + m == MEASURE_NOMINAL ? _("Nominal") + : m == MEASURE_ORDINAL ? _("Ordinal") + : _("Scale")); + r++; + tab_joint_text (t, 1, r, 2, r, TAB_LEFT | TAT_PRINTF, + _("Display Alignment: %s"), + a == ALIGN_LEFT ? _("Left") + : a == ALIGN_CENTRE ? _("Centre") + : _("Right")); + r++; + tab_joint_text (t, 1, r, 2, r, TAB_LEFT | TAT_PRINTF, + _("Display Width: %d"), var_get_display_width (v)); + r++; + /* Missing values if any. */ if (var_has_missing_values (v)) {