Store sensor properties into $HOME/.psensor/psensor.cfg instead of using GConf
authorJean-Philippe Orsini <jeanfi@gmail.com>
Thu, 5 Jun 2014 15:43:27 +0000 (17:43 +0200)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Thu, 5 Jun 2014 15:43:27 +0000 (17:43 +0200)
26 files changed:
NEWS
NEWS.html
configure
configure.ac
po/Makefile.in
po/POTFILES.in
po/de.po
po/es.po
po/fr.po
po/hu.po
po/it.po
po/lv.po
po/nl.po
po/psensor.pot
po/pt_BR.po
po/ru.po
po/sl.po
po/sr.po
po/sv.po
po/tr.po
po/uk.po
po/zh_CN.po
src/cfg.c
src/cfg.h
src/ui_sensorlist.c
src/ui_sensorpref.c

diff --git a/NEWS b/NEWS
index ecda156..d4c3144 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,12 @@
 Psensor NEWS
 ============
 
+v1.0.3
+------
+
+* sensor properties stored in +$HOME/.psensor/psensor.cfg+ instead of
+  GConf.
+
 v1.0.2
 ------
 
index ccf68c4..de81338 100644 (file)
--- a/NEWS.html
+++ b/NEWS.html
@@ -386,6 +386,19 @@ asciidoc.install();
 <div class="ulist"><ul>\r
 <li>\r
 <p>\r
+<code>psensor</code>:\r
+</p>\r
+<div class="ulist"><ul>\r
+<li>\r
+<p>\r
+sensor properties stored in <code>$HOME/.psensor/psensor.cfg</code> instead\r
+    of GConf.\r
+</p>\r
+</li>\r
+</ul></div>\r
+</li>\r
+<li>\r
+<p>\r
 <code>psensor-server</code>:\r
 </p>\r
 <div class="ulist"><ul>\r
@@ -2620,7 +2633,7 @@ Fixed BR1: crash when no temperature sensor is available
 <div id="footnotes"><hr /></div>\r
 <div id="footer">\r
 <div id="footer-text">\r
-Last updated 2014-06-03 08:22:21 CEST\r
+Last updated 2014-06-05 15:54:09 CEST\r
 </div>\r
 </div>\r
 </body>\r
index e5d44ca..a9a7187 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for psensor 1.0.1.
+# Generated by GNU Autoconf 2.69 for psensor 1.1.0.
 #
 # Report bugs to <jeanfi@gmail.com>.
 #
@@ -580,8 +580,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='psensor'
 PACKAGE_TARNAME='psensor'
-PACKAGE_VERSION='1.0.1'
-PACKAGE_STRING='psensor 1.0.1'
+PACKAGE_VERSION='1.1.0'
+PACKAGE_STRING='psensor 1.1.0'
 PACKAGE_BUGREPORT='jeanfi@gmail.com'
 PACKAGE_URL='http://wpitchoune.net/psensor'
 
