[anjal] Extra options for creating views.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: svn-commits-list gnome org
- Subject: [anjal] Extra options for creating views.
- Date: Fri, 29 May 2009 14:12:42 -0400 (EDT)
commit 228ffa8e2109d7545cf3c3cf52ef34787e8b3d37
Author: Srinivasa Ragavan <sragavan novell com>
Date: Fri May 29 23:44:30 2009 +0530
Extra options for creating views.
---
src/mail-view.c | 41 +++++++++++++++++++++++------------------
src/mail-view.h | 2 +-
2 files changed, 24 insertions(+), 19 deletions(-)
diff --git a/src/mail-view.c b/src/mail-view.c
index 9e63016..dcb15ee 100644
--- a/src/mail-view.c
+++ b/src/mail-view.c
@@ -85,7 +85,7 @@ mail_view_class_init (MailViewClass *klass)
static void
mv_new_page (GtkButton *w, MailView *mv)
{
- mail_view_add_page (mv, MAIL_VIEW_FOLDER);
+ mail_view_add_page (mv, MAIL_VIEW_FOLDER, NULL);
gtk_notebook_set_current_page (mv, g_list_length (mv->priv->children)-1);
}
#endif
@@ -98,7 +98,7 @@ mv_switch (GtkNotebook *notebook,GtkNotebookPage *page, guint page_num, gpoi
#ifdef MV_NEW_TAB
if (page_num == g_list_length(priv->children) && shell->priv->new) {
- mail_view_add_page (shell, MAIL_VIEW_FOLDER);
+ mail_view_add_page (shell, MAIL_VIEW_FOLDER, NULL);
gtk_notebook_set_current_page (shell, g_list_length (shell->priv->children)-1);
} else {
#endif
@@ -257,7 +257,7 @@ mv_message_new (MailFolderView *mfv, gpointer data, char *umid, MailView *mv)
}
static MailViewChild *
-mail_view_add_folder (MailView *mv)
+mail_view_add_folder (MailView *mv, gpointer data)
{
MailFolderView *mfv = mail_folder_view_new ();
gint position = 0;
@@ -278,11 +278,16 @@ mail_view_add_folder (MailView *mv)
}
static MailViewChild *
-mail_view_add_composer (MailView *mv)
+mail_view_add_composer (MailView *mv, gpointer data)
{
- MailComposerView *mcv = mail_composer_view_new ();
+ MailComposerView *mcv;
gint position = 0;
+ if (!data)
+ mcv = mail_composer_view_new ();
+ else
+ mcv = mail_composer_view_new_with_composer ((GtkWidget *)data);
+
mv->priv->current_view = (MailViewChild *)mcv;
mv->priv->children = g_list_append (mv->priv->children, mcv);
@@ -298,7 +303,7 @@ mail_view_add_composer (MailView *mv)
}
static MailViewChild *
-mail_view_add_message (MailView *mv)
+mail_view_add_message (MailView *mv, gpointer data)
{
MailConvView *mcv = mail_conv_view_new ();
gint position = 0;
@@ -322,11 +327,11 @@ mail_view_add_message (MailView *mv)
static void
mv_show_acc_mcv (MailFolderView *mfv, MailView *mv)
{
- mail_view_add_page(mv, MAIL_VIEW_ACCOUNT);
+ mail_view_add_page(mv, MAIL_VIEW_ACCOUNT, NULL);
}
static MailViewChild *
-mail_view_add_settings (MailView *mv)
+mail_view_add_settings (MailView *mv, gpointer data)
{
MailSettingsView *msv = mail_settings_view_new ();
gint position = 0;
@@ -345,7 +350,7 @@ mail_view_add_settings (MailView *mv)
}
static MailViewChild *
-mail_view_add_account (MailView *mv)
+mail_view_add_account (MailView *mv, gpointer data)
{
MailAccountView *msv = mail_account_view_new (NULL);
gint position = 0;
@@ -364,27 +369,27 @@ mail_view_add_account (MailView *mv)
}
MailViewChild *
-mail_view_add_page (MailView *mv, guint16 type)
+mail_view_add_page (MailView *mv, guint16 type, gpointer data)
{
MailViewChild *child = NULL;
g_signal_handlers_block_by_func(mv, mv_switch, mv);
switch (type){
case MAIL_VIEW_FOLDER:
- child = mail_view_add_folder (mv);
+ child = mail_view_add_folder (mv, data);
break;
case MAIL_VIEW_COMPOSER:
- child = mail_view_add_composer (mv);
+ child = mail_view_add_composer (mv, data);
break;
case MAIL_VIEW_MESSAGE:
- child = mail_view_add_message (mv);
+ child = mail_view_add_message (mv, data);
break;
case MAIL_VIEW_SETTINGS:
- child = mail_view_add_settings (mv);
+ child = mail_view_add_settings (mv, data);
break;
case MAIL_VIEW_ACCOUNT:
- child = mail_view_add_account (mv);
+ child = mail_view_add_account (mv, data);
break;
}
gtk_widget_grab_focus((GtkWidget *)child);
@@ -413,7 +418,7 @@ mv_switch_folder_view (MailView *mv, const char *uri)
tmp = tmp->next;
}
- mail_view_add_page (mv, MAIL_VIEW_FOLDER);
+ mail_view_add_page (mv, MAIL_VIEW_FOLDER, NULL);
mail_folder_view_set_folder_uri ((MailFolderView *)mv->priv->current_view, uri);
}
@@ -433,7 +438,7 @@ mv_switch_message_view (MailView *mv, const char *uri)
tmp = tmp->next;
}
- return (MailConvView *)mail_view_add_page (mv, MAIL_VIEW_MESSAGE);
+ return (MailConvView *)mail_view_add_page (mv, MAIL_VIEW_MESSAGE, NULL);
}
void
@@ -492,7 +497,7 @@ mv_tree_click_cb (GtkWidget *w, GdkEventButton *event, MailView *mv)
if (!gtk_tree_view_get_path_at_pos ((GtkTreeView *)w, (int) event->x, (int) event->y, &tree_path, NULL, NULL, NULL))
return FALSE;
- mail_view_add_page (mv, MAIL_VIEW_FOLDER);
+ mail_view_add_page (mv, MAIL_VIEW_FOLDER, NULL);
gtk_notebook_set_current_page ((GtkNotebook *)mv, g_list_length (mv->priv->children)-1);
selection = gtk_tree_view_get_selection ((GtkTreeView *)w);
gtk_tree_selection_unselect_path (selection, tree_path);
diff --git a/src/mail-view.h b/src/mail-view.h
index b550533..b74f2d2 100644
--- a/src/mail-view.h
+++ b/src/mail-view.h
@@ -74,7 +74,7 @@ void mail_view_check_mail(MailView *mv);
void mail_view_set_folder_tree_widget (MailView *mv, GtkWidget *tree);
void mail_view_set_folder_tree (MailView *mv, GtkWidget *tree);
void mail_view_save (MailView *mv);
-MailViewChild * mail_view_add_page (MailView *mv, guint16 type);
+MailViewChild * mail_view_add_page (MailView *mv, guint16 type, gpointer data);
void mail_view_set_search (MailView *view, const char *search);
void mail_view_set_slider (MailView *mv, GtkWidget *slider);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]