From: Armaan Bhojwani Date: Mon, 25 Jan 2021 15:52:34 +0000 (-0500) Subject: Create frame for display application X-Git-Tag: v0.1.0~26 X-Git-Url: https://git.armaanb.net/?p=lightcards.git;a=commitdiff_plain;h=4d692b09429dcb7cd07df169bf9cba1a70ea990d Create frame for display application --- diff --git a/src/display.py b/src/display.py new file mode 100755 index 0000000..2517e3b --- /dev/null +++ b/src/display.py @@ -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()