comparison src/buddy.c @ 4834:0ed37c803503

[gaim-migrate @ 5159] Bjoern Voigt writes: "I resolved the conflicts and added a new patch in the attachment. Besides this updates | I have updated the German translation and fixed some i18n bugs. Most | interesting is, that the new Gaim main menu now can be translated. As | a quick fix I added a new item_factory_translate_func function to | buddy.c. Now there are 2 static item_factory_translate_func functions | in buddy.c and gtkconv.c. If you are interested, I can clean this next | time (only one global function in gaim.h and utils.c). | The other i18n fixed mark some strings as translatable, for instance | in the "Get Buddy Info" message boxes. I included an i18n fix for src/util.c:for sec_to_text (seconds to text)." committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Wed, 19 Mar 2003 23:07:52 +0000
parents a6960b4b0c9b
children 3411fdaa54fa
comparison
equal deleted inserted replaced
4833:a6960b4b0c9b 4834:0ed37c803503
61 61
62 static void gaim_gtk_blist_selection_changed(GtkTreeSelection *selection, gpointer data); 62 static void gaim_gtk_blist_selection_changed(GtkTreeSelection *selection, gpointer data);
63 static void gaim_gtk_blist_update(struct gaim_buddy_list *list, GaimBlistNode *node); 63 static void gaim_gtk_blist_update(struct gaim_buddy_list *list, GaimBlistNode *node);
64 static char *gaim_get_tooltip_text(struct buddy *b); 64 static char *gaim_get_tooltip_text(struct buddy *b);
65 static GdkPixbuf *gaim_gtk_blist_get_status_icon(struct buddy *b, GaimStatusIconSize size); 65 static GdkPixbuf *gaim_gtk_blist_get_status_icon(struct buddy *b, GaimStatusIconSize size);
66 static char *item_factory_translate_func (const char *path, gpointer func_data);
66 67
67 /*************************************************** 68 /***************************************************
68 * Callbacks * 69 * Callbacks *
69 ***************************************************/ 70 ***************************************************/
70 71
532 "<StockItem>", GTK_STOCK_ADD }, 533 "<StockItem>", GTK_STOCK_ADD },
533 { N_("/Buddies/New _Instant Message..."), "<CTL>I", show_im_dialog, 0, 534 { N_("/Buddies/New _Instant Message..."), "<CTL>I", show_im_dialog, 0,
534 "<StockItem>", GAIM_STOCK_IM }, 535 "<StockItem>", GAIM_STOCK_IM },
535 { N_("/Buddies/Join a _Chat..."), "<CTL>C", join_chat, 0, 536 { N_("/Buddies/Join a _Chat..."), "<CTL>C", join_chat, 0,
536 "<StockItem>", GAIM_STOCK_CHAT }, 537 "<StockItem>", GAIM_STOCK_CHAT },
537 { N_("/Buddies/sep1"), NULL, NULL, 0, "<Separator>" }, 538 { "/Buddies/sep1", NULL, NULL, 0, "<Separator>" },
538 { N_("/Buddies/Get _User Info..."), "<CTL>J", show_info_dialog, 0, 539 { N_("/Buddies/Get _User Info..."), "<CTL>J", show_info_dialog, 0,
539 "<StockItem>", GAIM_STOCK_INFO }, 540 "<StockItem>", GAIM_STOCK_INFO },
540 { N_("/Buddies/sep2"), NULL, NULL, 0, "<Separator>" }, 541 { "/Buddies/sep2", NULL, NULL, 0, "<Separator>" },
541 { N_("/Buddies/_Signoff"), "<CTL>D", signoff_all, 0, NULL }, 542 { N_("/Buddies/_Signoff"), "<CTL>D", signoff_all, 0, NULL },
542 { N_("/Buddies/_Quit"), "<CTL>Q", do_quit, 0, 543 { N_("/Buddies/_Quit"), "<CTL>Q", do_quit, 0,
543 "<StockItem>", GTK_STOCK_QUIT }, 544 "<StockItem>", GTK_STOCK_QUIT },
544 545
545 /* Tools */ 546 /* Tools */
546 { N_("/_Tools"), NULL, NULL, 0, "<Branch>" }, 547 { N_("/_Tools"), NULL, NULL, 0, "<Branch>" },
547 { N_("/Tools/_Away"), NULL, NULL, 0, "<Branch>" }, 548 { N_("/Tools/_Away"), NULL, NULL, 0, "<Branch>" },
548 { N_("/Tools/Buddy _Pounce"), NULL, NULL, 0, "<Branch>" }, 549 { N_("/Tools/Buddy _Pounce"), NULL, NULL, 0, "<Branch>" },
549 { N_("/Tools/sep1"), NULL, NULL, 0, "<Separator>" }, 550 { "/Tools/sep1", NULL, NULL, 0, "<Separator>" },
550 { N_("/Tools/A_ccounts"), "<CTL>A", account_editor, 0, NULL }, 551 { N_("/Tools/A_ccounts"), "<CTL>A", account_editor, 0, NULL },
551 { N_("/Tools/Preferences"), "<CTL>P", show_prefs, 0, 552 { N_("/Tools/Preferences"), "<CTL>P", show_prefs, 0,
552 "<StockItem>", GTK_STOCK_PREFERENCES }, 553 "<StockItem>", GTK_STOCK_PREFERENCES },
553 { N_("/Tools/_File Transfers"), NULL, gaim_show_xfer_dialog, 0, 554 { N_("/Tools/_File Transfers"), NULL, gaim_show_xfer_dialog, 0,
554 "<StockItem>", GTK_STOCK_REVERT_TO_SAVED }, 555 "<StockItem>", GTK_STOCK_REVERT_TO_SAVED },
555 { N_("/Tools/sep2"), NULL, NULL, 0, "<Separator>" }, 556 { "/Tools/sep2", NULL, NULL, 0, "<Separator>" },
556 { N_("/Tools/P_rotocol Actions"), NULL, NULL, 0, "<Branch>" }, 557 { N_("/Tools/P_rotocol Actions"), NULL, NULL, 0, "<Branch>" },
557 { N_("/Tools/Pr_ivacy"), NULL, show_privacy_options, 0, NULL }, 558 { N_("/Tools/Pr_ivacy"), NULL, show_privacy_options, 0, NULL },
558 { N_("/Tools/View System _Log"), NULL, gtk_blist_show_systemlog_cb, 0, NULL }, 559 { N_("/Tools/View System _Log"), NULL, gtk_blist_show_systemlog_cb, 0, NULL },
559 560
560 /* Help */ 561 /* Help */
910 } 911 }
911 } 912 }
912 913
913 enum {DRAG_BUDDY, DRAG_ROW}; 914 enum {DRAG_BUDDY, DRAG_ROW};
914 915
916 static char *
917 item_factory_translate_func (const char *path, gpointer func_data)
918 {
919 return _(path);
920 }
921
915 static void gaim_gtk_blist_show(struct gaim_buddy_list *list) 922 static void gaim_gtk_blist_show(struct gaim_buddy_list *list)
916 { 923 {
917 GtkItemFactory *ift; 924 GtkItemFactory *ift;
918 GtkCellRenderer *rend; 925 GtkCellRenderer *rend;
919 GtkTreeViewColumn *column; 926 GtkTreeViewColumn *column;
939 946
940 g_signal_connect(G_OBJECT(gtkblist->window), "delete_event", G_CALLBACK(gaim_gtk_blist_destroy_cb), NULL); 947 g_signal_connect(G_OBJECT(gtkblist->window), "delete_event", G_CALLBACK(gaim_gtk_blist_destroy_cb), NULL);
941 948
942 /******************************* Menu bar *************************************/ 949 /******************************* Menu bar *************************************/
943 ift = gtk_item_factory_new(GTK_TYPE_MENU_BAR, "<GaimMain>", NULL); 950 ift = gtk_item_factory_new(GTK_TYPE_MENU_BAR, "<GaimMain>", NULL);
951 gtk_item_factory_set_translate_func (ift,
952 item_factory_translate_func,
953 NULL, NULL);
944 gtk_item_factory_create_items(ift, sizeof(blist_menu) / sizeof(*blist_menu), 954 gtk_item_factory_create_items(ift, sizeof(blist_menu) / sizeof(*blist_menu),
945 blist_menu, NULL); 955 blist_menu, NULL);
946 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), gtk_item_factory_get_widget(ift, "<GaimMain>"), FALSE, FALSE, 0); 956 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), gtk_item_factory_get_widget(ift, "<GaimMain>"), FALSE, FALSE, 0);
947 957
948 awaymenu = gtk_item_factory_get_widget(ift, "/Tools/Away"); 958 awaymenu = gtk_item_factory_get_widget(ift, N_("/Tools/Away"));
949 do_away_menu(); 959 do_away_menu();
950 960
951 bpmenu = gtk_item_factory_get_widget(ift, "/Tools/Buddy Pounce"); 961 bpmenu = gtk_item_factory_get_widget(ift, N_("/Tools/Buddy Pounce"));
952 do_bp_menu(); 962 do_bp_menu();
953 963
954 protomenu = gtk_item_factory_get_widget(ift, "/Tools/Protocol Actions"); 964 protomenu = gtk_item_factory_get_widget(ift, N_("/Tools/Protocol Actions"));
955 do_proto_menu(); 965 do_proto_menu();
956 966
957 /****************************** GtkTreeView **********************************/ 967 /****************************** GtkTreeView **********************************/
958 sw = gtk_scrolled_window_new(NULL,NULL); 968 sw = gtk_scrolled_window_new(NULL,NULL);
959 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); 969 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN);