diff options
Diffstat (limited to 'interface/interface.py')
-rw-r--r-- | interface/interface.py | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/interface/interface.py b/interface/interface.py index b838b08..65cd1d2 100644 --- a/interface/interface.py +++ b/interface/interface.py @@ -18,6 +18,7 @@ from blc2.workspace import Workspace from .globals import CURSES_LOCK from .input.tabcomp import Input from .channelbank import ChannelBank +from .chaserview import ChaserView from .pager import Pager def wrap_curses(f): @@ -40,21 +41,25 @@ class Interface: (ht, width), (0, 0), (4, wr), (height-4, wl+1), (hb - 4, wr), (ht, wl+1), + (hb, wl//2 - 1), (ht, 0), + (hb, wl - (wl//2)), (ht, wl//2) ) def _resize(self): - for a, f in zip(self._compute_sizes(*self.stdscr.getmaxyx()), (self.channel_bank.set_dim, self.channel_bank.set_pos, self.input.set_dim, self.input.set_pos, self.pager.set_dim, self.pager.set_pos)): + for a, f in zip(self._compute_sizes(*self.stdscr.getmaxyx()), (self.channel_bank.set_dim, self.channel_bank.set_pos, self.input.set_dim, self.input.set_pos, self.pager.set_dim, self.pager.set_pos, self.chaser_views[0].set_dim, self.chaser_views[0].set_pos, self.chaser_views[1].set_dim, self.chaser_views[1].set_pos)): f(*a) @wrap_curses def main(self, stdscr): height, width = stdscr.getmaxyx() self.stdscr = stdscr - cbd, cbp, ind, inp, pgd, pgp = self._compute_sizes(height, width) + cbd, cbp, ind, inp, pgd, pgp, cv0d, cv0p, cv1d, cv1p = self._compute_sizes(height, width) self.channel_bank = ChannelBank(*cbp, *cbd) self.input = Input(*inp, *ind) self.input.context = self.context_base self.pager = Pager(*pgp, *pgd) + self.chaser_views[0] = ChaserView(*cv0p, *cv0d) + self.chaser_views[1] = ChaserView(*cv1p, *cv1d) todisp = [ "=== Welcome to BLC2!", @@ -156,7 +161,9 @@ class Interface: with self.w_lock: td = ["FIXTURES:"] for f in sorted(self.w.fixtures.values(), key=lambda a: a.id): - td.append("- %03d; %3dc: %s" % (f.id, len(f.channels), f.name)) + td.append("- %03d: %s" % (f.id, f.name)) + for c in f.channels: + td.append(" %03d-%03d: %s" % (f.id, c.id, c.name)) self.pager.display_many(td, split=True) def list_functions(self, typ): @@ -214,6 +221,8 @@ class Interface: self.w_lock = threading.RLock() + self.chaser_views = [None, None] + self.context_base = Input.parse_context(( ("edit $num", self.base_edit), ("delete $num", self.base_delete), |