X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-dialog-action-autorecode.c;h=ef3d4d77db41a52f3ec120e8bd2df7cc5cf26ce8;hb=37cd3133c06caf3fce7e449a939098f62bd41a55;hp=505ff30261c3ee12f19baeae6be6141e96546eef;hpb=7293c1a383d325c371bd708401e5a1d7586a4d90;p=pspp diff --git a/src/ui/gui/psppire-dialog-action-autorecode.c b/src/ui/gui/psppire-dialog-action-autorecode.c index 505ff30261..ef3d4d77db 100644 --- a/src/ui/gui/psppire-dialog-action-autorecode.c +++ b/src/ui/gui/psppire-dialog-action-autorecode.c @@ -40,13 +40,13 @@ static gboolean dialog_state_valid (gpointer pda) { PsppireDialogActionAutorecode *rd = PSPPIRE_DIALOG_ACTION_AUTORECODE (pda); - + GtkTreeModel *model = gtk_tree_view_get_model (GTK_TREE_VIEW (rd->var_view)); const gint n_vars = gtk_tree_model_iter_n_children (model, NULL); if (n_vars == 0) return FALSE; - + if (g_hash_table_size (rd->varmap) != n_vars) return FALSE; @@ -73,7 +73,7 @@ refresh (PsppireDialogAction *pda) gtk_list_store_clear (GTK_LIST_STORE (target_list)); - + } /* Name-Label pair */ @@ -115,7 +115,7 @@ static char * generate_syntax (const PsppireDialogAction *act) { PsppireDialogActionAutorecode *rd = PSPPIRE_DIALOG_ACTION_AUTORECODE (act); - + GHashTableIter iter; gpointer key, value; gchar *text; @@ -125,7 +125,7 @@ generate_syntax (const PsppireDialogAction *act) g_string_append (string, "\n\tVARIABLES ="); g_hash_table_iter_init (&iter, rd->varmap); - while (g_hash_table_iter_next (&iter, &key, &value)) + while (g_hash_table_iter_next (&iter, &key, &value)) { struct variable *var = key; g_string_append (string, " "); @@ -135,7 +135,7 @@ generate_syntax (const PsppireDialogAction *act) g_string_append (string, " INTO"); g_hash_table_iter_init (&iter, rd->varmap); - while (g_hash_table_iter_next (&iter, &key, &value)) + while (g_hash_table_iter_next (&iter, &key, &value)) { struct nlp *nlp = value; g_string_append (string, " "); @@ -213,10 +213,10 @@ on_entry_change (PsppireDialogActionAutorecode *rd) gpointer key, value; g_hash_table_iter_init (&iter, rd->varmap); - while (g_hash_table_iter_next (&iter, &key, &value)) + while (g_hash_table_iter_next (&iter, &key, &value)) { struct nlp *nlp = value; - + if ( 0 == strcmp (nlp->name, text)) { valid = FALSE; @@ -252,7 +252,7 @@ on_selection_change (GtkTreeSelection *selection, gpointer data) GtkTreeIter iter; gtk_widget_set_sensitive (rd->new_name_entry, TRUE); - gtk_widget_set_sensitive (rd->change_button, TRUE); + gtk_widget_set_sensitive (rd->change_button, TRUE); ok = gtk_tree_model_get_iter (model, &iter, (GtkTreePath*) rows->data); @@ -292,10 +292,10 @@ render_new_var_name (GtkTreeViewColumn *tree_column, PsppireDialogActionAutorecode *rd = PSPPIRE_DIALOG_ACTION_AUTORECODE (data); - + struct variable *var = NULL; - gtk_tree_model_get (tree_model, iter, + gtk_tree_model_get (tree_model, iter, 0, &var, -1); @@ -308,84 +308,75 @@ render_new_var_name (GtkTreeViewColumn *tree_column, } -static void -psppire_dialog_action_autorecode_activate (PsppireDialogAction *a) +static GtkBuilder * +psppire_dialog_action_autorecode_activate (PsppireDialogAction *a, GVariant *param) { PsppireDialogActionAutorecode *act = PSPPIRE_DIALOG_ACTION_AUTORECODE (a); PsppireDialogAction *pda = PSPPIRE_DIALOG_ACTION (a); - GHashTable *thing = psppire_dialog_action_get_hash_table (pda); - GtkBuilder *xml = g_hash_table_lookup (thing, a); - if (!xml) - { - xml = builder_new ("autorecode.ui"); - g_hash_table_insert (thing, a, xml); - - pda->dialog = get_widget_assert (xml, "autorecode-dialog"); - pda->source = get_widget_assert (xml, "dict-view"); - - + GtkBuilder *xml = builder_new ("autorecode.ui"); + pda->dialog = get_widget_assert (xml, "autorecode-dialog"); + pda->source = get_widget_assert (xml, "dict-view"); - act->var_view = get_widget_assert (xml, "var-view"); + act->var_view = get_widget_assert (xml, "var-view"); - act->new_name_entry = get_widget_assert (xml, "entry1"); - act->change_button = get_widget_assert (xml, "button1"); - act->ascending = get_widget_assert (xml, "radiobutton1"); - act->group = get_widget_assert (xml, "checkbutton1"); - act->blank = get_widget_assert (xml, "checkbutton2"); + act->new_name_entry = get_widget_assert (xml, "entry1"); + act->change_button = get_widget_assert (xml, "button1"); + act->ascending = get_widget_assert (xml, "radiobutton1"); + act->group = get_widget_assert (xml, "checkbutton1"); + act->blank = get_widget_assert (xml, "checkbutton2"); - { - GtkTreeSelection *sel; + { + GtkTreeSelection *sel; - GtkCellRenderer *renderer = gtk_cell_renderer_text_new (); + GtkCellRenderer *renderer = gtk_cell_renderer_text_new (); - GtkTreeViewColumn *col = gtk_tree_view_column_new_with_attributes (_("New"), - renderer, - "text", NULL, - NULL); + GtkTreeViewColumn *col = gtk_tree_view_column_new_with_attributes (_("New"), + renderer, + "text", NULL, + NULL); - gtk_tree_view_column_set_cell_data_func (col, renderer, - render_new_var_name, - act, NULL); + gtk_tree_view_column_set_cell_data_func (col, renderer, + render_new_var_name, + act, NULL); - gtk_tree_view_append_column (GTK_TREE_VIEW (act->var_view), col); + gtk_tree_view_append_column (GTK_TREE_VIEW (act->var_view), col); - col = gtk_tree_view_get_column (GTK_TREE_VIEW (act->var_view), 0); + col = gtk_tree_view_get_column (GTK_TREE_VIEW (act->var_view), 0); - g_object_set (col, "title", _("Old"), NULL); + g_object_set (col, "title", _("Old"), NULL); - g_object_set (act->var_view, "headers-visible", TRUE, NULL); + g_object_set (act->var_view, "headers-visible", TRUE, NULL); - act->varmap = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, nlp_destroy); + act->varmap = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, nlp_destroy); - sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (act->var_view)); + sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (act->var_view)); - g_signal_connect (sel, "changed", - G_CALLBACK (on_selection_change), act); + g_signal_connect (sel, "changed", + G_CALLBACK (on_selection_change), act); - g_signal_connect (act->change_button, "clicked", - G_CALLBACK (on_change_clicked), act); + g_signal_connect (act->change_button, "clicked", + G_CALLBACK (on_change_clicked), act); - g_signal_connect_swapped (act->new_name_entry, "changed", - G_CALLBACK (on_entry_change), act); + g_signal_connect_swapped (act->new_name_entry, "changed", + G_CALLBACK (on_entry_change), act); - } + } - } - psppire_dialog_action_set_refresh (pda, refresh); psppire_dialog_action_set_valid_predicate (pda, dialog_state_valid); + return xml; } static void psppire_dialog_action_autorecode_class_init (PsppireDialogActionAutorecodeClass *class) { - psppire_dialog_action_set_activation (class, psppire_dialog_action_autorecode_activate); + PSPPIRE_DIALOG_ACTION_CLASS (class)->initial_activate = psppire_dialog_action_autorecode_activate; PSPPIRE_DIALOG_ACTION_CLASS (class)->generate_syntax = generate_syntax; }