summaryrefslogtreecommitdiff
path: root/interface/interface.py
diff options
context:
space:
mode:
Diffstat (limited to 'interface/interface.py')
-rw-r--r--interface/interface.py15
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),