@@ -1402,7 +1402,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures psensor 1.0.1 to adapt to many kinds of systems.
+\`configure' configures psensor 1.1.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1476,7 +1476,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of psensor 1.0.1:";;
+     short | recursive ) echo "Configuration of psensor 1.1.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1625,7 +1625,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-psensor configure 1.0.1
+psensor configure 1.1.0
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2048,7 +2048,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by psensor $as_me 1.0.1, which was
+It was created by psensor $as_me 1.1.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2865,7 +2865,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='psensor'
- VERSION='1.0.1'
+ VERSION='1.1.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -9949,7 +9949,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by psensor $as_me 1.0.1, which was
+This file was extended by psensor $as_me 1.1.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -10016,7 +10016,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-psensor config.status 1.0.1
+psensor config.status 1.1.0
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
index e37c81e..22aebcb 100644 (file)
@@ -2,7 +2,7 @@
 # Process this file with autoconf to produce a configure script.
 
 AC_PREREQ([2.69])
-AC_INIT([psensor], [1.0.1],[jeanfi@gmail.com],[psensor],[http://wpitchoune.net/psensor])
+AC_INIT([psensor], [1.1.0],[jeanfi@gmail.com],[psensor],[http://wpitchoune.net/psensor])
 
 AM_INIT_AUTOMAKE([-Wall gnu])
 
index 513fa31..f8784da 100644 (file)
@@ -11,7 +11,7 @@
 # Origin: gettext-0.16
 
 PACKAGE = psensor
-VERSION = 1.0.1
+VERSION = 1.1.0
 PACKAGE_BUGREPORT = jeanfi@gmail.com
 
 SHELL = /bin/sh
@@ -34,12 +34,12 @@ INSTALL_DATA = ${INSTALL} -m 644
 # We use $(mkdir_p).
 # In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as
 # "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions,
-# ${SHELL} /home/jporsini/work/psensor/install-sh does not start with $(SHELL), so we add it.
+# ${SHELL} /home/jporsini/work.local/psensor/install-sh does not start with $(SHELL), so we add it.
 # In automake >= 1.10, /bin/mkdir -p is derived from ${MKDIR_P}, which is defined
 # either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake
 # versions, $(mkinstalldirs) and $(install_sh) are unused.
-mkinstalldirs = $(SHELL) ${SHELL} /home/jporsini/work/psensor/install-sh -d
-install_sh = $(SHELL) ${SHELL} /home/jporsini/work/psensor/install-sh
+mkinstalldirs = $(SHELL) ${SHELL} /home/jporsini/work.local/psensor/install-sh -d
+install_sh = $(SHELL) ${SHELL} /home/jporsini/work.local/psensor/install-sh
 MKDIR_P = /bin/mkdir -p
 mkdir_p = /bin/mkdir -p
 
index abf0ea6..71ba7c7 100644 (file)
@@ -1,3 +1,4 @@
+src/cfg.c
 src/glade/psensor.glade
 src/glade/psensor-pref.glade
 src/glade/sensor-edit.glade
index adf7336..c46c983 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2014-04-30 16:48+0100\n"
 "Last-Translator: Jean-Philippe Orsini <jeanfi@gmail.com>\n"
 "Language-Team: German\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-02-11 20:01+0000\n"
 "X-Generator: Poedit 1.5.4\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Erzeugen des Webservers ist gescheitert."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Aktivieren der Sensorenprotokollierung ist gescheitert."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Info"
@@ -483,20 +502,20 @@ msgstr "Programmfehler melden an: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s-Website: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor wurde ohne Unterstützung für entfernte Sensoren kompiliert."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Fehlerdiagnosemodus wird aktiviert."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, 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:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Es existiert bereits eine Psensor-Instanz."
 
index 94ab010..fb632d8 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2013-05-12 22:16+0000\n"
 "Last-Translator: Javier <buik8roadmaster@hotmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2013-10-18 06:32+0000\n"
 "X-Generator: Launchpad (build 16799)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Fallo al crear el servidor Web"
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Error al activar el registro de sensores"
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Acerca de"
@@ -481,20 +500,20 @@ msgstr "Comunicar fallos: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s Página Oficial: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor no ha sido compilado con soporte para sensores remotos."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Activa el modo de depuración"
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Introducir `%s --ayuda' para obtener más información\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Ya existe un Psensor en ejecución."
 
index 84221ad..1339984 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2013-06-29 15:14+0000\n"
 "Last-Translator: londumas <helion331990@gmail.com>\n"
 "Language-Team: French <>\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2013-10-18 06:32+0000\n"
 "X-Generator: Launchpad (build 16799)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Échec de la création du serveur Web."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Échec de l'activation de la journalisation des capteurs."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "À propos"
@@ -482,21 +501,21 @@ msgstr "Signaler les bogues à: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s page d’accueil: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 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:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Active le mode de débogage."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Essayez « %s --help » pour plus d'informations.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Une instance de Psensor existe déjà."
 
index 8b95e70..2bfc136 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2012-10-29 09:41+0000\n"
 "Last-Translator: Bence Lukács <Unknown>\n"
 "Language-Team: Hungarian <gnome-hu-list-request@gnome.org>\n"
@@ -19,6 +19,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2013-01-21 09:32+0000\n"
 "X-Generator: Launchpad (build 16430)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Nem sikerült létrehozni a webkiszolgálót."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Érzékelők naplózásának aktiválása meghiúsult."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Névjegy"
