#include <stdlib.h>
#include <string.h>
-#include <config.h>
+#include "config.h"
#include "gtkbutton.h"
#include "gtkdialog.h"
#include "gtkhbbox.h"
"delete_event",
G_CALLBACK (gtk_dialog_delete_event_handler),
NULL);
-
+
dialog->vbox = gtk_vbox_new (FALSE, 0);
-
+
gtk_container_add (GTK_CONTAINER (dialog), dialog->vbox);
gtk_widget_show (dialog->vbox);
dialog->action_area = gtk_hbutton_box_new ();
gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog->action_area),
- GTK_BUTTONBOX_END);
+ GTK_BUTTONBOX_END);
gtk_box_pack_end (GTK_BOX (dialog->vbox), dialog->action_area,
FALSE, TRUE, 0);
gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER_ON_PARENT);
}
+static GtkBuildableIface *parent_buildable_iface;
+
static void
gtk_dialog_buildable_interface_init (GtkBuildableIface *iface)
{
+ parent_buildable_iface = g_type_interface_peek_parent (iface);
iface->get_internal_child = gtk_dialog_buildable_get_internal_child;
iface->custom_tag_start = gtk_dialog_buildable_custom_tag_start;
iface->custom_finished = gtk_dialog_buildable_custom_finished;
else if (strcmp (childname, "action_area") == 0)
return G_OBJECT (GTK_DIALOG (buildable)->action_area);
- return NULL;
+ return parent_buildable_iface->get_internal_child (buildable,
+ builder,
+ childname);
}
static void
return TRUE;
}
- return FALSE;
+ return parent_buildable_iface->custom_tag_start (buildable, builder, child,
+ tagname, parser, data);
}
static void
guint signal_id;
if (strcmp (tagname, "action-widgets"))
+ {
+ parent_buildable_iface->custom_finished (buildable, builder, child,
+ tagname, user_data);
return;
+ }
dialog = GTK_DIALOG (buildable);
parser_data = (ActionWidgetsSubParserData*)user_data;
g_slice_free (ActionWidgetsSubParserData, parser_data);
}
+/**
+ * gtk_dialog_get_action_area:
+ * @dialog: a #GtkDialog
+ *
+ * Returns the action area of @dialog.
+ *
+ * Returns: the action area.
+ *
+ * Since: 2.14
+ **/
+GtkWidget *
+gtk_dialog_get_action_area (GtkDialog *dialog)
+{
+ g_return_val_if_fail (GTK_IS_DIALOG (dialog), NULL);
+
+ return dialog->action_area;
+}
+
+/**
+ * gtk_dialog_get_content_area:
+ * @dialog: a #GtkDialog
+ *
+ * Returns the content area of @dialog.
+ *
+ * Returns: the content area #GtkVBox.
+ *
+ * Since: 2.14
+ **/
+GtkWidget *
+gtk_dialog_get_content_area (GtkDialog *dialog)
+{
+ g_return_val_if_fail (GTK_IS_DIALOG (dialog), NULL);
+
+ return dialog->vbox;
+}
+
#define __GTK_DIALOG_C__
#include "gtkaliasdef.c"