summaryrefslogtreecommitdiff
path: root/caribou/settings
diff options
context:
space:
mode:
authorEitan Isaacson <eitan@monotonous.org>2011-05-03 16:31:46 -0700
committerEitan Isaacson <eitan@monotonous.org>2011-05-05 15:29:06 -0400
commitb1ba682af01576f294e71872551f576519627a30 (patch)
tree0ac5c8b49f84d92f9803a29756c7918388e67c2c /caribou/settings
parent39ded91b1ab0cd88a2700c3391a4dfc1d20bb1ed (diff)
downloadcaribou-b1ba682af01576f294e71872551f576519627a30.tar.gz
Make SettingsManager singleton
Diffstat (limited to 'caribou/settings')
-rw-r--r--caribou/settings/setting_types.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/caribou/settings/setting_types.py b/caribou/settings/setting_types.py
index b0e374d..f58e2bb 100644
--- a/caribou/settings/setting_types.py
+++ b/caribou/settings/setting_types.py
@@ -58,10 +58,13 @@ class SettingsTopGroup(SettingsGroup):
SettingsGroup.__init__(self, "_top", label, children)
self.path = path
self.schema_id = schema_id
+ self._manager = None
def __call__(self):
- from caribou.settings.settings_manager import SettingsManager
- return SettingsManager(self)
+ if self._manager is None:
+ from caribou.settings.settings_manager import SettingsManager
+ self._manager = SettingsManager(self)
+ return self._manager
class ValueSetting(Setting):
variant_type = ''