Changeset 21

Show
Ignore:
Timestamp:
11/01/07 01:53:19
Author:
pvanhoof
Message:

2007-11-01 Philip Van Hoof <pvanhoof@gnome.org>

        • Restructured the menus a little bi
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r19 r21  
     12007-11-01  Philip Van Hoof  <pvanhoof@gnome.org> 
     2 
     3        * Restructured the menus a little bit 
     4 
    152007-10-31  Philip Van Hoof  <pvanhoof@gnome.org> 
    26 
  • trunk/src/tmut-folder-view.c

    r19 r21  
    4545 
    4646 
    47 void 
    48 tmut_folder_view_on_folder_move_activated (GObject *sender, TMutFolderView *self) 
    49 { 
    50         TMutFolderViewPriv *priv = TMUT_FOLDER_VIEW_GET_PRIVATE (self); 
    51  
    52 g_print ("move folder\n"); 
    53  
    54         return; 
    55 } 
    56  
    57 void 
    58 tmut_folder_view_on_folder_create_activated (GObject *sender, TMutFolderView *self) 
    59 { 
    60         TMutFolderViewPriv *priv = TMUT_FOLDER_VIEW_GET_PRIVATE (self); 
    61  
    62 g_print ("create folder\n"); 
    63  
    64         return; 
    65 } 
    66  
    67 void 
    68 tmut_folder_view_on_folder_delete_activated (GObject *sender, TMutFolderView *self) 
    69 { 
    70         TMutFolderViewPriv *priv = TMUT_FOLDER_VIEW_GET_PRIVATE (self); 
    71  
    72 g_print ("delete folder\n"); 
    73  
    74         return; 
    75 } 
    7647 
    7748void 
     
    10980tmut_folder_view_create_menu_default (TMutFolderView *self) 
    11081{ 
    111         TMutFolderViewPriv *priv = TMUT_FOLDER_VIEW_GET_PRIVATE (self); 
    11282        GtkMenu *menu; 
    113         GtkWidget *fcreate_menuitem, *fmove_menuitem, *fdel_menuitem; 
    11483        GtkWidget *mdel_menuitem, *mmove_menuitem; 
    11584        GtkButton *menu_button; 
     
    11988        menu = GTK_MENU (gtk_menu_new ()); 
    12089 
    121         fcreate_menuitem = gtk_menu_item_new_with_label ("Create new folder"); 
    122         fmove_menuitem = gtk_menu_item_new_with_label ("Copy or move a folder"); 
    123         fdel_menuitem = gtk_menu_item_new_with_label ("Delete a folder"); 
    12490        mdel_menuitem = gtk_menu_item_new_with_label ("Delete a message"); 
    12591        mmove_menuitem = gtk_menu_item_new_with_label ("Move a message"); 
    12692 
    127         gtk_widget_show (fcreate_menuitem); 
    128         gtk_widget_show (fmove_menuitem); 
    129         gtk_widget_show (fdel_menuitem); 
    13093        gtk_widget_show (mdel_menuitem); 
    13194        gtk_widget_show (mmove_menuitem); 
     
    13497        gtk_widget_show (GTK_WIDGET (menu_button)); 
    13598 
    136         gtk_menu_prepend (menu, fcreate_menuitem); 
    137         gtk_menu_prepend (menu, fmove_menuitem); 
    138         gtk_menu_prepend (menu, fdel_menuitem); 
    13999        gtk_menu_prepend (menu, mdel_menuitem); 
    140100        gtk_menu_prepend (menu, mmove_menuitem); 
     
    145105                G_CALLBACK (popup_the_actions_menu), menu); 
    146106 
    147         g_signal_connect (G_OBJECT (fcreate_menuitem), "activate", 
    148                 G_CALLBACK (tmut_folder_view_on_folder_create_activated), self); 
    149         g_signal_connect (G_OBJECT (fmove_menuitem), "activate", 
    150                 G_CALLBACK (tmut_folder_view_on_folder_move_activated), self); 
    151         g_signal_connect (G_OBJECT (fdel_menuitem), "activate", 
    152                 G_CALLBACK (tmut_folder_view_on_folder_delete_activated), self); 
    153107        g_signal_connect (G_OBJECT (mdel_menuitem), "activate", 
    154108                G_CALLBACK (tmut_folder_view_on_message_delete_activated), self); 
  • trunk/src/tmut-folder-view.h

    r19 r21  
    5050 
    5151        /* Override this one if you want to provide your own menu items for 
    52          * rename folder, create folder, move&copy folder, delete msg, copy&move 
    53          * msg and delete folder. The construction of this type will call this. 
    54          * Note that @self here is a GtkVBox and that you can add your widgets 
    55          * to it. */ 
     52         * delete msg and copy&mov msg and delete folder. The construction of  
     53         * this type will call this. Note that @self here is a GtkVBox and  
     54         * that you can add your widgets to it. */ 
    5655 
    5756        void (*create_menu_func) (TMutFolderView *self); 
     
    6463 
    6564/* Preimplemented handlers for your action performers */ 
    66 void tmut_folder_view_on_folder_move_activated (GObject *sender, TMutFolderView *self); 
    67 void tmut_folder_view_on_folder_create_activated (GObject *sender, TMutFolderView *self); 
    68 void tmut_folder_view_on_folder_delete_activated (GObject *sender, TMutFolderView *self); 
    6965void tmut_folder_view_on_message_delete_activated (GObject *sender, TMutFolderView *self); 
    7066void tmut_folder_view_on_message_move_activated (GObject *sender, TMutFolderView *self); 
  • trunk/src/tmut-menu-view.c

    r16 r21  
    4242 
    4343 
     44 
     45 
     46void 
     47tmut_menu_view_on_folder_move_activated (GObject *sender, TMutMenuView *self) 
     48{ 
     49 
     50g_print ("move folder\n"); 
     51 
     52        return; 
     53} 
     54 
     55void 
     56tmut_menu_view_on_folder_create_activated (GObject *sender, TMutMenuView *self) 
     57{ 
     58 
     59g_print ("create folder\n"); 
     60 
     61        return; 
     62} 
     63 
     64void 
     65tmut_menu_view_on_folder_delete_activated (GObject *sender, TMutMenuView *self) 
     66{ 
     67 
     68g_print ("delete folder\n"); 
     69 
     70        return; 
     71} 
     72 
     73void tmut_menu_view_on_new_msg_activated (GObject *sender, TMutMenuView *self) 
     74{ 
     75 
     76g_print ("new msg\n"); 
     77 
     78        return; 
     79 
     80} 
     81 
     82 
     83static void 
     84popup_the_actions_menu (GtkButton *button, gpointer user_data) 
     85{ 
     86        GtkMenu *menu = (GtkMenu *) user_data; 
     87 
     88        gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,  
     89                        0, gtk_get_current_event_time ()); 
     90 
     91        return; 
     92} 
     93 
     94static void 
     95tmut_menu_view_create_menu_default (TMutMenuView *self) 
     96{ 
     97        GtkMenu *menu; 
     98        GtkWidget *fcreate_menuitem, *fmove_menuitem, *fdel_menuitem,  
     99                  *nmsg_menuitem; 
     100        GtkButton *menu_button; 
     101 
     102        menu_button = GTK_BUTTON (gtk_button_new_with_label ("Actions")); 
     103 
     104        menu = GTK_MENU (gtk_menu_new ()); 
     105 
     106        fcreate_menuitem = gtk_menu_item_new_with_label ("Create new folder"); 
     107        fmove_menuitem = gtk_menu_item_new_with_label ("Copy or move a folder"); 
     108        fdel_menuitem = gtk_menu_item_new_with_label ("Delete a folder"); 
     109        nmsg_menuitem = gtk_menu_item_new_with_label ("New message"); 
     110 
     111        gtk_widget_show (nmsg_menuitem); 
     112        gtk_widget_show (fcreate_menuitem); 
     113        gtk_widget_show (fmove_menuitem); 
     114        gtk_widget_show (fdel_menuitem); 
     115        gtk_widget_show (GTK_WIDGET (menu)); 
     116 
     117        gtk_widget_show (GTK_WIDGET (menu_button)); 
     118 
     119        gtk_menu_prepend (menu, nmsg_menuitem); 
     120        gtk_menu_prepend (menu, fcreate_menuitem); 
     121        gtk_menu_prepend (menu, fmove_menuitem); 
     122        gtk_menu_prepend (menu, fdel_menuitem); 
     123 
     124        gtk_menu_attach_to_widget (menu, GTK_WIDGET (menu_button), NULL); 
     125 
     126        g_signal_connect (G_OBJECT (menu_button), "clicked", 
     127                G_CALLBACK (popup_the_actions_menu), menu); 
     128 
     129        g_signal_connect (G_OBJECT (nmsg_menuitem), "activate", 
     130                G_CALLBACK (tmut_menu_view_on_new_msg_activated), self); 
     131 
     132        g_signal_connect (G_OBJECT (fcreate_menuitem), "activate", 
     133                G_CALLBACK (tmut_menu_view_on_folder_create_activated), self); 
     134        g_signal_connect (G_OBJECT (fmove_menuitem), "activate", 
     135                G_CALLBACK (tmut_menu_view_on_folder_move_activated), self); 
     136        g_signal_connect (G_OBJECT (fdel_menuitem), "activate", 
     137                G_CALLBACK (tmut_menu_view_on_folder_delete_activated), self); 
     138 
     139        gtk_box_pack_start (GTK_BOX (self), GTK_WIDGET (menu_button), FALSE, TRUE, 0); 
     140 
     141        return; 
     142} 
     143 
     144 
    44145void  
    45146tmut_menu_view_set_active_account (TMutMenuView *self, TnyAccount *account) 
     
    144245        return; 
    145246} 
    146  
    147 static void  
    148 on_new_msg_clicked (GtkButton *button, gpointer user_data) 
    149 { 
    150         TMutMenuView *self = TMUT_MENU_VIEW (user_data); 
    151         TMutMenuViewPriv *priv = TMUT_MENU_VIEW_GET_PRIVATE (self); 
    152  
    153         return; 
    154 } 
    155  
    156247 
    157248 
     
    184275        gtk_widget_show (sw); 
    185276 
    186         priv->newmsg_button = GTK_BUTTON (gtk_button_new_with_label ("New message")); 
    187         gtk_widget_show (GTK_WIDGET (priv->newmsg_button)); 
    188         gtk_box_pack_start (GTK_BOX (vbox), GTK_WIDGET (priv->newmsg_button),  
    189                 FALSE, TRUE, 0); 
    190277 
    191278        priv->folders_treeview = GTK_TREE_VIEW (gtk_tree_view_new ()); 
     
    211298        g_signal_connect (G_OBJECT (priv->folders_treeview), "row-activated",  
    212299                G_CALLBACK (on_folder_changed), self); 
    213         g_signal_connect (G_OBJECT (priv->newmsg_button), "clicked",  
    214                 G_CALLBACK (on_new_msg_clicked), self); 
     300 
     301 
     302        TMUT_MENU_VIEW_GET_CLASS (self)->create_menu_func (self); 
    215303 
    216304        return; 
     
    271359 
    272360        object_class->finalize = tmut_menu_view_finalize; 
     361 
     362        class->create_menu_func = tmut_menu_view_create_menu_default; 
    273363 
    274364        g_type_class_add_private (object_class, sizeof (TMutMenuViewPriv)); 
  • trunk/src/tmut-menu-view.h

    r16 r21  
    4949{ 
    5050        GtkVBoxClass parent_class; 
     51 
     52        /* virtuals */ 
     53 
     54        /* Override this one if you want to provide your own menu items for 
     55         * rename folder, create folder, move&copy folder and delete folder.  
     56         * The construction of this type will call this. Note that @self here 
     57         * is a GtkVBox and that you can add your widgets to it. */ 
     58 
     59        void (*create_menu_func) (TMutMenuView *self); 
    5160}; 
    5261 
     
    5665void tmut_menu_view_set_active_account (TMutMenuView *self, TnyAccount *account); 
    5766 
     67/* Preimplemented handlers for your action performers */ 
     68void tmut_menu_view_on_folder_move_activated (GObject *sender, TMutMenuView *self); 
     69void tmut_menu_view_on_folder_create_activated (GObject *sender, TMutMenuView *self); 
     70void tmut_menu_view_on_folder_delete_activated (GObject *sender, TMutMenuView *self); 
     71void tmut_menu_view_on_new_msg_activated (GObject *sender, TMutMenuView *self); 
     72 
    5873G_END_DECLS 
    5974 
  • trunk/src/tmut-msg-view.c

    r20 r21  
    4444 
    4545void  
    46 tmut_msg_view_on_reply_clicked (GObject *sender, TMutMsgView *self) 
     46tmut_msg_view_on_reply_activated (GObject *sender, TMutMsgView *self) 
    4747{ 
    4848        TMutMsgViewPriv *priv = TMUT_MSG_VIEW_GET_PRIVATE (self); 
     
    5555 
    5656void  
    57 tmut_msg_view_on_forward_clicked (GObject *sender, TMutMsgView *self) 
     57tmut_msg_view_on_forward_activated (GObject *sender, TMutMsgView *self) 
    5858{ 
    5959        TMutMsgViewPriv *priv = TMUT_MSG_VIEW_GET_PRIVATE (self); 
     
    8484 
    8585        g_signal_connect (G_OBJECT (reply_button), "clicked", 
    86                 G_CALLBACK (tmut_msg_view_on_reply_clicked), self); 
     86                G_CALLBACK (tmut_msg_view_on_reply_activated), self); 
    8787        g_signal_connect (G_OBJECT (forward_button), "clicked", 
    88                 G_CALLBACK (tmut_msg_view_on_forward_clicked), self); 
     88                G_CALLBACK (tmut_msg_view_on_forward_activated), self); 
    8989 
    9090        return; 
  • trunk/src/tmut-msg-view.h

    r19 r21  
    6363 
    6464/* Preimplemented handlers for your action performers */ 
    65 void tmut_msg_view_on_reply_clicked (GObject *sender, TMutMsgView *self); 
    66 void tmut_msg_view_on_forward_clicked (GObject *sender, TMutMsgView *self); 
     65void tmut_msg_view_on_reply_activated (GObject *sender, TMutMsgView *self); 
     66void tmut_msg_view_on_forward_activated (GObject *sender, TMutMsgView *self); 
    6767 
    6868G_END_DECLS