@@ -479,20 +498,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:454
+#: src/main.c:450
 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:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Hibakeresési mód engedélyezése."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, 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:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "A Psensors egy példánya már létezik."
 
index 441a95f..3fd5b0f 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2013-04-14 16:06+0000\n"
 "Last-Translator: Diego Pierotto <Unknown>\n"
 "Language-Team: Italian\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2013-04-20 08:36+0000\n"
 "X-Generator: Launchpad (build 16567)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Impossibile creare il Web server."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Attivazione registro dei sensori fallita."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Informazioni su..."
@@ -480,20 +499,20 @@ msgstr "Segnalare i bug a: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s home page: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor è stato compilato senza il supporto per sensori remoti."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Abilita la modalità debug."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Usare '%s --help' per maggiori informazioni.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Esiste già un'istanza di Psensor"
 
index 78ba9d8..d116a9c 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2013-10-24 12:32+0000\n"
 "Last-Translator: tuxmaniack <Unknown>\n"
 "Language-Team: Latvian <lv@li.org>\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-02-11 20:01+0000\n"
 "X-Generator: Launchpad (build 16916)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Neizdevās izveidot tīmekļa serveri."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Neizdevās aktivizēt sensoru žurnalēšanu."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Par"
@@ -471,20 +490,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:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor nav kompilēts ar attālināto sensoru atbalstu."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Aktivizēt atkļūdošanas režīmu."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Mēģiniet `%s --help', lai iegūtu vairāk informācijas.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Psensor instance jau eksistē."
 
index 684df73..b05f1cc 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2014-04-07 08:50+0000\n"
 "Last-Translator: Pjotr12345 <Unknown>\n"
 "Language-Team: Dutch <nl@li.org>\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-04-09 22:52+0000\n"
 "X-Generator: Launchpad (build 16976)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Kon geen webserver maken."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Kon logboeken bijhouden niet inschakelen voor sensoren."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Over"
@@ -482,21 +501,21 @@ msgstr "Meld fouten aan: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "Webpagina van %s: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 "Psensor os niet gecompileerd met ondersteuning voor sensoren op afstand."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Schakelt foutopsporingsmodus in."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Probeer '%s --help' voor meer informatie.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Er bestaat reeds een instantie van Psensor."
 
index f1f02ab..049287c 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+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"
@@ -17,6 +17,25 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
+#: src/cfg.c:514
+#, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr ""
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, c-format
+msgid "Failed to save configuration file %s."
+msgstr ""
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr ""
@@ -461,20 +480,20 @@ msgstr ""
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr ""
 
index 72a05bc..ef1898c 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2013-09-01 18:54+0000\n"
 "Last-Translator: Celio Alves <Unknown>\n"
 "Language-Team: Brazilian Portuguese\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2013-10-18 06:32+0000\n"
 "X-Generator: Launchpad (build 16799)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Falhou ao criar servidor web."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, c-format
+msgid "Failed to save configuration file %s."
+msgstr ""
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Sobre"
@@ -468,20 +487,20 @@ msgstr "Relatar falhas para: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "Página inicial de %s: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Ativar o modo de depuração"
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Utilize `%s --help' para mais informações.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Uma instancia de Psensor já existe."
 
index c5df1e2..240d233 100644 (file)
--- a/po/ru.po
+++ b/po/ru.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 0.7.0.x\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2014-05-20 05:14+0000\n"
 "Last-Translator: Dmitry Serov <dmitri.s93@gmail.com>\n"
 "Language-Team: Russian\n"
@@ -19,6 +19,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-06-02 08:08+0000\n"
 "X-Generator: Launchpad (build 17031)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Не удалось создать веб-сервер."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Не удалось включить журналирование датчиков."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "О программе"
@@ -471,20 +490,20 @@ msgstr "Сообщайте об ошибках на: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s домашняя страница: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor не был собран с поддержкой удалённых датчиков."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Включает режим отладки."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Попробуйте `%s --help' для дополнительной информации.↵\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Копия Psensor уже запущена."
 
index 396987d..b740aa8 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2012-04-14 21:02+0000\n"
 "Last-Translator: Jean-Philippe Orsini <jeanfi@gmail.com>\n"
 "Language-Team: Slovenian <sl@li.org>\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2012-07-02 08:28+0000\n"
 "X-Generator: Launchpad (build 15520)\n"
 
