summaryrefslogtreecommitdiff
path: root/Pb_Api/Param/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'Pb_Api/Param/__init__.py')
-rw-r--r--Pb_Api/Param/__init__.py57
1 files changed, 35 insertions, 22 deletions
diff --git a/Pb_Api/Param/__init__.py b/Pb_Api/Param/__init__.py
index 62d05ea..362a3f7 100644
--- a/Pb_Api/Param/__init__.py
+++ b/Pb_Api/Param/__init__.py
@@ -1,25 +1,38 @@
-class Pb_Api_Param(object):
- def __init__(self, *args, **kwargs):
- self._name = kwargs['name']
- self._value = kwargs['value']
- def name(self):
- return self._name
- def required(self):
- return self._required
+import pprint
- def is_default(self, a=0):
- if a: self._is_default = 1
- return self._is_default
+class Pb_Api_Param(object):
+# def __init__(self, **kwargs):
+ def __init__(self, required=0, set_by_user=0, value=None, name=None, **kwargs):
+ self._value_default = None
+ self.name = name
+ self.required = required
+ self.is_ready = 0 #should I try that?
+ self.value = value
+ self.set_by_user = set_by_user
+ def __str__(self):
+ return pprint.pformat(vars(self))
- def value(self, *args, **kwargs):
- if len(args) >= 1:
- self._value = args[0]
- if 'default' in kwargs:
- self.is_default(1)
- self.is_ready(1)
- return self._value
+ def get_value(self):
+ if self.set_by_user == 1:
+ return self._value
+ return self._value_default
+ def set_value(self, value):
+ self._value = value
+ if not self._value is None:
+ self.is_ready = 1
+ self.set_by_user = 1 #like that? yeah also need method for setting default value
+ value = property(get_value, set_value)
- def is_ready(self, *args):
- if len(args) >= 1:
- self._is_ready = args[0]
- return self._is_ready or not self.required()
+ def default(self, value):
+ self._value_default = value
+
+ @property
+ def is_ready(self):
+ return self._is_ready or not self.required
+ @is_ready.setter
+ def is_ready(self, n):
+ self._is_ready = n
+
+
+ def randomize(self):
+ pass