X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire-dialog.c;fp=src%2Fui%2Fgui%2Fpsppire-dialog.c;h=99e0ad7cdf08ef24977fd7b0754b8afd5ad7729d;hb=c1f796a012aa172cf44ed3cf386b0222fa12ab35;hp=24d9089698fddeeb2ca098b1d146c844ecec413d;hpb=c9d55afdda746d7e8b39e5a117c1644debbb0c75;p=pspp-builds.git diff --git a/src/ui/gui/psppire-dialog.c b/src/ui/gui/psppire-dialog.c index 24d90896..99e0ad7c 100644 --- a/src/ui/gui/psppire-dialog.c +++ b/src/ui/gui/psppire-dialog.c @@ -19,6 +19,7 @@ #include #include +#include #include "psppire-dialog.h" #include "psppire-buttonbox.h" #include "psppire-selector.h" @@ -34,6 +35,9 @@ enum {DIALOG_REFRESH, static guint signals [n_SIGNALS]; +static void psppire_dialog_buildable_init (GtkBuildableIface *iface); + + GType psppire_dialog_get_type (void) { @@ -54,8 +58,20 @@ psppire_dialog_get_type (void) (GInstanceInitFunc) psppire_dialog_init, }; + static const GInterfaceInfo buildable_info = + { + (GInterfaceInitFunc) psppire_dialog_buildable_init, + NULL, + NULL + }; + dialog_type = g_type_register_static (GTK_TYPE_WINDOW, "PsppireDialog", &dialog_info, 0); + + g_type_add_interface_static (dialog_type, + GTK_TYPE_BUILDABLE, + &buildable_info); + } return dialog_type; @@ -475,3 +491,26 @@ psppire_dialog_set_valid_predicate (PsppireDialog *dialog, } + + + +static GObject * +get_internal_child (GtkBuildable *buildable, + GtkBuilder *builder, + const gchar *childname) +{ + PsppireDialog *dialog = PSPPIRE_DIALOG (buildable); + + if ( 0 == strcmp(childname, "hbox")) + return G_OBJECT (dialog->box); + + return NULL; +} + + + +static void +psppire_dialog_buildable_init (GtkBuildableIface *iface) +{ + iface->get_internal_child = get_internal_child; +}