X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fvariable.h;h=e8f5f101469c1514587b0f24d9b053df5919f3fa;hb=79100bdd30230890345c1c5a09ae57a19c1e408b;hp=a62902882f9fdb1e058dc902dd8b2ebeee124cb1;hpb=36a60796842701bb68a4c54a84853a1db63c9dde;p=pspp diff --git a/src/data/variable.h b/src/data/variable.h index a62902882f..e8f5f10146 100644 --- a/src/data/variable.h +++ b/src/data/variable.h @@ -27,7 +27,7 @@ #define VAR_TRAIT_NAME 0x0001 #define VAR_TRAIT_WIDTH 0x0002 -/* Available for reuse: 0x0004 */ +#define VAR_TRAIT_ROLE 0x0004 #define VAR_TRAIT_LABEL 0x0008 #define VAR_TRAIT_VALUE_LABELS 0x0010 #define VAR_TRAIT_MISSING_VALUES 0x0020 @@ -135,12 +135,31 @@ enum measure bool measure_is_valid (enum measure); const char *measure_to_string (enum measure); +const char *measure_to_syntax (enum measure); enum measure var_get_measure (const struct variable *); void var_set_measure (struct variable *, enum measure); enum measure var_default_measure (enum val_type); +/* Intended usage of a variable, for populating dialogs. */ +enum var_role + { + ROLE_NONE, + ROLE_INPUT, + ROLE_OUTPUT, + ROLE_BOTH, + ROLE_PARTITION, + ROLE_SPLIT + }; + +bool var_role_is_valid (enum var_role); +const char *var_role_to_string (enum var_role); +const char *var_role_to_syntax (enum var_role); + +enum var_role var_get_role (const struct variable *); +void var_set_role (struct variable *, enum var_role); + /* GUI display width. */ int var_get_display_width (const struct variable *); void var_set_display_width (struct variable *, int display_width); @@ -157,6 +176,7 @@ enum alignment bool alignment_is_valid (enum alignment); const char *alignment_to_string (enum alignment); +const char *alignment_to_syntax (enum alignment); enum alignment var_get_alignment (const struct variable *); void var_set_alignment (struct variable *, enum alignment);