diff options
author | mathieui <mathieui@mathieui.net> | 2021-04-15 18:44:22 +0200 |
---|---|---|
committer | mathieui <mathieui@mathieui.net> | 2021-04-15 18:44:22 +0200 |
commit | a17e5a456b9bf1a949d9ed1d0d1df90013c69e6d (patch) | |
tree | cff15b765af64f8aed4ed860580a2c7d26c9bd38 /poezio/ui/render.py | |
parent | 56bab711924cd7a660c874abf40fd545693f8d98 (diff) | |
download | poezio-a17e5a456b9bf1a949d9ed1d0d1df90013c69e6d.tar.gz poezio-a17e5a456b9bf1a949d9ed1d0d1df90013c69e6d.tar.bz2 poezio-a17e5a456b9bf1a949d9ed1d0d1df90013c69e6d.tar.xz poezio-a17e5a456b9bf1a949d9ed1d0d1df90013c69e6d.zip |
internal: add a different class for UI messages
Diffstat (limited to 'poezio/ui/render.py')
-rw-r--r-- | poezio/ui/render.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/poezio/ui/render.py b/poezio/ui/render.py index f377df7f..0d1e8d2b 100644 --- a/poezio/ui/render.py +++ b/poezio/ui/render.py @@ -30,6 +30,7 @@ from poezio.ui.types import ( BaseMessage, Message, StatusMessage, + UIMessage, XMLLog, ) @@ -125,6 +126,29 @@ def write_pre(msg: BaseMessage, win: Win, with_timestamps: bool, nick_size: int) return 0 +@write_pre.register(UIMessage) +def write_pre_uimessage(msg: UIMessage, win: Win, with_timestamps: bool, nick_size: int) -> int: + """ Write the prefix of a ui message log + - timestamp (short or long) + - level + """ + color: Optional[Tuple] + offset = 0 + if with_timestamps: + offset += PreMessageHelpers.write_time(win, False, msg.time) + + if not msg.level: # not a message, nothing to do afterwards + return offset + + level = truncate_nick(msg.level, nick_size) + offset += poopt.wcswidth(level) + color = msg.color + PreMessageHelpers.write_nickname(win, level, color, False) + win.addstr('> ') + offset += 2 + return offset + + @write_pre.register(Message) def write_pre_message(msg: Message, win: Win, with_timestamps: bool, nick_size: int) -> int: """Write the part before the body: |