* Main window toolbar is now shown
authorSergio Villar Senin <svillar@igalia.com>
Tue, 3 Apr 2007 18:39:14 +0000 (18:39 +0000)
committerSergio Villar Senin <svillar@igalia.com>
Tue, 3 Apr 2007 18:39:14 +0000 (18:39 +0000)
* Added some more Maemo stock icons
* Added stock icons registration
* Added Context-sensitive menu to the reply toolbar button

pmo-trunk-r1496

src/maemo/modest-icon-names.h
src/maemo/modest-main-window-ui.h
src/maemo/modest-main-window.c
src/maemo/ui/modest-main-window-ui.xml
src/modest-runtime.c

index 4ce0b0b..8028e2b 100644 (file)
 #define  MODEST_TOOLBAR_ICON_REPLY             "qgn_toolb_messagin_reply"
 #define  MODEST_TOOLBAR_ICON_REPLY_ALL         "qgn_toolb_messagin_replytoall"
 #define  MODEST_TOOLBAR_ICON_FORWARD           "qgn_toolb_messagin_forward"
-#define  MODEST_TOOLBAR_ICON_DELETE            "qgn_toolb_messagin_delete"
+#define  MODEST_TOOLBAR_ICON_DELETE            "qgn_toolb_gene_deletebutton"
 #define  MODEST_TOOLBAR_ICON_FORMAT_BULLETS     "qgn_list_gene_bullets"
+#define  MODEST_TOOLBAR_ICON_SPLIT_VIEW         "qgn_toolb_rss_fldonoff"
+#define  MODEST_TOOLBAR_ICON_SORT               "qgn_list_sort"
+#define  MODEST_TOOLBAR_ICON_REFRESH            "qgn_toolb_gene_refresh"
 
 /* Stock icon names */
 #define  MODEST_STOCK_MAIL_SEND    "modest-stock-mail-send"
@@ -84,5 +87,8 @@
 #define  MODEST_STOCK_NEXT         "modest-stock-next"
 #define  MODEST_STOCK_PREV         "modest-stock-prev"
 #define  MODEST_STOCK_STOP         "modest-stock-stop"
+#define  MODEST_STOCK_SPLIT_VIEW   "modest-stock-split-view"
+#define  MODEST_STOCK_SORT         "modest-stock-sort"
+#define  MODEST_STOCK_REFRESH      "modest-stock-refresh"
 
 #endif  /*__MODEST_TNY_ICON_NAMES_H__*/
index f70f3f3..c2bba20 100644 (file)
@@ -120,9 +120,10 @@ static const GtkActionEntry modest_action_entries [] = {
        { "ToolbarMessageReply",      MODEST_STOCK_REPLY,     N_("Reply a message"),          NULL, NULL,  G_CALLBACK (modest_ui_actions_on_reply) },
        { "ToolbarMessageReplyAll",   MODEST_STOCK_REPLY_ALL,     N_("Reply to all"),         NULL, NULL,  G_CALLBACK (modest_ui_actions_on_reply_all) },
        { "ToolbarMessageForward",    MODEST_STOCK_FORWARD,     N_("Forward a message"),      NULL, NULL,  G_CALLBACK (modest_ui_actions_on_forward) },
-       { "ToolbarSendReceive",       GTK_STOCK_REFRESH,   N_("Send & receive"),      NULL, NULL,  G_CALLBACK (modest_ui_actions_on_send_receive) },
-       { "ToolbarToggleView",        GTK_STOCK_CDROM,      N_("Toggle view"),                "<CTRL>t", NULL,  G_CALLBACK (modest_ui_actions_toggle_view) },
-       { "ToolbarDeleteMessage",     GTK_STOCK_DELETE,     N_("Delete message"),             NULL, NULL,  G_CALLBACK (modest_ui_actions_on_delete) },
+       { "ToolbarSendReceive",       MODEST_STOCK_REFRESH,   N_("Send & receive"),      NULL, NULL,  G_CALLBACK (modest_ui_actions_on_send_receive) },
+       { "ToolbarToggleView",        MODEST_STOCK_SPLIT_VIEW,      N_("Toggle view"),                "<CTRL>t", NULL,  G_CALLBACK (modest_ui_actions_toggle_view) },
+       { "ToolbarDeleteMessage",     MODEST_STOCK_DELETE,     N_("Delete message"),             NULL, NULL,  G_CALLBACK (modest_ui_actions_on_delete) },
+       { "ToolbarSort",     MODEST_STOCK_SORT,     N_("Sort mail"),             NULL, NULL, NULL },
 };
 
 
index 12b20ca..6831973 100644 (file)
@@ -277,40 +277,21 @@ on_delete_event (GtkWidget *widget, GdkEvent  *event, ModestMainWindow *self)
        return FALSE;
 }
 
