class _ClientWindow(Window, ClientQueueMixin):
- def __init__(self, scope: _LogScope, **kwargs) -> None:
- self.scope = scope
+ def __init__(self, **kwargs) -> None:
super().__init__(**kwargs)
self._title = f'{self.client_id} :DEBUG'
self.windows: list[_ClientWindow] = []
def _new_win(self, scope: _LogScope, chatname: str = '') -> _ClientWindow:
- kwargs = {'scope': scope, 'win_cls': _ClientWindow}
if scope == _LogScope.CHAT:
- kwargs['win_cls'] = (
- _ChannelWindow if self.db.is_chan_name(chatname)
- else _QueryWindow)
- kwargs['chatname'] = chatname
- kwargs['get_nick_data'] = lambda: (self.db.users['me'].nick
- if 'me' in self.db.users.keys()
- else '?')
- win = self._tui_new_window(**kwargs)
+ win = self._tui_new_window(
+ win_cls=(_ChannelWindow if self.db.is_chan_name(chatname)
+ else _QueryWindow),
+ chatname=chatname,
+ get_nick_data=lambda: (self.db.users['me'].nick
+ if 'me' in self.db.users.keys()
+ else '?'))
+ else:
+ win = self._tui_new_window(win_cls=_ClientWindow)
self.windows += [win]
return win
ret = [w for w in self.windows
if w not in self.windows_for(_LogScope.DEBUG)]
elif scope == _LogScope.DEBUG:
- ret = [w for w in self.windows if w.scope == _LogScope.DEBUG]
+ ret = [w for w in self.windows if not isinstance(w, _ChatWindow)]
elif scope == _LogScope.CHAT:
ret = [w for w in self.windows
if isinstance(w, _ChatWindow) and w.chatname == id_]