From 75f33bdba08a497f551ab0a9cfbed5a7ce541a57 Mon Sep 17 00:00:00 2001 From: Yann Lanthony Date: Mon, 5 Feb 2018 18:21:25 +0100 Subject: [PATCH] =?UTF-8?q?[graph]=C2=A0add=20Attribute.defaultValue()=20m?= =?UTF-8?q?ethod?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- meshroom/core/graph.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/meshroom/core/graph.py b/meshroom/core/graph.py index 7516374b..643fdc4b 100644 --- a/meshroom/core/graph.py +++ b/meshroom/core/graph.py @@ -258,8 +258,11 @@ class Attribute(BaseObject): return '"{}"'.format(self.value) return str(self.value) + def defaultValue(self): + return self.desc.value + def _isDefault(self): - return self._value == self.desc.value + return self._value == self.defaultValue() def getPrimitiveValue(self, exportDefault=True): return self._value @@ -336,6 +339,9 @@ class ListAttribute(Attribute): def getExportValue(self): return [attr.getExportValue() for attr in self._value] + def defaultValue(self): + return [] + def _isDefault(self): return len(self._value) == 0 @@ -397,6 +403,9 @@ class GroupAttribute(Attribute): def _isDefault(self): return all(v.isDefault for v in self._value) + def defaultValue(self): + return {key: attr.defaultValue() for key, attr in self._value.items()} + def getPrimitiveValue(self, exportDefault=True): if exportDefault: return {name: attr.getPrimitiveValue(exportDefault=exportDefault) for name, attr in self._value.items()} @@ -410,6 +419,7 @@ class GroupAttribute(Attribute): value = Property(Variant, Attribute._get_value, _set_value, notify=Attribute.valueChanged) isDefault = Property(bool, _isDefault, notify=Attribute.valueChanged) + class Edge(BaseObject): def __init__(self, src, dst, parent=None):