From cca5ebf6a06a17abb4bde9cf1b72bbe20aab71ea Mon Sep 17 00:00:00 2001 From: Christian Heller Date: Tue, 5 Aug 2025 02:50:07 +0200 Subject: [PATCH] Expand window titles in status line. --- ircplom/client_tui.py | 4 ++++ ircplom/tui_base.py | 9 +++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ircplom/client_tui.py b/ircplom/client_tui.py index 6245571..eed3137 100644 --- a/ircplom/client_tui.py +++ b/ircplom/client_tui.py @@ -44,6 +44,10 @@ class _ClientWindow(Window, ClientQueueMixin): self.chat = chat super().__init__(**kwargs) + @property + def status_title(self) -> str: + return f'{super().status_title}|{self.client_id}|{self.chat}' + def cmd__disconnect(self, quit_msg: str = 'ircplom says bye') -> None: 'Send QUIT command to server.' self._cput(SendEvent, diff --git a/ircplom/tui_base.py b/ircplom/tui_base.py index 5a758d6..d084df6 100644 --- a/ircplom/tui_base.py +++ b/ircplom/tui_base.py @@ -313,6 +313,11 @@ class Window(_Widget): self.prompt.set_geometry(_YX(self._term.size.y - 1, self._term.size.x)) return True + @property + def status_title(self) -> str: + 'Window title to display in status line.' + return str(self.idx) + def draw(self) -> bool: self._term.clear() if not super().draw(): @@ -325,8 +330,8 @@ class Window(_Widget): for y, line in enumerate(lines): self._term.write(line, y) return False - idx_box = f'[{self.idx}]' - status_line = idx_box + '=' * (self._term.size.x - len(idx_box)) + 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) self.prompt.draw() -- 2.30.2