hide sensors in the application indicator
authorJean-Philippe Orsini <jeanfi@gmail.com>
Sat, 21 Jul 2012 18:38:37 +0000 (18:38 +0000)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Sat, 21 Jul 2012 18:38:37 +0000 (18:38 +0000)
24 files changed:
NEWS
po/de.po
po/fr.po
po/hu.po
po/it.po
po/lv.po
po/psensor.pot
po/pt_BR.po
po/ru.po
po/sl.po
po/sr.po
po/tr.po
po/uk.po
po/zh_CN.po
src/Makefile.in
src/cfg.c
src/cfg.h
src/lib/psensor.c
src/lib/psensor.h
src/main.c
src/ui_appindicator.c
src/ui_appindicator.h
src/ui_pref.c
src/ui_sensorpref.c

diff --git a/NEWS b/NEWS
index 1a9cda5..84f0f31 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,7 @@
 
 ** psensor: added latvian translation file.
 ** psensor: added gconf schema. (LP: #1026807)
+** psensor: hide sensors in the application indicator.
 
 * v0.7.0.1
 
index a1544e9..70c1c32 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-06-09 17:45+0000\n"
 "Last-Translator: Daniel Winzen <d@winzen4.de>\n"
 "Language-Team: German\n"
@@ -120,7 +120,7 @@ msgstr "Sensor-Einstellungen bearbeiten"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "N/V"
@@ -239,11 +239,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "U/min"
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -318,20 +318,20 @@ msgstr "Programmfehler melden an: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s-Website: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr "Fehlerdiagnosemodus wird aktiviert."
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Rufen Sie »%s --help« auf, um weitere Informationen zu erhalten.\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -494,7 +494,7 @@ msgstr "_Info"
 msgid "About"
 msgstr "Info"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr "Erstellen der Menüs ist gescheitert: %s"
@@ -559,6 +559,6 @@ msgstr "Temperaturalarm"
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Sensor-Name"
index ef33ece..35e07e7 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-05-13 18:15+0000\n"
 "Last-Translator: jeanfi <Unknown>\n"
 "Language-Team: French <>\n"
@@ -120,7 +120,7 @@ msgstr "Éditer La Configuration Des Sondes"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "N/A"
@@ -241,11 +241,11 @@ msgstr "Impossible d'ouvrir la connexion au serveur X11."
 msgid "Failed to retrieve NVIDIA information."
 msgstr "Échec de la récupération des information NVIDIA."
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -328,21 +328,21 @@ msgstr "Signaler les bugs à: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s page d’accueil: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 "Psensor n'a pas été compilé avec le support de surveillance à distance."
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr "Active le mode de débogage."
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Essayez `%s --help' pour plus d'informations.\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr "Une occurrence de Psensor existe déjà."
 
@@ -513,7 +513,7 @@ msgstr "À propos"
 msgid "About"
 msgstr "A propos"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr "La construction des menus a échouée: %s"
@@ -578,6 +578,6 @@ msgstr "Alerte thermique"
 msgid "Fan alert"
 msgstr "Alerte ventilateur"
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Nom De La Sonde"
index 9415b25..9d90870 100644 (file)
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-07-09 17:56+0000\n"
 "Last-Translator: Richard Somlói <ricsipontaz@gmail.com>\n"
 "Language-Team: Hungarian <gnome-hu-list-request@gnome.org>\n"
@@ -121,7 +121,7 @@ msgstr "Érzékelő beállításainak szerkesztése"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "---"
@@ -240,11 +240,11 @@ msgstr "Nem lehet létrehozni a kapcsolatot az X11 kiszolgálóval."
 msgid "Failed to retrieve NVIDIA information."
 msgstr "NVIDIA információinak lekérése meghiúsult."
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -324,20 +324,20 @@ msgstr "A talált hibákat itt jelentse be: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s honlap: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "A Psensor távoli érzékelők támogatása nélkül lett lefordítva."
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr "Hibakeresési mód engedélyezése."
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "További információkért adja ki a „%s --help” parancsot.\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr "A Psensors egy példánya már létezik."
 
@@ -503,7 +503,7 @@ msgstr "_Névjegy"
 msgid "About"
 msgstr "Névjegy"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr "menük építése meghiúsult: %s"
@@ -568,6 +568,6 @@ msgstr "Hőmérséklet riasztás"
 msgid "Fan alert"
 msgstr "Ventilátor riasztás"
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Érzékelő neve"
index 08ca42a..abce1b3 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-04-28 16:28+0000\n"
 "Last-Translator: <jeanfi@gmail.com>\n"
 "Language-Team: Italian\n"
@@ -120,7 +120,7 @@ msgstr ""
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr ""
@@ -238,11 +238,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr ""
 
@@ -307,20 +307,20 @@ msgstr ""
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -470,7 +470,7 @@ msgstr ""
 msgid "About"
 msgstr ""
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr ""
@@ -535,6 +535,6 @@ msgstr ""
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr ""
index ce09b34..f9fbd95 100644 (file)
--- a/po/lv.po
+++ b/po/lv.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-07-15 16:16+0000\n"
 "Last-Translator: tuxmaniack <Unknown>\n"
 "Language-Team: Latvian <lv@li.org>\n"
@@ -120,7 +120,7 @@ msgstr "Labot sensoru iestatījumus"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "N/P"
@@ -239,11 +239,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -308,20 +308,20 @@ msgstr "Ziņojiet kļūdas uz: %s.\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s mājas lapa: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -471,7 +471,7 @@ msgstr "P_ar"
 msgid "About"
 msgstr "Par"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr ""
@@ -536,6 +536,6 @@ msgstr "Temperatūras trauksme"
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Sensora nosaukums"
index 42b0a11..650d727 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -119,7 +119,7 @@ msgstr ""
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr ""
@@ -237,11 +237,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr ""
 
@@ -306,20 +306,20 @@ msgstr ""
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -469,7 +469,7 @@ msgstr ""
 msgid "About"
 msgstr ""
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr ""
@@ -534,6 +534,6 @@ msgstr ""
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr ""
index 38da51a..a6e2e8d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-06-25 13:26+0000\n"
 "Last-Translator: Rafael Neri <Unknown>\n"
 "Language-Team: Brazilian Portuguese\n"
@@ -120,7 +120,7 @@ msgstr ""
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "N/D"
@@ -239,11 +239,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "RPM"
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -313,20 +313,20 @@ msgstr "Relatar falhas para: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "Página inicial de %s: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr "Ativar o modo de depuração"
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Utilize `%s --help' para mais informações.\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr "Uma instancia de Psensor já existe."
 
@@ -480,7 +480,7 @@ msgstr "Sobre"
 msgid "About"
 msgstr "Sobre"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr "falha na montagem dos menus: %s"
@@ -545,6 +545,6 @@ msgstr ""
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr ""
index ed99d2f..1d9558a 100644 (file)
--- a/po/ru.po
+++ b/po/ru.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-05-13 18:15+0000\n"
 "Last-Translator: jeanfi <Unknown>\n"
 "Language-Team: Russian\n"
@@ -120,7 +120,7 @@ msgstr "Изменить параметры датчика"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "Н/Д"
@@ -239,11 +239,11 @@ msgstr "Ошибка открытия соединения к серверу X11
 msgid "Failed to retrieve NVIDIA information."
 msgstr "Ошибка получения информации NVIDIA."
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "об/мин"
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -315,20 +315,20 @@ msgstr "Сообщайте об ошибках на: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s домашняя страница: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr "Включает режим отладки."
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Попробуйте `%s --help' для дополнительной информации.↵\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -486,7 +486,7 @@ msgstr "_О программе"
 msgid "About"
 msgstr "О программе"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr "ошибка создания меню: %s"
@@ -551,6 +551,6 @@ msgstr "Уведомление температуры"
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Название датчика"
index 3b37f93..e3f4846 100644 (file)
--- a/po/sl.po
+++ b/po/sl.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-04-14 21:02+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Slovenian <sl@li.org>\n"
@@ -120,7 +120,7 @@ msgstr ""
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr ""
@@ -238,11 +238,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr ""
 
@@ -307,20 +307,20 @@ msgstr ""
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -470,7 +470,7 @@ msgstr ""
 msgid "About"
 msgstr ""
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr ""
@@ -535,6 +535,6 @@ msgstr ""
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr ""
index 609ade3..e90459c 100644 (file)
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-05-03 02:31+0000\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <sr@li.org>\n"
@@ -120,7 +120,7 @@ msgstr ""
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "Недоступно"
@@ -239,11 +239,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr ""
 
@@ -308,20 +308,20 @@ msgstr "Пријавите грешку на: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s матична страна: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Покушајте„%s --help“ за више информација.\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -471,7 +471,7 @@ msgstr "О _програму"
 msgid "About"
 msgstr "О програму"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr ""
@@ -536,6 +536,6 @@ msgstr ""
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Назив сензора"
index 2db6116..6960494 100644 (file)
--- a/po/tr.po
+++ b/po/tr.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-04-28 11:24+0000\n"
 "Last-Translator: zeugma <Unknown>\n"
 "Language-Team: Turkish <tr@li.org>\n"
@@ -120,7 +120,7 @@ msgstr "Tercihleri düzenle"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr ""
@@ -238,11 +238,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr ""
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr ""
 
@@ -307,20 +307,20 @@ msgstr "Hataları rapor et:%s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s ana sayfa: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Daha fazla bilgi için `%s --help' yazın.\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -470,7 +470,7 @@ msgstr ""
 msgid "About"
 msgstr ""
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr ""
@@ -535,6 +535,6 @@ msgstr ""
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Algılayıcı"
index 26d120f..86a06a1 100644 (file)
--- a/po/uk.po
+++ b/po/uk.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-05-13 18:15+0000\n"
 "Last-Translator: Ilya Volchanetskiy <Unknown>\n"
 "Language-Team: Ukrainian <uk@li.org>\n"
@@ -120,7 +120,7 @@ msgstr "Редагувати налаштування датчика"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "Н/Д"
@@ -239,11 +239,11 @@ msgstr ""
 msgid "Failed to retrieve NVIDIA information."
 msgstr ""
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "об/хв"
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -313,20 +313,20 @@ msgstr "Звітуйте про помилки до: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s домашня сторінка: <%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Спробуйте `%s --help' щоб отримати більше інформації.\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr ""
 
@@ -484,7 +484,7 @@ msgstr "_Про програму"
 msgid "About"
 msgstr "Про програму"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr "помилка створення меню: %s"
@@ -549,6 +549,6 @@ msgstr ""
 msgid "Fan alert"
 msgstr ""
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "Назва датчика"
index 4750327..b9b9336 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2012-07-20 12:13+0200\n"
+"POT-Creation-Date: 2012-07-21 20:37+0200\n"
 "PO-Revision-Date: 2012-06-14 07:28+0000\n"
 "Last-Translator: Wang Dianjin <Unknown>\n"
 "Language-Team: Chinese (simplified)\n"
@@ -120,7 +120,7 @@ msgstr "编辑传感器首选项"
 
 #: src/glade/sensor-edit.glade:102 src/glade/sensor-edit.glade:166
 #: src/glade/sensor-edit.glade:326 src/glade/sensor-edit.glade:422
-#: src/lib/psensor.c:470 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
+#: src/lib/psensor.c:472 src/ui_sensorlist.c:378 src/ui_sensorlist.c:379
 #: src/ui_sensorlist.c:380 src/ui_notify.c:81
 msgid "N/A"
 msgstr "不可用"
@@ -239,11 +239,11 @@ msgstr "无法打开到 X11 服务器的连接。"
 msgid "Failed to retrieve NVIDIA information."
 msgstr "无法获取 NVIDIA 信息。"
 
-#: src/lib/psensor.c:466 tests/test_psensor_type_to_unit_str.c:62
+#: src/lib/psensor.c:468 tests/test_psensor_type_to_unit_str.c:62
 msgid "RPM"
 msgstr "转速"
 
-#: src/lib/psensor.c:468
+#: src/lib/psensor.c:470
 msgid "%"
 msgstr "%"
 
@@ -319,20 +319,20 @@ msgstr "报告问题至:%s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s 主页:<%s>\n"
 
-#: src/main.c:455
+#: src/main.c:457
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor 不支持远程传感器。"
 
-#: src/main.c:518
+#: src/main.c:520
 msgid "Enables debug mode."
 msgstr "启用调试模式。"
 
-#: src/main.c:530 src/server/server.c:371
+#: src/main.c:532 src/server/server.c:371
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "试用‘%s --help’来获得更多信息。\n"
 
-#: src/main.c:543
+#: src/main.c:545
 msgid "A Psensor instance already exists."
 msgstr "已存在一个 Psensor 例程。"
 
@@ -493,7 +493,7 @@ msgstr "关于(_A)"
 msgid "About"
 msgstr "关于"
 
-#: src/ui.c:184 src/ui_appindicator.c:187 src/ui_graph.c:99
+#: src/ui.c:184 src/ui_appindicator.c:186 src/ui_graph.c:99
 #, c-format
 msgid "building menus failed: %s"
 msgstr "创建菜单失败:%s"
@@ -558,6 +558,6 @@ msgstr "温度报警"
 msgid "Fan alert"
 msgstr "风扇警报"
 
-#: src/ui_sensorpref.c:478
+#: src/ui_sensorpref.c:516
 msgid "Sensor Name"
 msgstr "传感器名称"
index 48fca43..5e41b79 100644 (file)
@@ -339,11 +339,10 @@ psensor_SOURCES = compat.h cfg.h cfg.c graph.h graph.c main.c ui.h \
        ui_sensorpref.h ui_sensorpref.c ui_status.h ui_status.c \
        $(am__append_4) $(am__append_7) $(am__append_16) \
        $(am__append_19)
-dist_man_MANS = psensor.1
-EXTRA_DIST = description.txt psensor.schemas
 schemadir = $(GCONF_SCHEMA_FILE_DIR)
-schema_in_files = psensor.schemas.in
 schema_DATA = psensor.schemas
+dist_man_MANS = psensor.1
+EXTRA_DIST = description.txt psensor.schemas
 all: all-recursive
 
 .SUFFIXES:
index 21989a7..37a75ae 100644 (file)
--- a/src/cfg.c
+++ b/src/cfg.c
@@ -33,6 +33,7 @@ static const char *ATT_SENSOR_ALARM_LOW_THRESHOLD = "alarm/low_threshold";
 static const char *ATT_SENSOR_COLOR = "color";
 static const char *ATT_SENSOR_ENABLED = "enabled";
 static const char *ATT_SENSOR_NAME = "name";
+static const char *ATT_SENSOR_APPINDICATOR_DISABLED = "appindicator/disabled";
 
 static const char *KEY_SENSOR_UPDATE_INTERVAL
 = "/apps/psensor/sensor/update_interval";
@@ -367,6 +368,34 @@ void config_set_sensor_name(const char *sid, const char *name)
        free(key);
 }
 
