]> git.armaanb.net Git - lightcards.git/commitdiff
Create frame for display application
authorArmaan Bhojwani <me@armaanb.net>
Mon, 25 Jan 2021 15:52:34 +0000 (10:52 -0500)
committerArmaan Bhojwani <me@armaanb.net>
Mon, 25 Jan 2021 15:52:34 +0000 (10:52 -0500)
src/display.py [new file with mode: 0755]

diff --git a/src/display.py b/src/display.py
new file mode 100755 (executable)
index 0000000..2517e3b
--- /dev/null
@@ -0,0 +1,56 @@
+#!/usr/bin/env python
+# Display flashcards
+# Armaan Bhojwani 2021
+
+from prompt_toolkit import Application
+from prompt_toolkit.layout.containers import VSplit, Window
+from prompt_toolkit.layout.controls import FormattedTextControl
+from prompt_toolkit.layout.layout import Layout
+from prompt_toolkit.key_binding import KeyBindings
+
+from tqdm import tqdm
+
+def disp_card():
+    root_container = VSplit([
+        Window(content=FormattedTextControl(text='Hello world')),
+    ])
+
+    layout = Layout(root_container)
+    kb = KeyBindings()
+
+    # Exit program
+    @kb.add('q')
+    @kb.add('c-q')
+    @kb.add('c-c')
+    @kb.add('c-z')
+    def exit_(event):
+        event.app.exit()
+
+    # Go to next card
+    @kb.add('l')
+    @kb.add('right')
+    def next_(event):
+        event.app.exit()
+
+    # Go to previous card
+    @kb.add('h')
+    @kb.add('left')
+    def back_(event):
+        event.app.exit()
+
+    # Flip card
+    @kb.add('space')
+    @kb.add('down')
+    @kb.add('up')
+    @kb.add('k')
+    @kb.add('j')
+    def back_(event):
+        event.app.exit()
+
+    # Help menu
+    @kb.add('?')
+    def help_(event):
+        event.app.exit()
+
+    app = Application(key_bindings=kb, layout=layout, full_screen=True)
+    app.run()