+#: src/cfg.c:514
+#, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr ""
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, c-format
+msgid "Failed to save configuration file %s."
+msgstr ""
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr ""
@@ -462,20 +481,20 @@ msgstr ""
 msgid "%s home page: <%s>\n"
 msgstr ""
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr ""
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr ""
 
index 347465f..92ca36b 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+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"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2012-07-02 08:28+0000\n"
 "X-Generator: Launchpad (build 15520)\n"
 
+#: src/cfg.c:514
+#, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr ""
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, c-format
+msgid "Failed to save configuration file %s."
+msgstr ""
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "О програму"
@@ -462,20 +481,20 @@ msgstr "Пријавите грешку на: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s матична страна: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr ""
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr ""
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Покушајте„%s --help“ за више информација.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr ""
 
index 4cb8332..d3e9fdf 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor 1.0.0.0\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2014-06-01 13:09+0000\n"
 "Last-Translator: Josef Andersson <Unknown>\n"
 "Language-Team: Swedish\n"
@@ -21,6 +21,25 @@ msgstr ""
 "X-Generator: Launchpad (build 17031)\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Misslyckades med att skapa webbserver."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Misslyckades med att aktivera sensorloggning."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Om"
@@ -482,20 +501,20 @@ msgstr "Rapportera fel till: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s webbplats <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor har inte kompilerats med fjärrsensorstöd."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Aktivera felsökningsläge."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Prova`%s --help' för mer information.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Det finns redan en Psensor-instans."
 
index 7a1d690..6eb018a 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2013-11-24 08:42+0000\n"
 "Last-Translator: İbrahim Çelik <ibrahimcelik89@gmail.com>\n"
 "Language-Team: Turkish <tr@li.org>\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-02-11 20:01+0000\n"
 "X-Generator: Launchpad (build 16916)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Web sunucusu oluşturulamadı."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "Algılayıcıların günlük kaydı etkinleştirilemedi."
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Hakkında"
@@ -480,20 +499,20 @@ msgstr "Hataları rapor et:%s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s ana sayfa: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor, uzaktan algılayıcı desteği ile derlenmemiştir."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Hata ayıklama modunu etkinleştirir."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Daha fazla bilgi için `%s --help' yazın.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "Bir Psensor örneği zaten mevcut."
 
index 761b599..4c4feb7 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: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2012-10-13 16:24+0000\n"
 "Last-Translator: Ilya Volchanetskiy <Unknown>\n"
 "Language-Team: Ukrainian <uk@li.org>\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2013-01-21 09:32+0000\n"
 "X-Generator: Launchpad (build 16430)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "Не вдалося створити веб-сервер."
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, c-format
+msgid "Failed to save configuration file %s."
+msgstr ""
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "Про програму"
@@ -467,20 +486,20 @@ msgstr "Звітуйте про помилки до: %s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s домашня сторінка: <%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor не був зібраний з підтримкою віддалених датчиків."
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "Включає режим налагодження."
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "Спробуйте `%s --help' щоб отримати більше інформації.\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr ""
 
index 9e3b2b8..2617094 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psensor\n"
 "Report-Msgid-Bugs-To: jeanfi@gmail.com\n"
-"POT-Creation-Date: 2014-06-01 00:22+0200\n"
+"POT-Creation-Date: 2014-06-05 14:10+0200\n"
 "PO-Revision-Date: 2014-05-01 13:23+0000\n"
 "Last-Translator: Wang Dianjin <Unknown>\n"
 "Language-Team: Chinese (simplified)\n"
@@ -18,6 +18,25 @@ msgstr ""
 "X-Launchpad-Export-Date: 2014-06-02 08:08+0000\n"
 "X-Generator: Launchpad (build 17031)\n"
 
+#: src/cfg.c:514
+#, fuzzy, c-format
+msgid "Failed to create the directory %s: %s"
+msgstr "无法创建网络服务器。"
+
+#: src/cfg.c:564
+msgid "The configuration file does not exist."
+msgstr ""
+
+#: src/cfg.c:567
+#, c-format
+msgid "Failed to parse configuration file: %s"
+msgstr ""
+
+#: src/cfg.c:594
+#, fuzzy, c-format
+msgid "Failed to save configuration file %s."
+msgstr "无法激活监测器日志。"
+
 #: src/glade/psensor.glade:6
 msgid "About"
 msgstr "关于"
