diff options
Diffstat (limited to 'code/ui.py')
-rw-r--r-- | code/ui.py | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/code/ui.py b/code/ui.py index 0e48a68a..7d8fd828 100644 --- a/code/ui.py +++ b/code/ui.py @@ -1,4 +1,41 @@ +import curses class UI(): + def __init__(self, options): + self.scr = curses.initscr() + self.scr.leaveok(1) + curses.noecho() + curses.halfdelay(3) + + self.options = options + self.directories = None + self.pwd = None + self.cf = None + self.termsize = None + self.rows = 0 + self.cols = 0 + + def feed(self, directories, pwd, cf, termsize): + self.directories = directories + self.pwd = pwd + self.cf = cf + self.termsize = termsize + self.cols = termsize.x + self.rows = termsize.y + + def exit(self): + curses.nocbreak() + curses.echo() + curses.endwin() + def draw(self): import time - time.sleep(0.1) + self.scr.erase() + for i in range(1, len(self.pwd)): + self.scr.addstr(i, 0, self.pwd[i]) + self.scr.refresh() + + def get_next_key(self): + key = self.scr.getch() + curses.flushinp() + return key + |