aboutsummaryrefslogtreecommitdiffstats
path: root/solo-tool-project/src/solo_tool/handlers.py
diff options
context:
space:
mode:
Diffstat (limited to 'solo-tool-project/src/solo_tool/handlers.py')
-rw-r--r--solo-tool-project/src/solo_tool/handlers.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/solo-tool-project/src/solo_tool/handlers.py b/solo-tool-project/src/solo_tool/handlers.py
index ab7309e..0b38968 100644
--- a/solo-tool-project/src/solo_tool/handlers.py
+++ b/solo-tool-project/src/solo_tool/handlers.py
@@ -18,6 +18,14 @@ def changeSong(st: SoloTool, delta: int) -> Callable[[], None]:
st.song += delta
return f
+def restartOrPreviousSong(st: SoloTool, threshold: float) -> Callable[[], None]:
+ def f():
+ if st.position < threshold and st.song > 0:
+ st.song -= 1
+ else:
+ st.position = 0.0
+ return f
+
def setSong(st: SoloTool, index: int, followUp: Callable[[], None]=None) -> Callable[[], None]:
def f():
st.song = index