@@ -473,20 +492,20 @@ msgstr "报告问题至:%s\n"
 msgid "%s home page: <%s>\n"
 msgstr "%s 主页:<%s>\n"
 
-#: src/main.c:454
+#: src/main.c:450
 msgid "Psensor has not been compiled with remote sensor support."
 msgstr "Psensor 不支持远程传感器。"
 
-#: src/main.c:517
+#: src/main.c:513
 msgid "Enables debug mode."
 msgstr "启用调试模式。"
 
-#: src/main.c:529 src/server/server.c:380
+#: src/main.c:525 src/server/server.c:380
 #, c-format
 msgid "Try `%s --help' for more information.\n"
 msgstr "试用‘%s --help’来获得更多信息。\n"
 
-#: src/main.c:542
+#: src/main.c:538
 msgid "A Psensor instance already exists."
 msgstr "已存在一个 Psensor 例程。"
 
index 5db601c..6426937 100644 (file)
--- a/src/cfg.c
+++ b/src/cfg.c
 #include <pio.h>
 #include <plog.h>
 
-static const char *KEY_SENSORS = "/apps/psensor/sensors";
-
-static const char *ATT_SENSOR_ALARM_ENABLED = "alarm/enabled";
-static const char *ATT_SENSOR_ALARM_HIGH_THRESHOLD = "alarm/high_threshold";
-static const char *ATT_SENSOR_ALARM_LOW_THRESHOLD = "alarm/low_threshold";
+static const char *ATT_SENSOR_ALARM_ENABLED = "alarm_enabled";
+static const char *ATT_SENSOR_ALARM_HIGH_THRESHOLD = "alarm_high_threshold";
+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_GRAPH_ENABLED = "graph_enabled";
 static const char *ATT_SENSOR_NAME = "name";
-static const char *ATT_SENSOR_APPINDICATOR_DISABLED = "appindicator/disabled";
+static const char *ATT_SENSOR_APPINDICATOR_MENU_DISABLED
+= "appindicator_menu_disabled";
 static const char *ATT_SENSOR_APPINDICATOR_LABEL_ENABLED
-= "appindicator/menu/enabled";
+= "appindicator_label_enabled";
 
 static const char *ATT_SENSOR_POSITION = "position";
 
@@ -112,6 +111,10 @@ static GConfClient *client;
 
 static char *user_dir;
 
+static GKeyFile *key_file;
+
+static char *sensor_config_path;
+
 static char *get_string(const char *key, const char *default_value)
 {
        char *value;
@@ -243,232 +246,6 @@ static void set_foreground_color(const struct color *color)
        free(str);
 }
 
