Mercurial > projects > pk-update-icon
comparison main.c @ 8:58a3312a1c59
add internationalization support
add German translation
--HG--
rename : pk-update-icon.desktop => pk-update-icon.desktop.in
author | Guido Berhoerster <guido@berhoerster.name> |
---|---|
date | Tue, 11 Oct 2011 17:07:49 +0200 |
parents | f8ad23e60000 |
children | 0e50d3652326 |
comparison
equal
deleted
inserted
replaced
7:56a7ed833d0a | 8:58a3312a1c59 |
---|---|
1 /* | 1 /* |
2 * Copyright (C) 2011 Pavol Rusnak <stick@gk2.sk> | 2 * Copyright (C) 2011 Pavol Rusnak <stick@gk2.sk> |
3 * Copyright (C) 2011 Guido Berhoerster <gber@opensuse.org> | |
3 * | 4 * |
4 * Licensed under the GNU General Public License Version 2 | 5 * Licensed under the GNU General Public License Version 2 |
5 * | 6 * |
6 * This program is free software; you can redistribute it and/or modify | 7 * This program is free software; you can redistribute it and/or modify |
7 * it under the terms of the GNU General Public License as published by | 8 * it under the terms of the GNU General Public License as published by |
19 */ | 20 */ |
20 | 21 |
21 #include "main.h" | 22 #include "main.h" |
22 #include "notify.h" | 23 #include "notify.h" |
23 #include "packagekit.h" | 24 #include "packagekit.h" |
25 #include <locale.h> | |
26 #include <glib/gi18n.h> | |
24 #include <gtk/gtk.h> | 27 #include <gtk/gtk.h> |
25 | 28 |
26 struct UpdatesInfo info; | 29 struct UpdatesInfo info; |
27 | 30 |
28 GtkStatusIcon *tray_icon; | 31 GtkStatusIcon *tray_icon; |
41 | 44 |
42 void tray_icon_on_menu(GtkStatusIcon *status_icon, guint button, guint activate_time, gpointer user_data) | 45 void tray_icon_on_menu(GtkStatusIcon *status_icon, guint button, guint activate_time, gpointer user_data) |
43 { | 46 { |
44 GtkWidget *item; | 47 GtkWidget *item; |
45 GtkWidget *menu = gtk_menu_new(); | 48 GtkWidget *menu = gtk_menu_new(); |
46 item = gtk_menu_item_new_with_mnemonic("_Quit"); | 49 item = gtk_menu_item_new_with_mnemonic(_("_Quit")); |
47 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); | 50 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); |
48 g_signal_connect(G_OBJECT(item), "activate", G_CALLBACK(gtk_main_quit), user_data); | 51 g_signal_connect(G_OBJECT(item), "activate", G_CALLBACK(gtk_main_quit), user_data); |
49 gtk_widget_show(item); | 52 gtk_widget_show(item); |
50 g_object_ref(menu); | 53 g_object_ref(menu); |
51 g_object_ref_sink(menu); | 54 g_object_ref_sink(menu); |
59 { | 62 { |
60 tray_icon = gtk_status_icon_new(); | 63 tray_icon = gtk_status_icon_new(); |
61 g_signal_connect(G_OBJECT(tray_icon), "activate", G_CALLBACK(tray_icon_on_click), NULL); | 64 g_signal_connect(G_OBJECT(tray_icon), "activate", G_CALLBACK(tray_icon_on_click), NULL); |
62 g_signal_connect(G_OBJECT(tray_icon), "popup-menu", G_CALLBACK(tray_icon_on_menu), NULL); | 65 g_signal_connect(G_OBJECT(tray_icon), "popup-menu", G_CALLBACK(tray_icon_on_menu), NULL); |
63 gtk_status_icon_set_from_icon_name(tray_icon, "system-software-update"); | 66 gtk_status_icon_set_from_icon_name(tray_icon, "system-software-update"); |
64 gtk_status_icon_set_title(tray_icon, "Software Update"); | 67 gtk_status_icon_set_title(tray_icon, _("Software Update(s)")); |
65 gtk_status_icon_set_visible(tray_icon, TRUE); | 68 gtk_status_icon_set_visible(tray_icon, TRUE); |
66 return tray_icon; | 69 return tray_icon; |
67 } | 70 } |
68 | 71 |
69 gboolean periodic_check(gpointer user_data) | 72 gboolean periodic_check(gpointer user_data) |
82 | 85 |
83 int main(int argc, char **argv) | 86 int main(int argc, char **argv) |
84 { | 87 { |
85 GtkStatusIcon *tray_icon; | 88 GtkStatusIcon *tray_icon; |
86 | 89 |
90 setlocale(LC_ALL, ""); | |
91 bindtextdomain(PACKAGE, LOCALEDIR); | |
92 bind_textdomain_codeset(PACKAGE, "UTF-8"); | |
93 textdomain(PACKAGE); | |
94 | |
87 gtk_init(&argc, &argv); | 95 gtk_init(&argc, &argv); |
88 tray_icon = create_tray_icon(); | 96 tray_icon = create_tray_icon(); |
89 init_notify(); | 97 init_notify(); |
90 | 98 |
91 periodic_check(NULL); | 99 periodic_check(NULL); |