From: Christian Heller Date: Thu, 7 Aug 2025 02:01:06 +0000 (+0200) Subject: Add /list to index available windows. X-Git-Url: https://plomlompom.com/repos/booking/%7B%7Bdb.prefix%7D%7D/%7B%7B%20web_path%20%7D%7D/%7B%7Bprefix%7D%7D/bar%20baz.html?a=commitdiff_plain;h=HEAD;p=ircplom Add /list to index available windows. --- diff --git a/ircplom/client_tui.py b/ircplom/client_tui.py index 9765ac3..f430b46 100644 --- a/ircplom/client_tui.py +++ b/ircplom/client_tui.py @@ -24,8 +24,8 @@ class _ClientWindow(Window, ClientQueueMixin): super().__init__(**kwargs) @property - def _status_title(self) -> str: - return f'{super()._status_title}|{self.client_id}|{self.stream}' + def status_title(self) -> str: + return f'{super().status_title}|{self.client_id}|{self.stream}' def _send_msg(self, verb: str, params: tuple[str, ...], **kwargs) -> None: self._client_trigger('send', msg=IrcMessage(verb=verb, params=params), diff --git a/ircplom/tui_base.py b/ircplom/tui_base.py index d5e0987..91fb95c 100644 --- a/ircplom/tui_base.py +++ b/ircplom/tui_base.py @@ -313,7 +313,7 @@ class Window(_Widget): return True @property - def _status_title(self) -> str: + def status_title(self) -> str: 'Window title to display in status line.' return str(self.idx) @@ -329,7 +329,7 @@ class Window(_Widget): for y, line in enumerate(lines): self._term.write(line, y) return False - title_box = f'[{self._status_title}]' + title_box = f'[{self.status_title}]' status_line = title_box + '=' * (self._term.size.x - len(title_box)) self.log.draw() self._term.write(status_line, self._y_status) @@ -500,6 +500,12 @@ class BaseTui(QueueMixin): for item in sorted(to_log): self._log.add(f' /{item}') + def cmd__list(self) -> None: + 'List available windows.' + self._log.add('windows available via /window:') + for win in self._windows: + self._log.add(f' {win.status_title}') + def cmd__quit(self) -> None: 'Trigger program exit.' self._put(QuitEvent())