-
 static GtkWidget*
 get_toolbar (ModestMainWindow *self)
 {
-       GtkWidget   *toolbar, *progress_box, *progress_alignment;
-       GtkToolItem *progress_item;
+       GtkWidget   *toolbar, *reply_button, *menu;
        ModestWindowPrivate *parent_priv;
-       ModestMainWindowPrivate *priv;
-/*     GtkWidget   *stop_icon; */
        
        parent_priv = MODEST_WINDOW_GET_PRIVATE(self);
-       priv = MODEST_MAIN_WINDOW_GET_PRIVATE(self);
        
        /* Toolbar */
-       toolbar             = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/ToolBar");
-       progress_box        = gtk_hbox_new (FALSE, HILDON_MARGIN_DEFAULT);
-       progress_alignment  = gtk_alignment_new (0.5, 0.5, 1, 0);
-       
-       gtk_container_add  (GTK_CONTAINER(progress_alignment), priv->progress_bar);
-       gtk_box_pack_start (GTK_BOX(progress_box), progress_alignment, TRUE, TRUE, 0);
-       
-       progress_item  = gtk_tool_item_new ();
-       gtk_container_add (GTK_CONTAINER(progress_item), progress_box);
-       gtk_tool_item_set_homogeneous (progress_item, FALSE);
-       gtk_tool_item_set_expand(progress_item, TRUE);
-       
-       gtk_toolbar_insert (GTK_TOOLBAR(toolbar), progress_item,
-                           gtk_toolbar_get_n_items(GTK_TOOLBAR(toolbar)));
+       toolbar = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/ToolBar");
+       reply_button = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/ToolBar/ToolbarMessageReply");
 
-/*     stop_icon = gtk_image_new_from_icon_name("qgn_toolb_gene_stop", GTK_ICON_SIZE_BUTTON); */
-/*     gtk_toolbar_insert (GTK_TOOLBAR(toolbar), gtk_tool_button_new(stop_icon, NULL), */
-/*                         gtk_toolbar_get_n_items(GTK_TOOLBAR(toolbar))); */
+       menu = gtk_ui_manager_get_widget (parent_priv->ui_manager, "/ToolbarReplyContextMenu");
+       gtk_widget_tap_and_hold_setup (GTK_WIDGET (reply_button), menu, NULL, 0);
 
-       gtk_widget_show_all (toolbar);
        return toolbar;
 }
 
@@ -417,6 +398,7 @@ modest_main_window_new (void)
        parent_priv->toolbar = get_toolbar(self);
        hildon_window_add_toolbar (HILDON_WINDOW (self), GTK_TOOLBAR (parent_priv->toolbar));
 
+
        /* Menubar */
        parent_priv->menubar = modest_maemo_utils_menubar_to_menu (parent_priv->ui_manager);
        hildon_window_set_menu (HILDON_WINDOW (self), GTK_MENU (parent_priv->menubar));
@@ -458,9 +440,9 @@ modest_main_window_new (void)
        gtk_window_set_icon_from_file (GTK_WINDOW(self), MODEST_APP_ICON, NULL);
        gtk_widget_show_all (main_vbox);
 
-       /* should we hide the toolbar? */
-       if (!modest_conf_get_bool (modest_runtime_get_conf (), MODEST_CONF_SHOW_TOOLBAR, NULL))
-               gtk_widget_hide (parent_priv->toolbar);
+/*     /\* should we hide the toolbar? *\/ */
+/*     if (!modest_conf_get_bool (modest_runtime_get_conf (), MODEST_CONF_SHOW_TOOLBAR, NULL)) */
+/*             gtk_widget_hide (parent_priv->toolbar); */
 
        /* Connect signals */
        connect_signals (self);
@@ -474,5 +456,8 @@ modest_main_window_new (void)
        g_message ("online? %s",
                   tny_device_is_online (modest_runtime_get_device()) ? "yes" : "no");
 
+       /* Needed to show the contents of the toolbar */
+       gtk_widget_show_all (GTK_WIDGET (self));
+
        return MODEST_WINDOW(self);
 }
index 0d0492c..d825151 100644 (file)
   <toolbar name="ToolBar">
     <toolitem action="ToolbarMessageNew"/> 
     <toolitem action="ToolbarMessageReply"/> 
-<!--    <toolitem action="ToolbarMessageReplyAll"/>
-    <toolitem action="ToolbarMessageForward"/> -->
     <toolitem action="ToolbarDeleteMessage"/>
-    <toolitem  action="ToolbarToggleView"/>
-<!--    <toolitem action="ToolbarSort"/> -->
+    <toolitem action="ToolbarToggleView"/>
+    <toolitem action="ToolbarSort"/>
     <toolitem action="ToolbarSendReceive"/>
   </toolbar>
 
     <menuitem action="FoldersMoveToTrash"/>
   </popup>
 
+  <popup name="ToolbarReplyContextMenu">
+    <menuitem action="ToolbarMessageForward"/>
+    <menuitem action="ToolbarMessageReplyAll"/>
+    <menuitem action="ToolbarMessageReply"/>
+  </popup>
+
+
 </ui>
index ea1710b..5ed7526 100644 (file)
@@ -547,6 +547,11 @@ init_stock_icons (void)
                gint i;
 
                static GtkStockItem items[] = {
+#if MODEST_PLATFORM_ID==2
+                       { MODEST_STOCK_SPLIT_VIEW, "split view", 0, 0, NULL },
+                       { MODEST_STOCK_SORT, "sort mail", 0, 0, NULL },
+                       { MODEST_STOCK_REFRESH, "refresh mail", 0, 0, NULL },
+#endif
                        { MODEST_STOCK_MAIL_SEND, "send mail", 0, 0, NULL },
                        { MODEST_STOCK_NEW_MAIL, "new mail", 0, 0, NULL },
 /*                     { MODEST_STOCK_SEND_RECEIVE, "send receive", 0, 0, NULL },  */
@@ -560,6 +565,11 @@ init_stock_icons (void)
                };
       
                static gchar *items_names [] = {
+#if MODEST_PLATFORM_ID==2
+                       MODEST_TOOLBAR_ICON_SPLIT_VIEW,
+                       MODEST_TOOLBAR_ICON_SORT,
+                       MODEST_TOOLBAR_ICON_REFRESH,
+#endif
                        MODEST_TOOLBAR_ICON_MAIL_SEND,
                        MODEST_TOOLBAR_ICON_NEW_MAIL,
 /*                     MODEST_TOOLBAR_ICON_SEND_RECEIVE,  */