[orca/new-settings] Changed the copy of dictionaries from reference to copy (a few more left behind).
- From: Juanje Ojeda Croissier <jojeda src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca/new-settings] Changed the copy of dictionaries from reference to copy (a few more left behind).
- Date: Mon, 1 Nov 2010 17:39:32 +0000 (UTC)
commit d82aa69a47c1bebc0aa3168c916c316834738981
Author: Juanje Ojeda <jojeda emergya es>
Date: Mon Nov 1 18:05:01 2010 +0100
Changed the copy of dictionaries from reference to copy (a few more left behind).
src/orca/backends/yaml_backend.py | 19 +++++++++++++------
1 files changed, 13 insertions(+), 6 deletions(-)
---
diff --git a/src/orca/backends/yaml_backend.py b/src/orca/backends/yaml_backend.py
index 9148b89..f2d8829 100644
--- a/src/orca/backends/yaml_backend.py
+++ b/src/orca/backends/yaml_backend.py
@@ -84,10 +84,10 @@ class Backend:
""" Load from config file all settings """
settingsFile = open(self.settingsFile)
prefs = load(settingsFile)
- self.general = prefs['general']
+ self.general = prefs['general'].copy()
self.pronunciations = prefs['pronunciations']
self.keybindings = prefs['keybindings']
- self.profiles = prefs['profiles']
+ self.profiles = prefs['profiles'].copy()
def getGeneral(self, profile='default'):
""" Get general settings from default settings and
@@ -129,21 +129,28 @@ class Backend:
generalSettings = self.getGeneral()
return generalSettings.get('firstStart', True)
+ def _setProfileKey(self, key, value):
+ self.general[key] = value
+
+ with open(self.settingsFile, 'r+') as settingsFile:
+ prefs = load(settingsFile)
+ prefs['general'][key] = value
+ dump(prefs, settingsFile)
+
def setFirstStart(self, value=False):
"""Set firstStart. This user-configurable settting is primarily
intended to serve as an indication as to whether or not initial
configuration is needed."""
-
- self._getSettings()
self.general['firstStart'] = value
+ self._setProfileKey('firstStart', value)
def availableProfiles(self):
- """ List available profiles. DEPRECATED? """
+ """ List available profiles. """
self._getSettings()
profiles = []
for profileName in self.profiles.keys():
- profileDict = self.profiles[profileName]
+ profileDict = self.profiles[profileName].copy()
profiles.append(profileDict.get('profile'))
return profiles
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]