+unsigned int config_is_appindicator_enabled(const char *sid)
+{
+       char *key;
+       gboolean b;
+
+       key = get_sensor_att_key(sid, ATT_SENSOR_APPINDICATOR_DISABLED);
+       b = gconf_client_get_bool(client, key, NULL);
+       free(key);
+
+       return b == FALSE;
+}
+
+void config_set_appindicator_enabled(const char *sid, unsigned int enabled)
+{
+       char *key;
+       gboolean b;
+
+       if (enabled)
+               b = FALSE;
+       else
+               b = TRUE;
+
+       key = get_sensor_att_key(sid, ATT_SENSOR_APPINDICATOR_DISABLED);
+       gconf_client_set_bool(client, key, b, NULL);
+       free(key);
+}
+
+
 static int is_window_decoration_enabled()
 {
        gboolean b;
index 9c2a785..754880c 100644 (file)
--- a/src/cfg.h
+++ b/src/cfg.h
@@ -100,4 +100,7 @@ void config_set_sensor_enabled(const char *, int);
 char *config_get_sensor_name(const char *);
 void config_set_sensor_name(const char *, const char *);
 
+unsigned int config_is_appindicator_enabled(const char *);
+void config_set_appindicator_enabled(const char *, unsigned int);
+
 #endif
index 7853ddf..abacd9f 100644 (file)
@@ -61,6 +61,8 @@ struct psensor *psensor_create(char *id, char *name,
 
        psensor->color = NULL;
 
+       psensor->appindicator_enabled = 0;
+
        return psensor;
 }
 
index c9535b9..3b18a66 100644 (file)
@@ -109,6 +109,8 @@ struct psensor {
 #endif
 
        char *url;
+
+       unsigned int appindicator_enabled;
 };
 
 struct psensor *psensor_create(char *id,
index 5824b72..539d402 100644 (file)
@@ -322,6 +322,8 @@ static void associate_preferences(struct psensor **sensors)
                        s->name = n;
                }
 
+               s->appindicator_enabled = config_is_appindicator_enabled(s->id);
+
                sensor_cur++;
        }
 }
