summaryrefslogtreecommitdiff
path: root/Params/__init__.py
diff options
context:
space:
mode:
authoryo mama <pepper@scannerjammer.com>2015-09-19 16:13:31 -0700
committeryo mama <pepper@scannerjammer.com>2015-09-19 16:13:31 -0700
commit8f2230b7c866320e3839d6812b98b8370a7ec5d9 (patch)
treed3a9b450c42c39b20a1f13dcdf826c64b140b42e /Params/__init__.py
parent1d1889c9d909313499948d329f1b7826a51ed83c (diff)
ok all modules working
Diffstat (limited to 'Params/__init__.py')
-rw-r--r--Params/__init__.py49
1 files changed, 27 insertions, 22 deletions
diff --git a/Params/__init__.py b/Params/__init__.py
index 5f098a0..e3ba10b 100644
--- a/Params/__init__.py
+++ b/Params/__init__.py
@@ -32,29 +32,34 @@ class Params(object):
except AttributeError:
return None
- def definitions_import(self, d_hash, classname=""):
+ def definitions_import(self, def_dict, classkwargs, classname=""):
value = None
- for key in d_hash.keys():
+ for key in def_dict.keys():
try:
- if d_hash[key]['type'] == "bool":
- instance = ParamBool(d_hash[key], classname=classname)
- elif d_hash[key]['type'] == "color":
- instance = ParamColor(d_hash[key], classname=classname)
- elif d_hash[key]['type'] == "enum":
- instance = ParamEnum(d_hash[key], enum_values=d_hash[key]['enum_values'], classname=classname)
- elif d_hash[key]['type'] == "float":
- instance = ParamFloat(d_hash[key], classname=classname)
- elif d_hash[key]['type'] == "img_url":
- instance = ParamImg_url(d_hash[key], classname=classname)
- elif d_hash[key]['type'] == "int":
- instance = ParamInt(d_hash[key], classname=classname)
- elif d_hash[key]['type'] == "json":
- instance = ParamJson(d_hash[key], classname=classname)
- elif d_hash[key]['type'] == "raw":
- instance = ParamRaw(d_hash[key], classname=classname)
- elif d_hash[key]['type'] == "string":
- instance = ParamString(d_hash[key], classname=classname)
- self.__setattr__(key, instance.value)
+ value = None
+ if key in classkwargs:
+ value = classkwargs[key]
+ elif 'default' in def_dict[key]:
+ value = def_dict[key]['default']
+ if def_dict[key]['type'] == "bool":
+ instance = ParamBool(value, classname=classname)
+ elif def_dict[key]['type'] == "color":
+ instance = ParamColor(value, classname=classname)
+ elif def_dict[key]['type'] == "enum":
+ instance = ParamEnum(value, enum_values=def_dict[key]['enum_values'], classname=classname)
+ elif def_dict[key]['type'] == "float":
+ instance = ParamFloat(value, classname=classname)
+ elif def_dict[key]['type'] == "img_url":
+ instance = ParamImg_url(value, key=key, classname=classname)
+ elif def_dict[key]['type'] == "int":
+ instance = ParamInt(value, classname=classname)
+ elif def_dict[key]['type'] == "json":
+ instance = ParamJson(value, classname=classname)
+ elif def_dict[key]['type'] == "raw":
+ instance = ParamRaw(value, classname=classname)
+ elif def_dict[key]['type'] == "string":
+ instance = ParamString(value, classname=classname)
+ self.__setattr__(key, instance)
except Exception as e:
- self.err_warn("key: %s value: %s" % (key, str(d_hash[key])), error=str(e))
+ self.err_warn("key: %s value: %s" % (key, str(def_dict[key])), error=str(e))