X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-var-sheet.c;h=df4718696dbd29faf01b8432287c34ff5f4a3c03;hb=79100bdd30230890345c1c5a09ae57a19c1e408b;hp=3a2d232002adb8d8a83e7aba6a24ee1233b78db2;hpb=36a60796842701bb68a4c54a84853a1db63c9dde;p=pspp diff --git a/src/ui/gui/psppire-var-sheet.c b/src/ui/gui/psppire-var-sheet.c index 3a2d232002..df4718696d 100644 --- a/src/ui/gui/psppire-var-sheet.c +++ b/src/ui/gui/psppire-var-sheet.c @@ -54,7 +54,8 @@ enum vs_column VS_MISSING, VS_COLUMNS, VS_ALIGN, - VS_MEASURE + VS_MEASURE, + VS_ROLE }; G_DEFINE_TYPE (PsppireVarSheet, psppire_var_sheet, PSPP_TYPE_SHEET_VIEW); @@ -274,6 +275,21 @@ on_var_column_edited (GtkCellRendererText *cell, else if (!strcmp (new_text, measure_to_string (MEASURE_SCALE))) var_set_measure (var, MEASURE_SCALE); break; + + case VS_ROLE: + if (!strcmp (new_text, var_role_to_string (ROLE_NONE))) + var_set_role (var, ROLE_NONE); + else if (!strcmp (new_text, var_role_to_string (ROLE_INPUT))) + var_set_role (var, ROLE_INPUT); + else if (!strcmp (new_text, var_role_to_string (ROLE_OUTPUT))) + var_set_role (var, ROLE_OUTPUT); + else if (!strcmp (new_text, var_role_to_string (ROLE_BOTH))) + var_set_role (var, ROLE_BOTH); + else if (!strcmp (new_text, var_role_to_string (ROLE_PARTITION))) + var_set_role (var, ROLE_PARTITION); + else if (!strcmp (new_text, var_role_to_string (ROLE_SPLIT))) + var_set_role (var, ROLE_SPLIT); + break; } } @@ -452,6 +468,13 @@ render_var_cell (PsppSheetViewColumn *tree_column, psppire_dict_view_get_var_measurement_stock_id (var), NULL); break; + + case VS_ROLE: + g_object_set (cell, + "text", var_role_to_string (var_get_role (var)), + "editable", TRUE, + NULL); + break; } } @@ -1276,6 +1299,15 @@ psppire_var_sheet_init (PsppireVarSheet *obj) pspp_sheet_view_column_set_cell_data_func ( column, cell, render_var_cell, obj, NULL); + add_combo_column (obj, VS_ROLE, _("Role"), 12, + var_role_to_string (ROLE_NONE), ROLE_NONE, + var_role_to_string (ROLE_INPUT), ROLE_INPUT, + var_role_to_string (ROLE_OUTPUT), ROLE_OUTPUT, + var_role_to_string (ROLE_BOTH), ROLE_BOTH, + var_role_to_string (ROLE_PARTITION), ROLE_PARTITION, + var_role_to_string (ROLE_SPLIT), ROLE_SPLIT, + NULL); + pspp_sheet_view_set_rubber_banding (sheet_view, TRUE); pspp_sheet_selection_set_mode (pspp_sheet_view_get_selection (sheet_view), PSPP_SHEET_SELECTION_MULTIPLE);