summaryrefslogtreecommitdiff
path: root/tktest.py
diff options
context:
space:
mode:
authorBen Connors <benconnors@outlook.com>2019-01-31 00:29:16 -0500
committerBen Connors <benconnors@outlook.com>2019-01-31 00:29:16 -0500
commitb03927227e20959dec9c1e486555ca616af01f5e (patch)
treeac3e137f536bf1f3a52875529ddd1e1f9fe08b80 /tktest.py
parent152d81de2ffc45db2e36ae263ccdcc67216f885a (diff)
Some fixes
Diffstat (limited to 'tktest.py')
-rwxr-xr-xtktest.py19
1 files changed, 15 insertions, 4 deletions
diff --git a/tktest.py b/tktest.py
index d8f759c..8f9bf1e 100755
--- a/tktest.py
+++ b/tktest.py
@@ -4,16 +4,22 @@
import threading
import time
-from tkinter import Tk, N, E, S, W, Label
+from tkinter import Tk, N, E, S, W, Label, Button
import sys
from blc.workspace import Workspace
from blc.tk import TkOutput
from blc.render import BasicRenderer
-def update_time(m, l, r):
+def update(m, l, sl, r):
+ """Update GUI elements."""
+ if r.stall_lock.acquire(blocking=False):
+ r.stall_lock.release()
+ sl.config(text="Running")
+ else:
+ sl.config(text="Stalled")
l.config(text="%.1f" % ((time.monotonic() - r.start_time) if r.start_time is not None else 0))
- m.after(50, lambda: update_time(m,l,r))
+ m.after(50, lambda: update(m,l,sl,r))
if len(sys.argv) != 3:
print("Usage: %s <workspace> <show id>" % sys.argv[0])
@@ -32,12 +38,17 @@ output.grid(row=0, sticky=N+E+S+W)
label = Label(root)
label.grid(row=1,sticky=N+E+S+W)
+slabel = Label(root)
+slabel.grid(row=2,sticky=N+E+S+W)
+
root.wm_title("BLC+ TkTest - "+s.name)
renderer = BasicRenderer(s, output, minnx=13)
rthread = threading.Thread(target=renderer.start)
rthread.start()
-root.after(50, lambda: update_time(root, label, renderer))
+Button(root,text="Advance",command=lambda *args: renderer.advance()).grid(row=3, sticky=N+E+S+W)
+
+root.after(50, lambda: update(root, label, slabel, renderer))
root.mainloop()