projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Updated version number to 0.9.0 ( 9 indicating unstable version )
[pspp]
/
src
/
ui
/
gui
/
psppire-dialog-action.c
diff --git
a/src/ui/gui/psppire-dialog-action.c
b/src/ui/gui/psppire-dialog-action.c
index e3ee25be75fc7f53c021314573e29a6ec42ed537..7c399175dd5b89ce2f39cdc65b12a3ad78d81840 100644
(file)
--- a/
src/ui/gui/psppire-dialog-action.c
+++ b/
src/ui/gui/psppire-dialog-action.c
@@
-88,7
+88,6
@@
psppire_dialog_action_activate (PsppireDialogAction *act)
{
gint response;
{
gint response;
- PsppireVarStore *vs;
PsppireDialogActionClass *class = PSPPIRE_DIALOG_ACTION_GET_CLASS (act);
GSList *sl = gtk_ui_manager_get_toplevels (act->uim, GTK_UI_MANAGER_MENUBAR | GTK_UI_MANAGER_TOOLBAR);
PsppireDialogActionClass *class = PSPPIRE_DIALOG_ACTION_GET_CLASS (act);
GSList *sl = gtk_ui_manager_get_toplevels (act->uim, GTK_UI_MANAGER_MENUBAR | GTK_UI_MANAGER_TOOLBAR);
@@
-97,9
+96,7
@@
psppire_dialog_action_activate (PsppireDialogAction *act)
act->toplevel = gtk_widget_get_toplevel (GTK_WIDGET (sl->data));
g_slist_free (sl);
act->toplevel = gtk_widget_get_toplevel (GTK_WIDGET (sl->data));
g_slist_free (sl);
- vs = PSPPIRE_DATA_WINDOW(act->toplevel)->var_store;
-
- g_object_get (vs, "dictionary", &act->dict, NULL);
+ act->dict = PSPPIRE_DATA_WINDOW(act->toplevel)->dict;
g_object_set (act->source, "model", act->dict, NULL);
g_object_set (act->source, "model", act->dict, NULL);
@@
-109,6
+106,8
@@
psppire_dialog_action_activate (PsppireDialogAction *act)
if (GTK_ACTION_CLASS (psppire_dialog_action_parent_class)->activate)
GTK_ACTION_CLASS (psppire_dialog_action_parent_class)->activate ( GTK_ACTION (act));
if (GTK_ACTION_CLASS (psppire_dialog_action_parent_class)->activate)
GTK_ACTION_CLASS (psppire_dialog_action_parent_class)->activate ( GTK_ACTION (act));
+ gtk_widget_grab_focus (act->source);
+
response = psppire_dialog_run (PSPPIRE_DIALOG (act->dialog));
if ( class->generate_syntax )
response = psppire_dialog_run (PSPPIRE_DIALOG (act->dialog));
if ( class->generate_syntax )
@@
-126,6
+125,8
@@
psppire_dialog_action_activate (PsppireDialogAction *act)
break;
}
}
break;
}
}
+
+ gtk_widget_destroy (act->dialog);
}
static void
}
static void
@@
-138,7
+139,7
@@
psppire_dialog_action_class_init (PsppireDialogActionClass *class)
"Manager",
"The GtkUIManager which created this object",
GTK_TYPE_UI_MANAGER,
"Manager",
"The GtkUIManager which created this object",
GTK_TYPE_UI_MANAGER,
- G_PARAM_
CONSTRUCT_ONLY |G_PARAM_
READWRITE);
+ G_PARAM_READWRITE);
GParamSpec *toplevel_spec =
g_param_spec_object ("top-level",
GParamSpec *toplevel_spec =
g_param_spec_object ("top-level",
@@
-176,7
+177,8
@@
void
psppire_dialog_action_set_valid_predicate (PsppireDialogAction *act,
ContentsAreValid dialog_state_valid)
{
psppire_dialog_action_set_valid_predicate (PsppireDialogAction *act,
ContentsAreValid dialog_state_valid)
{
- psppire_dialog_set_valid_predicate (act->dialog, dialog_state_valid, act);
+ psppire_dialog_set_valid_predicate (PSPPIRE_DIALOG (act->dialog),
+ dialog_state_valid, act);
}
void
}
void
@@
-186,3
+188,10
@@
psppire_dialog_action_set_refresh (PsppireDialogAction *pda,
g_signal_connect_swapped (pda->dialog, "refresh", G_CALLBACK (refresh), pda);
}
g_signal_connect_swapped (pda->dialog, "refresh", G_CALLBACK (refresh), pda);
}
+
+void
+psppire_dialog_action_set_activation (gpointer class, activation activate)
+{
+ GTK_ACTION_CLASS (class)->activate = activate;
+}
+