From 457bea2ff373b74c8cc4a424b562db8941469e60 Mon Sep 17 00:00:00 2001 From: Bryan Schumaker Date: Fri, 29 Apr 2011 08:19:17 -0400 Subject: [PATCH] libsaria: New preferences functions The new preferences code is much easier to work with. Rather than inheriting from a complicated tree class, I just set values in a python dictionary directly. --- libsaria/prefs.py | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/libsaria/prefs.py b/libsaria/prefs.py index e04bb23a..dec2fcbf 100644 --- a/libsaria/prefs.py +++ b/libsaria/prefs.py @@ -2,5 +2,27 @@ import storage -prefs = storage.load_file("preferences", dict) +FILE = "preferences" +prefs = storage.load_obj(FILE, dict) +save_enable = False +def save(): + if save_enable == True: + storage.save_obj(FILE, prefs) + +def enable_save(): + global save_enable + save_enable = True + save() + +def get(key): + return prefs.get(key, None) + +def set(key, value): + prefs[key] = value + save() + +def init(key, value): + val = prefs.setdefault(key, value) + save() + return val