-static char *get_sensor_att_key(const char *sid, const char *att)
-{
-       char *esc_sid, *key;
-
-       esc_sid = gconf_escape_key(sid, -1);
-       /* [KEY_SENSORS]/[esc_sid]/[att] */
-       key = malloc(strlen(KEY_SENSORS)
-                    + 1 + 2 * strlen(esc_sid)
-                    + 1 + strlen(att) + 1);
-
-       sprintf(key, "%s/%s/%s", KEY_SENSORS, esc_sid, att);
-
-       free(esc_sid);
-
-       return key;
-}
-
-struct color *
-config_get_sensor_color(const char *sid, const struct color *dft)
-{
-       char *key, *scolor;
-       struct color *color;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_COLOR);
-
-       scolor = gconf_client_get_string(client, key, NULL);
-
-       color = NULL;
-
-       if (scolor)
-               color = str_to_color(scolor);
-
-       if (!scolor || !color) {
-               color = color_new(dft->red, dft->green, dft->blue);
-               scolor = color_to_str(color);
-               gconf_client_set_string(client, key, scolor, NULL);
-       }
-
-       free(scolor);
-       free(key);
-
-       return color;
-}
-
-void config_set_sensor_color(const char *sid, const struct color *color)
-{
-       char *key, *scolor;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_COLOR);
-       scolor = color_to_str(color);
-
-       gconf_client_set_string(client, key, scolor, NULL);
-
-       free(scolor);
-       free(key);
-}
-
-int config_get_sensor_alarm_high_threshold(const char *sid)
-{
-       int res;
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ALARM_HIGH_THRESHOLD);
-       res = gconf_client_get_int(client, key, NULL);
-       free(key);
-
-       return res;
-}
-
-void
-config_set_sensor_alarm_high_threshold(const char *sid, int threshold)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ALARM_HIGH_THRESHOLD);
-       gconf_client_set_int(client, key, threshold, NULL);
-       free(key);
-}
-
-int config_get_sensor_alarm_low_threshold(const char *sid)
-{
-       int res;
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ALARM_LOW_THRESHOLD);
-       res = gconf_client_get_int(client, key, NULL);
-       free(key);
-
-       return res;
-}
-
-void
-config_set_sensor_alarm_low_threshold(const char *sid, int threshold)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ALARM_LOW_THRESHOLD);
-       gconf_client_set_int(client, key, threshold, NULL);
-       free(key);
-}
-
-bool config_get_sensor_alarm_enabled(const char *sid)
-{
-       gboolean b;
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ALARM_ENABLED);
-       b = gconf_client_get_bool(client, key, NULL);
-       free(key);
-
-       return b;
-}
-
-void config_set_sensor_alarm_enabled(const char *sid, bool enabled)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ALARM_ENABLED);
-       gconf_client_set_bool(client, key, enabled, NULL);
-       free(key);
-}
-
-bool config_is_sensor_enabled(const char *sid)
-{
-       gboolean b;
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ENABLED);
-       b = gconf_client_get_bool(client, key, NULL);
-       free(key);
-
-       return b;
-}
-
-void config_set_sensor_enabled(const char *sid, bool enabled)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_ENABLED);
-       gconf_client_set_bool(client, key, enabled, NULL);
-       free(key);
-}
-
-char *config_get_sensor_name(const char *sid)
-{
-       char *name, *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_NAME);
-       name = gconf_client_get_string(client, key, NULL);
-       free(key);
-
-       return name;
-}
-
-void config_set_sensor_name(const char *sid, const char *name)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_NAME);
-       gconf_client_set_string(client, key, name, NULL);
-       free(key);
-}
-
-int config_get_sensor_position(const char *sid)
-{
-       char *key;
-       int pos;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_POSITION);
-       pos = gconf_client_get_int(client, key, NULL);
-       free(key);
-
-       return pos;
-}
-
-void config_set_sensor_position(const char *sid, int pos)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_POSITION);
-       gconf_client_set_int(client, key, pos, NULL);
-       free(key);
-}
-
-bool 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;
-}
-
-void config_set_appindicator_enabled(const char *sid, bool enabled)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_APPINDICATOR_DISABLED);
-       gconf_client_set_bool(client, key, !enabled, NULL);
-       free(key);
-}
-
-bool config_is_appindicator_label_enabled(const char *sid)
-{
-       char *key;
-       gboolean b;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_APPINDICATOR_LABEL_ENABLED);
-       b = gconf_client_get_bool(client, key, NULL);
-       free(key);
-
-       return b;
-}
-
-void config_set_appindicator_label_enabled(const char *sid, bool enabled)
-{
-       char *key;
-
-       key = get_sensor_att_key(sid, ATT_SENSOR_APPINDICATOR_LABEL_ENABLED);
-       gconf_client_set_bool(client, key, enabled, NULL);
-       free(key);
-}
-
 bool is_slog_enabled()
 {
        return gconf_client_get_bool(client, KEY_SLOG_ENABLED, NULL);
@@ -558,10 +335,22 @@ void config_cleanup()
                client = NULL;
        }
 
+       config_sync();
+
        if (user_dir) {
                free(user_dir);
                user_dir = NULL;
        }
+
+       if (key_file) {
+               g_key_file_free(key_file);
+               key_file = NULL;
+       }
+
+       if (sensor_config_path) {
+               free(sensor_config_path);
+               sensor_config_path = NULL;
+       }
 }
 
 struct config *config_load()
@@ -737,3 +526,255 @@ const char *get_psensor_user_dir()
 
        return user_dir;
 }