index 7eeb15e..5c3f66e 100644 (file)
@@ -34,7 +34,8 @@
 static const char *ICON = "psensor_normal";
 static const char *ATTENTION_ICON = "psensor_hot";
 
-static GtkMenuItem **sensor_menu_items;
+static struct psensor **sensors;
+static GtkMenuItem **menu_items;
 static int appindicator_supported = 1;
 static AppIndicator *indicator;
 static struct ui_psensor *ui_psensor;
@@ -128,9 +129,8 @@ static GtkActionEntry entries[] = {
 };
 static guint n_entries = G_N_ELEMENTS(entries);
 
-static void update_sensor_menu_item(GtkMenuItem *item,
-                                   struct psensor *s,
-                                   int use_celcius)
+static void
+update_menu_item(GtkMenuItem *item, struct psensor *s, int use_celcius)
 {
        gchar *str;
        double v;
@@ -150,16 +150,16 @@ static void update_sensor_menu_item(GtkMenuItem *item,
        g_free(str);
 }
 
-static void update_sensor_menu_items(struct psensor **sensors,
-                                    int use_celcius)
+static void update_menu_items(int use_celcius)
 {
-       int n, i;
+       struct psensor **s;
+       GtkMenuItem **m;
+
+       if (!sensors)
+               return ;
 
-       n = psensor_list_size(sensors);
-       for (i = 0; i < n; i++)
-               update_sensor_menu_item(sensor_menu_items[i],
-                                       sensors[i],
-                                       use_celcius);
+       for (s = sensors, m = menu_items; *s; s++, m++)
+               update_menu_item(*m, *s, use_celcius);
 }
 
 static GtkWidget *get_menu(struct ui_psensor *ui)
@@ -168,9 +168,9 @@ static GtkWidget *get_menu(struct ui_psensor *ui)
        GtkUIManager *menu_manager;
        GError *error;
        GtkMenu *menu;
-       int i;
-       int n = psensor_list_size(ui->sensors);
-       struct psensor **sensors = ui->sensors;
+       int i, n, j;
+       int celcius;
+       const char *name;
 
        action_group = gtk_action_group_new("PsensorActions");
        gtk_action_group_set_translation_domain(action_group, PACKAGE);
@@ -187,23 +187,31 @@ static GtkWidget *get_menu(struct ui_psensor *ui)
 
        menu = GTK_MENU(gtk_ui_manager_get_widget(menu_manager, "/MainMenu"));
 
-       sensor_menu_items = malloc(sizeof(GtkWidget *)*n);
-       for (i = 0; i < n; i++) {
-               struct psensor *s = sensors[i];
+       celcius  = ui->config->temperature_unit == CELCIUS;
+
+       n = psensor_list_size(ui->sensors);
+       menu_items = malloc(n * sizeof(GtkWidget *));
+       sensors = malloc((n + 1) * sizeof(struct psensor *));
+       for (i = 0, j = 0; i < n; i++) {
+               if (config_is_appindicator_enabled(ui->sensors[i]->id)) {
+                       sensors[j] = ui->sensors[i];
+                       name = sensors[j]->name;
 
-               sensor_menu_items[i]
-                       = GTK_MENU_ITEM(gtk_menu_item_new_with_label(s->name));
+                       menu_items[j] = GTK_MENU_ITEM
+                               (gtk_menu_item_new_with_label(name));
 
-               gtk_menu_shell_insert(GTK_MENU_SHELL(menu),
-                                     GTK_WIDGET(sensor_menu_items[i]),
-                                     i+2);
+                       gtk_menu_shell_insert(GTK_MENU_SHELL(menu),
+                                             GTK_WIDGET(menu_items[j]),
+                                             j+2);
 
-               update_sensor_menu_item
-                       (sensor_menu_items[i],
-                        s,
-                        ui->config->temperature_unit == CELCIUS);
+                       update_menu_item(menu_items[j], sensors[j], celcius);
+
+                       j++;
+               }
        }
 
+       sensors[j] = NULL;
+
        return GTK_WIDGET(menu);
 }
 
@@ -217,15 +225,14 @@ void ui_appindicator_update(struct ui_psensor *ui, unsigned int attention)
        status = app_indicator_get_status(indicator);
 
        if (!attention && status == APP_INDICATOR_STATUS_ATTENTION)
-               app_indicator_set_status
-                       (indicator, APP_INDICATOR_STATUS_ACTIVE);
+               app_indicator_set_status(indicator,
+                                        APP_INDICATOR_STATUS_ACTIVE);
 
        if (attention && status == APP_INDICATOR_STATUS_ACTIVE)
-               app_indicator_set_status
-                   (indicator, APP_INDICATOR_STATUS_ATTENTION);
+               app_indicator_set_status(indicator,
+                                        APP_INDICATOR_STATUS_ATTENTION);
 
-       update_sensor_menu_items(ui->sensors,
-                                ui->config->temperature_unit == CELCIUS);
+       update_menu_items(ui->config->temperature_unit == CELCIUS);
 }
 
 static GtkStatusIcon *unity_fallback(AppIndicator *indicator)
