static void
-psppire_dialog_action_regression_activate (GtkAction *a)
+psppire_dialog_action_regression_activate (PsppireDialogAction *a)
{
PsppireDialogActionRegression *act = PSPPIRE_DIALOG_ACTION_REGRESSION (a);
PsppireDialogAction *pda = PSPPIRE_DIALOG_ACTION (a);
- GtkBuilder *xml = builder_new ("regression.ui");
+ GHashTable *thing = psppire_dialog_action_get_hash_table (pda);
+ GtkBuilder *xml = g_hash_table_lookup (thing, a);
+ if (!xml)
+ {
+ xml = builder_new ("regression.ui");
+ g_hash_table_insert (thing, a, xml);
+ }
+
GtkWidget *stat_button = get_widget_assert (xml, "stat-button");
GtkWidget *save_button = get_widget_assert (xml, "save-button");
act->pred_button = get_widget_assert (xml, "pred-button");
act->resid_button = get_widget_assert (xml, "resid-button");
- g_object_unref (xml);
-
psppire_checkbox_treeview_populate (PSPPIRE_CHECKBOX_TREEVIEW (act->stat_view),
B_RG_STATS_DEFAULT,
N_REGRESSION_STATS,
G_CALLBACK (on_save_clicked), act);
- if (PSPPIRE_DIALOG_ACTION_CLASS (psppire_dialog_action_regression_parent_class)->activate)
- PSPPIRE_DIALOG_ACTION_CLASS (psppire_dialog_action_regression_parent_class)->activate (pda);
}
static char *
-generate_syntax (PsppireDialogAction *a)
+generate_syntax (const PsppireDialogAction *a)
{
PsppireDialogActionRegression *rd = PSPPIRE_DIALOG_ACTION_REGRESSION (a);
gchar *text = NULL;