+
+static const char *get_sensor_config_path()
+{
+       const char *dir;
+
+       if (!sensor_config_path) {
+               dir = get_psensor_user_dir();
+
+               if (dir)
+                       sensor_config_path = path_append(dir, "psensor.cfg");
+       }
+
+       return sensor_config_path;
+}
+
+static GKeyFile *get_sensor_key_file()
+{
+       int ret;
+       GError *err;
+       const char *path;
+
+       if (!key_file) {
+               path = get_sensor_config_path();
+
+               key_file = g_key_file_new();
+
+               err = NULL;
+               ret = g_key_file_load_from_file(key_file,
+                                               path,
+                                               G_KEY_FILE_KEEP_COMMENTS
+                                               | G_KEY_FILE_KEEP_TRANSLATIONS,
+                                               &err);
+
+               if (!ret) {
+                       if (err->code == G_KEY_FILE_ERROR_NOT_FOUND) {
+                               log_fct(_("The configuration file "
+                                         "does not exist."));
+                       } else {
+                               log_err(_("Failed to parse configuration "
+                                         "file: %s"),
+                                       path);
+                       }
+               }
+       }
+
+       return key_file;
+}
+
+static void save_sensor_key_file()
+{
+       GKeyFile *kfile;
+       const char *path;
+       char *data;
+
+       log_fct_enter();
+
+       kfile = get_sensor_key_file();
+
+       data = g_key_file_to_data(kfile, NULL, NULL);
+
+       path = get_sensor_config_path();
+
+       if (!g_file_set_contents(path, data, -1, NULL))
+               log_err(_("Failed to save configuration file %s."), path);
+
+       free(data);
+
+       log_fct_exit();
+}
+
+void config_sync()
+{
+       log_fct_enter();
+       save_sensor_key_file();
+       log_fct_exit();
+}
+
+static void
+config_sensor_set_string(const char *sid, const char *att, const char *str)
+{
+       GKeyFile *kfile;
+
+       kfile = get_sensor_key_file();
+       g_key_file_set_string(kfile, sid, att, str);
+}
+
+static char *config_sensor_get_string(const char *sid, const char *att)
+{
+       GKeyFile *kfile;
+
+       kfile = get_sensor_key_file();
+       return g_key_file_get_string(kfile, sid, att, NULL);
+}
+
+static bool config_sensor_get_bool(const char *sid, const char *att)
+{
+
+       GKeyFile *kfile;
+
+       kfile = get_sensor_key_file();
+       return g_key_file_get_boolean(kfile, sid, att, NULL);
+}
+
+static void
+config_sensor_set_bool(const char *sid, const char *att, bool enabled)
+{
+       GKeyFile *kfile;
+
+       kfile = get_sensor_key_file();
+
+       g_key_file_set_boolean(kfile, sid, att, enabled);
+}
+
+static int config_sensor_get_int(const char *sid, const char *att)
+{
+
+       GKeyFile *kfile;
+
+       kfile = get_sensor_key_file();
+       return g_key_file_get_integer(kfile, sid, att, NULL);
+}
+
+static void
+config_sensor_set_int(const char *sid, const char *att, int i)
+{
+       GKeyFile *kfile;
+
+       kfile = get_sensor_key_file();
+
+       g_key_file_set_integer(kfile, sid, att, i);
+}
+
+char *config_get_sensor_name(const char *sid)
+{
+       return config_sensor_get_string(sid, ATT_SENSOR_NAME);
+}
+
+void config_set_sensor_name(const char *sid, const char *name)
+{
+       config_sensor_set_string(sid, ATT_SENSOR_NAME, name);
+}
+
+void config_set_sensor_color(const char *sid, const struct color *color)
+{
+       char *scolor;
+
+       scolor = color_to_str(color);
+
+       config_sensor_set_string(sid, ATT_SENSOR_COLOR, scolor);
+
+       free(scolor);
+}
+
+struct color *
+config_get_sensor_color(const char *sid, const struct color *dft)
+{
+       char *scolor;
+       struct color *color;
+
+       scolor = config_sensor_get_string(sid, ATT_SENSOR_COLOR);
+
+       if (scolor)
+               color = str_to_color(scolor);
+       else
+               color = NULL;
+
+       if (!color) {
+               color = color_new(dft->red, dft->green, dft->blue);
+               config_set_sensor_color(sid, color);
+       }
+
+       free(scolor);
+
+       return color;
+}
+
+bool config_is_sensor_enabled(const char *sid)
+{
+       return config_sensor_get_bool(sid, ATT_SENSOR_GRAPH_ENABLED);
+}
+
+void config_set_sensor_enabled(const char *sid, bool enabled)
+{
+       config_sensor_set_bool(sid, ATT_SENSOR_GRAPH_ENABLED, enabled);
+}
+
+int config_get_sensor_alarm_high_threshold(const char *sid)
+{
+       return config_sensor_get_int(sid, ATT_SENSOR_ALARM_HIGH_THRESHOLD);
+}
+
+void config_set_sensor_alarm_high_threshold(const char *sid, int threshold)
+{
+       config_sensor_set_int(sid, ATT_SENSOR_ALARM_HIGH_THRESHOLD, threshold);
+}
+
+int config_get_sensor_alarm_low_threshold(const char *sid)
+{
+       return config_sensor_get_int(sid, ATT_SENSOR_ALARM_LOW_THRESHOLD);
+}
+
+void config_set_sensor_alarm_low_threshold(const char *sid, int threshold)
+{
+       config_sensor_set_int(sid, ATT_SENSOR_ALARM_LOW_THRESHOLD, threshold);
+}
+
+bool config_is_appindicator_enabled(const char *sid)
+{
+       return !config_sensor_get_bool(sid,
+                                      ATT_SENSOR_APPINDICATOR_MENU_DISABLED);
+}
+
+void config_set_appindicator_enabled(const char *sid, bool enabled)
+{
+       return config_sensor_set_bool(sid,
+                                     ATT_SENSOR_APPINDICATOR_MENU_DISABLED,
+                                     !enabled);
+}
+
+int config_get_sensor_position(const char *sid)
+{
+       return config_sensor_get_int(sid, ATT_SENSOR_POSITION);
+}
+
+void config_set_sensor_position(const char *sid, int pos)
+{
+       return config_sensor_set_int(sid, ATT_SENSOR_POSITION, pos);
+}
+
+bool config_get_sensor_alarm_enabled(const char *sid)
+{
+       return config_sensor_get_bool(sid, ATT_SENSOR_ALARM_ENABLED);
+}
+
+void config_set_sensor_alarm_enabled(const char *sid, bool enabled)
+{
+       config_sensor_set_bool(sid, ATT_SENSOR_ALARM_ENABLED, enabled);
+}
+
+bool config_is_appindicator_label_enabled(const char *sid)
+{
+       return config_sensor_get_bool(sid,
+                                     ATT_SENSOR_APPINDICATOR_LABEL_ENABLED);
+}
+
+void config_set_appindicator_label_enabled(const char *sid, bool enabled)
+{
+       config_sensor_set_bool(sid,
+                              ATT_SENSOR_APPINDICATOR_LABEL_ENABLED,
+                              enabled);
+}
+
index 9ba4be9..d56f18b 100644 (file)
--- a/src/cfg.h
+++ b/src/cfg.h
@@ -132,4 +132,6 @@ void config_set_notif_script(const char *);
  */
 const char *get_psensor_user_dir();
 
+void config_sync();
+
 #endif
index f7200c1..4934518 100644 (file)
@@ -247,6 +247,7 @@ static int clicked_cbk(GtkWidget *widget, GdkEventButton *event, gpointer data)
                                            GTK_WINDOW(ui->main_window))) {
                                ui_sensorlist_update(ui, 1);
                                config_set_sensor_color(s->id, s->color);
+                               config_sync();
                        }
                } else if (coli >= 0 && coli != COL_ENABLED) {
                        menu = create_sensor_popup(ui, s);
index 463deda..9dd0b70 100644 (file)
@@ -396,6 +396,7 @@ static void apply_prefs(GtkTreeModel *model, struct config *cfg)
                valid = gtk_tree_model_iter_next(model, &iter);
                i++;
        }
+       config_sync();
 }
 
 void ui_sensorpref_dialog_run(struct psensor *sensor, struct ui_psensor *ui)