summaryrefslogtreecommitdiff
path: root/interface/render.py
diff options
context:
space:
mode:
authorBen Connors <benconnors@outlook.com>2019-10-30 13:15:07 -0400
committerBen Connors <benconnors@outlook.com>2019-10-30 13:15:07 -0400
commit2ffa83443b2333bef73f391517767259ad033495 (patch)
tree4fe27c74550263f4150d02344e8d8d43c08b0a47 /interface/render.py
parent91bbc033d03df9b71637fb6bb6ad9d8ec8bbfa9c (diff)
Implement live viewing of scenes when editing
Diffstat (limited to 'interface/render.py')
-rw-r--r--interface/render.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/interface/render.py b/interface/render.py
index 5b6c934..be7d770 100644
--- a/interface/render.py
+++ b/interface/render.py
@@ -9,6 +9,8 @@ from blc2.topology import Fixture
class Renderer:
def hold(self, values):
with self._lock:
+ if isinstance(values, dict):
+ values = values.items()
for c, v in values:
if v is None:
if c in self._hold:
@@ -20,6 +22,11 @@ class Renderer:
## If not, just update now
self._update()
+ def clear_hold(self):
+ with self._lock:
+ self._hold = {}
+ self.hold(())
+
def _update(self):
with self._lock:
self._values = {c: (v if c not in self._hold else self._hold[c]) for c, v in self._last.items()}