diff options
author | Carlos Garnacho <carlos@imendio.com> | 2007-05-18 10:38:42 +0000 |
---|---|---|
committer | Carlos Garnacho <carlosg@src.gnome.org> | 2007-05-18 10:38:42 +0000 |
commit | 7bb7cfb29328264a5cb876aa5bdcc404946d6014 (patch) | |
tree | b5b3245c4c8a5b2493408070421bdf174735f174 /gtk/gtkfilechooserembed.h | |
parent | a1498f769747e0fad97803dfdb7329ae76697c49 (diff) | |
download | gtk+-7bb7cfb29328264a5cb876aa5bdcc404946d6014.tar.gz |
Refactor GtkFileChooserDialog sizing.
2007-05-18 Carlos Garnacho <carlos@imendio.com>
Refactor GtkFileChooserDialog sizing.
* gtkfilechooserembed.[ch] (delegate_get_resizable_hints)
(_gtk_file_chooser_embed_get_resizable_hints):
s/resizable_hints/resizable/, return just one boolean value to
determine whether the filechooser should be resizable or not.
* gtkfilechooserprivate.h (struct GtkFileChooserDialogPrivate): remove
variables related to the GtkFileChooserEmbed get_default_size() and
get_resizable() implementations.
(struct GtkFileChooserDefault): Move default size management here.
* gtkfilechooserdefault.c (gtk_file_chooser_default_size_allocate):
Added, store currently allocated size to calculate default size later.
(gtk_file_chooser_default_get_resizable_hints):
s/resizable_hints/resizable/.
(gtk_file_chooser_default_set_property): Reload settings if the file
chooser action changes, this way the save expander state will be known
before mapping the window, avoiding wrong window positioning and
flickering. (#424299, #424309)
(find_good_size_from_style): Only get size from style if it wasn't set
previously.
(gtk_file_chooser_default_get_default_size): return default size based
on stored default size and preview/extra widget sizes.
* gtkfilechooserdialog.c (file_chooser_widget_update_hints)
(file_chooser_widget_realized_size_changed)
(file_chooser_widget_unrealized_size_changed): simplified to
(file_chooser_widget_size_changed): set window size and resizability
based on the GtkFileChooserEmbed interface implementation. (Bug
#420285, Tomeu Vizoso)
(gtk_file_chooser_dialog_map): force a dialog size change, so it's
clamped for sure to the 75% of the screen size.
svn path=/trunk/; revision=17859
Diffstat (limited to 'gtk/gtkfilechooserembed.h')
-rw-r--r-- | gtk/gtkfilechooserembed.h | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/gtk/gtkfilechooserembed.h b/gtk/gtkfilechooserembed.h index 9477da0687..083bd45d71 100644 --- a/gtk/gtkfilechooserembed.h +++ b/gtk/gtkfilechooserembed.h @@ -43,9 +43,7 @@ struct _GtkFileChooserEmbedIface void (*get_default_size) (GtkFileChooserEmbed *chooser_embed, gint *default_width, gint *default_height); - void (*get_resizable_hints) (GtkFileChooserEmbed *chooser_embed, - gboolean *resize_horizontally, - gboolean *resize_vertically); + gboolean (*get_resizable) (GtkFileChooserEmbed *chooser_embed); gboolean (*should_respond) (GtkFileChooserEmbed *chooser_embed); @@ -61,10 +59,7 @@ GType _gtk_file_chooser_embed_get_type (void) G_GNUC_CONST; void _gtk_file_chooser_embed_get_default_size (GtkFileChooserEmbed *chooser_embed, gint *default_width, gint *default_height); -void _gtk_file_chooser_embed_get_resizable_hints (GtkFileChooserEmbed *chooser_embed, - gboolean *resize_horizontally, - gboolean *resize_vertically); - +gboolean _gtk_file_chooser_embed_get_resizable (GtkFileChooserEmbed *chooser_embed); gboolean _gtk_file_chooser_embed_should_respond (GtkFileChooserEmbed *chooser_embed); void _gtk_file_chooser_embed_initial_focus (GtkFileChooserEmbed *chooser_embed); |