@@ -253,10 +260,18 @@ unity_unfallback(AppIndicator *indicator, GtkStatusIcon *status_icon)
        appindicator_supported = 1;
 }
 
-void ui_appindicator_init(struct ui_psensor *ui)
+void ui_appindicator_update_menu(struct ui_psensor *ui)
 {
        GtkWidget *menu;
 
+       menu = get_menu(ui);
+       app_indicator_set_menu(indicator, GTK_MENU(menu));
+
+       gtk_widget_show_all(menu);
+}
+
+void ui_appindicator_init(struct ui_psensor *ui)
+{
        ui_psensor = ui;
 
        indicator = app_indicator_new
@@ -270,10 +285,7 @@ void ui_appindicator_init(struct ui_psensor *ui)
        app_indicator_set_status(indicator, APP_INDICATOR_STATUS_ACTIVE);
        app_indicator_set_attention_icon(indicator, ATTENTION_ICON);
 
-       menu = get_menu(ui);
-       app_indicator_set_menu(indicator, GTK_MENU(menu));
-
-       gtk_widget_show_all(menu);
+       ui_appindicator_update_menu(ui);
 }
 
 int is_appindicator_supported()
@@ -283,5 +295,6 @@ int is_appindicator_supported()
 
 void ui_appindicator_cleanup()
 {
+       free(sensors);
        /* TODO: cleanup menu items. */
 }
