summaryrefslogtreecommitdiff
path: root/gtk/gtkfilechooserwidget.c
diff options
context:
space:
mode:
authorJonathan Blandford <jrb@redhat.com>2004-02-27 23:51:16 +0000
committerJonathan Blandford <jrb@src.gnome.org>2004-02-27 23:51:16 +0000
commit0cfdc7fb2bb48f38f30882de53ff2afb3093a34c (patch)
tree4263a91c66c0d7d6278cab75754a186149865644 /gtk/gtkfilechooserwidget.c
parentc5fe469c82b6b79ee466bb0aa438e64e5cee59b6 (diff)
downloadgtk+-0cfdc7fb2bb48f38f30882de53ff2afb3093a34c.tar.gz
New private interface to help negotiate the default size of the widget.
Fri Feb 27 18:46:27 2004 Jonathan Blandford <jrb@redhat.com> * gtk/gtkfilechooserembed.h: New private interface to help negotiate the default size of the widget. Still a bit buggy, but better than the old behavior. * gtk/gtkfilechooserdefault.c: Implement the embed interface. * gtk/gtkfilechooserwidget.c: Proxy the embed interface. * gtk/gtkfilechooserdialog.c: Use the embed interface.
Diffstat (limited to 'gtk/gtkfilechooserwidget.c')
-rw-r--r--gtk/gtkfilechooserwidget.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gtk/gtkfilechooserwidget.c b/gtk/gtkfilechooserwidget.c
index f2a1d75364..9054ae98be 100644
--- a/gtk/gtkfilechooserwidget.c
+++ b/gtk/gtkfilechooserwidget.c
@@ -22,6 +22,7 @@
#include "gtkfilechooserdefault.h"
#include "gtkfilechooserutils.h"
#include "gtktypebuiltins.h"
+#include "gtkfilechooserembed.h"
struct _GtkFileChooserWidgetPrivate
{
@@ -77,11 +78,22 @@ gtk_file_chooser_widget_get_type (void)
NULL /* interface_data */
};
+ static const GInterfaceInfo file_chooser_embed_info =
+ {
+ (GInterfaceInitFunc) _gtk_file_chooser_embed_delegate_iface_init, /* interface_init */
+ NULL, /* interface_finalize */
+ NULL /* interface_data */
+ };
+
file_chooser_widget_type = g_type_register_static (GTK_TYPE_VBOX, "GtkFileChooserWidget",
&file_chooser_widget_info, 0);
+
g_type_add_interface_static (file_chooser_widget_type,
GTK_TYPE_FILE_CHOOSER,
&file_chooser_info);
+ g_type_add_interface_static (file_chooser_widget_type,
+ GTK_TYPE_FILE_CHOOSER_EMBED,
+ &file_chooser_embed_info);
}
return file_chooser_widget_type;
@@ -150,6 +162,9 @@ gtk_file_chooser_widget_constructor (GType type,
_gtk_file_chooser_set_delegate (GTK_FILE_CHOOSER (object),
GTK_FILE_CHOOSER (priv->impl));
+
+ _gtk_file_chooser_embed_set_delegate (GTK_FILE_CHOOSER (object),
+ GTK_FILE_CHOOSER (priv->impl));
gtk_widget_pop_composite_child ();