aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-folder-selector.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-09-11 00:58:00 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-09-11 02:13:18 +0800
commit881792fadc8a200acd193369f842e46aef0e56e5 (patch)
treed9e3bd3c595dbc23a115e922c393dc1b3d504356 /mail/em-folder-selector.c
parent9ec83961283efe0a3125b0fc30f8e9b21c08f806 (diff)
downloadgsoc2013-evolution-881792fadc8a200acd193369f842e46aef0e56e5.tar
gsoc2013-evolution-881792fadc8a200acd193369f842e46aef0e56e5.tar.gz
gsoc2013-evolution-881792fadc8a200acd193369f842e46aef0e56e5.tar.bz2
gsoc2013-evolution-881792fadc8a200acd193369f842e46aef0e56e5.tar.lz
gsoc2013-evolution-881792fadc8a200acd193369f842e46aef0e56e5.tar.xz
gsoc2013-evolution-881792fadc8a200acd193369f842e46aef0e56e5.tar.zst
gsoc2013-evolution-881792fadc8a200acd193369f842e46aef0e56e5.zip
Require a parent window when creating an EMFolderSelector.
Diffstat (limited to 'mail/em-folder-selector.c')
-rw-r--r--mail/em-folder-selector.c25
1 files changed, 18 insertions, 7 deletions
diff --git a/mail/em-folder-selector.c b/mail/em-folder-selector.c
index 198264e62b..693c0969f1 100644
--- a/mail/em-folder-selector.c
+++ b/mail/em-folder-selector.c
@@ -124,8 +124,7 @@ emfs_response (GtkWidget *dialog, gint response, EMFolderSelector *emfs)
g_object_set_data ((GObject *)emfs->emft, "select", GUINT_TO_POINTER (1));
- /* FIXME Pass a parent window. */
- em_folder_utils_create_folder (NULL, emfs->emft, NULL);
+ em_folder_utils_create_folder (NULL, emfs->emft, GTK_WINDOW (dialog));
g_signal_stop_emission_by_name (emfs, "response");
}
@@ -167,7 +166,6 @@ em_folder_selector_construct (EMFolderSelector *emfs, EMFolderTree *emft, guint3
{
GtkWidget *widget;
- gtk_window_set_modal (GTK_WINDOW (emfs), FALSE);
gtk_window_set_default_size (GTK_WINDOW (emfs), 350, 300);
gtk_window_set_title (GTK_WINDOW (emfs), title);
gtk_container_set_border_width (GTK_CONTAINER (emfs), 6);
@@ -216,11 +214,18 @@ em_folder_selector_construct (EMFolderSelector *emfs, EMFolderTree *emft, guint3
}
GtkWidget *
-em_folder_selector_new (EMFolderTree *emft, guint32 flags, const gchar *title, const gchar *text, const gchar *oklabel)
+em_folder_selector_new (GtkWindow *parent,
+ EMFolderTree *emft,
+ guint32 flags,
+ const gchar *title,
+ const gchar *text,
+ const gchar *oklabel)
{
EMFolderSelector *emfs;
- emfs = g_object_new (em_folder_selector_get_type (), NULL);
+ emfs = g_object_new (
+ EM_TYPE_FOLDER_SELECTOR,
+ "transient-for", parent, NULL);
em_folder_selector_construct (emfs, emft, flags, title, text, oklabel);
return (GtkWidget *) emfs;
@@ -243,7 +248,11 @@ emfs_create_name_activate (GtkEntry *entry, EMFolderSelector *emfs)
}
GtkWidget *
-em_folder_selector_create_new (EMFolderTree *emft, guint32 flags, const gchar *title, const gchar *text)
+em_folder_selector_create_new (GtkWindow *parent,
+ EMFolderTree *emft,
+ guint32 flags,
+ const gchar *title,
+ const gchar *text)
{
EMFolderSelector *emfs;
GtkWidget *hbox, *w;
@@ -252,7 +261,9 @@ em_folder_selector_create_new (EMFolderTree *emft, guint32 flags, const gchar *t
* whole purpose of this dialog */
flags &= ~EM_FOLDER_SELECTOR_CAN_CREATE;
- emfs = g_object_new (em_folder_selector_get_type (), NULL);
+ emfs = g_object_new (
+ EM_TYPE_FOLDER_SELECTOR,
+ "transient-for", parent, NULL);
em_folder_selector_construct (emfs, emft, flags, title, text, _("C_reate"));
em_folder_tree_set_excluded(emft, EMFT_EXCLUDE_NOINFERIORS);