index 19ab873..b764e61 100644 (file)
@@ -25,6 +25,7 @@
 #if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
 void ui_appindicator_init(struct ui_psensor *ui);
 void ui_appindicator_update(struct ui_psensor *ui, unsigned int attention);
+void ui_appindicator_update_menu(struct ui_psensor *ui);
 int is_appindicator_supported();
 void ui_appindicator_cleanup();
 #else
index cc4be17..bbca2a8 100644 (file)
@@ -143,7 +143,6 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
        gtk_combo_box_set_active(GTK_COMBO_BOX(w_temp_unit),
                                 cfg->temperature_unit);
 
-
        result = gtk_dialog_run(diag);
 
        if (result == GTK_RESPONSE_ACCEPT) {
index d5ef41f..0d7649f 100644 (file)
 #include "ui_sensorpref.h"
 #include "ui_color.h"
 
+#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
+#include "ui_appindicator.h"
+#endif
+
 struct sensor_pref {
        struct psensor *sensor;
        char *name;
@@ -34,6 +38,7 @@ struct sensor_pref {
        int alarm_enabled;
        int alarm_high_threshold;
        int alarm_low_threshold;
+       unsigned int appindicator_enabled;
 };
 
 struct cb_data {
@@ -65,6 +70,8 @@ static struct sensor_pref *sensor_pref_new(struct psensor *s,
                        = celcius_to_fahrenheit(s->alarm_low_threshold);
        }
 
+       p->appindicator_enabled = s->appindicator_enabled;
+
        return p;
 }
 
@@ -193,6 +200,18 @@ on_alarm_toggled(GtkToggleButton *btn, gpointer data)
                p->alarm_enabled = gtk_toggle_button_get_active(btn);
 }
 
+static void
+on_appindicator_toggled(GtkToggleButton *btn, gpointer data)
+{
+       struct cb_data *cbdata = data;
+       struct sensor_pref *p;
+
+       p = get_selected_sensor_pref(cbdata->builder, cbdata->prefs);
+
+       if (p)
+               p->appindicator_enabled = gtk_toggle_button_get_active(btn);
+}
+
 static void on_color_set(GtkColorButton *widget, gpointer data)
 {
        struct cb_data *cbdata = data;
@@ -258,6 +277,12 @@ static void connect_signals(GtkBuilder *builder, struct cb_data *cbdata)
                         "value-changed",
                         G_CALLBACK(on_alarm_low_threshold_changed),
                         cbdata);
+
+       g_signal_connect(gtk_builder_get_object(builder,
+                                               "indicator_checkbox"),
+                        "toggled",
+                        G_CALLBACK(on_appindicator_toggled),
+                        cbdata);
 }
 
 static void
