summaryrefslogtreecommitdiff
path: root/src/config.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/config.py')
-rw-r--r--src/config.py56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/config.py b/src/config.py
new file mode 100644
index 00000000..ed50f622
--- /dev/null
+++ b/src/config.py
@@ -0,0 +1,56 @@
+#!/usr/bin/python
+# -*- coding:utf-8 -*-
+#
+# Copyright 2009 chickenzilla
+# Copyright 2010 Le Coz Florent <louizatakk@fedoraproject.org>
+#
+# This file is part of Poezio.
+#
+# Poezio is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, version 3 of the License.
+#
+# Poezio is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Poezio. If not, see <http://www.gnu.org/licenses/>.
+
+from ConfigParser import RawConfigParser
+
+class Config(RawConfigParser):
+ """
+ load/save the config to a file
+ """
+ def __init__(self, file_name):
+ self.defsection = "Poezio"
+ self.file_name = file_name
+ RawConfigParser.__init__(self, None)
+ RawConfigParser.read(self, file_name)
+
+ def get(self, option):
+ return RawConfigParser.get(self, self.defsection, option)
+
+ def getint(self, option):
+ return int(self.get(option))
+
+ def getfloat(self, option):
+ return float(self.get(option))
+
+ def getboolean(self, option):
+ return RawConfigParser.getboolean(self, self.defsection, option)
+
+ def set(self, option, value):
+ RawConfigParser.set(self, self.defsection, option, value)
+
+ def save(self):
+ with copen(self.filename, "w", "utf-8", "ignore") as f:
+ RawConfigParser.write(self, f)
+
+ def setAndSave(self, option, value):
+ self.set(option, value)
+ self.save()
+
+config = Config('poezio.cfg')