X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-dialog-action.c;h=f0caabae726872c980ce7e6a8ac6c0652f252713;hb=13ca98079f4cb3cd80deb10b173813548b1f3ddc;hp=9eeed98d8dd608fe8b101159017cd5a1ea269ad6;hpb=e1c4d5d0f0c63ef20927ac2cd7f9ff4e7e4cf5c5;p=pspp diff --git a/src/ui/gui/psppire-dialog-action.c b/src/ui/gui/psppire-dialog-action.c index 9eeed98d8d..f0caabae72 100644 --- a/src/ui/gui/psppire-dialog-action.c +++ b/src/ui/gui/psppire-dialog-action.c @@ -24,12 +24,8 @@ #include "psppire-data-window.h" #include "builder-wrapper.h" -static void psppire_dialog_action_init (PsppireDialogAction *act); -static void psppire_dialog_action_class_init (PsppireDialogActionClass *class); - static GObjectClass * parent_class = NULL; - static const gchar * __get_name (GAction *act) { @@ -89,44 +85,11 @@ action_model_init (GActionInterface *iface) iface->activate = __activate; } - -GType -psppire_dialog_action_get_type (void) -{ - static GType de_type = 0; - - if (!de_type) - { - static const GTypeInfo de_info = - { - sizeof (PsppireDialogActionClass), - NULL, /* base_init */ - NULL, /* base_finalize */ - (GClassInitFunc) psppire_dialog_action_class_init, - NULL, /* class_finalize */ - NULL, /* class_data */ - sizeof (PsppireDialogAction), - 0, - (GInstanceInitFunc) psppire_dialog_action_init, - }; - - - static const GInterfaceInfo ga_info = { - (GInterfaceInitFunc) action_model_init, - NULL, - NULL - }; - - - de_type = g_type_register_static (G_TYPE_OBJECT, "PsppireDialogAction", - &de_info, G_TYPE_FLAG_ABSTRACT); - - g_type_add_interface_static (de_type, G_TYPE_ACTION, &ga_info); - } - - return de_type; -} - +G_DEFINE_ABSTRACT_TYPE_WITH_CODE (PsppireDialogAction, \ + psppire_dialog_action, \ + G_TYPE_OBJECT, \ + G_IMPLEMENT_INTERFACE (G_TYPE_ACTION, \ + action_model_init)) /* Properties */ enum @@ -202,7 +165,7 @@ on_destroy_dataset (GObject *w) This is useful for storing the state of dialogs so they can persist between invocations. */ -GHashTable * +static GHashTable * psppire_dialog_action_get_hash_table (PsppireDialogAction *act) { GHashTable *t = g_object_get_data (G_OBJECT (act->toplevel), "thing-table"); @@ -257,7 +220,7 @@ psppire_dialog_action_activate (PsppireDialogAction *act, GVariant *parameter) if (xml != NULL) class->activate (act, parameter); } - + gtk_window_set_transient_for (GTK_WINDOW (act->dialog), GTK_WINDOW (act->toplevel)); @@ -274,7 +237,7 @@ psppire_dialog_action_activate (PsppireDialogAction *act, GVariant *parameter) response = psppire_dialog_run (PSPPIRE_DIALOG (act->dialog)); - if ( class->generate_syntax ) + if (class->generate_syntax) { switch (response) {