@@ -268,7 +293,7 @@ update_pref(struct psensor *s,
 {
        GtkLabel *w_id, *w_type, *w_high_threshold_unit, *w_low_threshold_unit;
        GtkEntry *w_name;
-       GtkToggleButton *w_draw, *w_alarm;
+       GtkToggleButton *w_draw, *w_alarm, *w_appindicator_enabled;
        GtkColorButton *w_color;
        GtkSpinButton *w_high_threshold, *w_low_threshold;
        GdkColor *color;
@@ -317,6 +342,9 @@ update_pref(struct psensor *s,
                           psensor_type_to_unit_str(s->type,
                                                    use_celcius));
 
+       w_appindicator_enabled = GTK_TOGGLE_BUTTON
+               (gtk_builder_get_object(builder, "indicator_checkbox"));
+
        if (is_temp_type(s->type) || is_fan_type(s->type)) {
                gtk_toggle_button_set_active(w_alarm, p->alarm_enabled);
                gtk_spin_button_set_value(w_high_threshold,
@@ -326,6 +354,8 @@ update_pref(struct psensor *s,
                gtk_widget_set_sensitive(GTK_WIDGET(w_alarm), TRUE);
                gtk_widget_set_sensitive(GTK_WIDGET(w_high_threshold), TRUE);
                gtk_widget_set_sensitive(GTK_WIDGET(w_low_threshold), TRUE);
+               gtk_toggle_button_set_active(w_appindicator_enabled,
+                                            p->appindicator_enabled);
        } else {
                gtk_toggle_button_set_active(w_alarm, 0);
                gtk_spin_button_set_value(w_high_threshold, 0);
@@ -333,6 +363,8 @@ update_pref(struct psensor *s,
                gtk_widget_set_sensitive(GTK_WIDGET(w_alarm), FALSE);
                gtk_widget_set_sensitive(GTK_WIDGET(w_high_threshold), FALSE);
                gtk_widget_set_sensitive(GTK_WIDGET(w_low_threshold), FALSE);
+               gtk_toggle_button_set_active(w_appindicator_enabled,
+                                            !p->appindicator_enabled);
        }
 }
 
@@ -430,6 +462,12 @@ apply_prefs(struct sensor_pref **prefs,
                color_set(s->color,
                          p->color->red, p->color->green, p->color->blue);
                config_set_sensor_color(s->id, s->color);
+
+               if (s->appindicator_enabled != p->appindicator_enabled) {
+                       s->appindicator_enabled = p->appindicator_enabled;
+                       config_set_appindicator_enabled
+                               (s->id, s->appindicator_enabled);
+               }
        }
 }
 
@@ -502,6 +540,9 @@ void ui_sensorpref_dialog_run(struct psensor *sensor, struct ui_psensor *ui)
        if (result == GTK_RESPONSE_ACCEPT) {
                apply_prefs(cbdata.prefs, ui->sensors, ui->config);
                ui_sensorlist_update_sensors_preferences(ui);
+#if defined(HAVE_APPINDICATOR) || defined(HAVE_APPINDICATOR_029)
+               ui_appindicator_update_menu(ui);
+#endif
        }
 
        g_object_unref(G_OBJECT(builder));