From a516e78bcf76f07545310332290b6c5443d437a7 Mon Sep 17 00:00:00 2001 From: Florent Le Coz Date: Wed, 9 Mar 2011 04:56:53 +0100 Subject: Some optimizations in build_new_message. Also cleaned up. Added an optimized way to do "wcswidth(string) > n": wcsislonger. And should use less memory because the dict replacing Message and Lines object stores ONLY the needed attributes. --- src/message.py | 85 ---------------------------------------------------------- 1 file changed, 85 deletions(-) delete mode 100644 src/message.py (limited to 'src/message.py') diff --git a/src/message.py b/src/message.py deleted file mode 100644 index 004111d7..00000000 --- a/src/message.py +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 2010-2011 Le Coz Florent -# -# This file is part of Poezio. -# -# Poezio is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, version 3 of the License. -# -# Poezio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Poezio. If not, see . - -""" -Define the Message class -""" - -from datetime import datetime - -class Message(object): - """ - A message with all the associated data (nickname, time, color, etc) - The color can be a single number OR a list of numbers, for - specials cases like join or quit messages. - """ - def __init__(self, txt, time=None, nickname=None, nick_color=None, color=None, colorized=False, user=None): - """ - time is a datetime object, None means 'now'. - If no nickname is specified, it's an information. - """ - self.txt = txt - self.nickname = nickname - self.time = time - self.nick_color = nick_color - self.color = color - self.colorized = colorized - self.user = user - - def __repr__(self): - return "" % (self.txt, self.nickname, str(self.time), str(self.user), self.colorized) - - def __str__(self): - return self.__repr__() - -class Line(object): - """ - A line, corresponding to ONE row of a TextWin. - A message is composed of ONE line or MORE. - The same particularity for colors in Message class applies - here too. - Example: - - Text area limit text area limit - v v - |[12:12:01] nickone has just joined the room named | - | test@kikoo.louiz.org | - |[12:12:23] nickone> hello good morning everyone, I am| - | seeking for informations about | - | poezio | - |[12:12:35] secondnick> Hello nickone, you can get | - | informations here :\n | - | http://blablablabla | - - To get this result, the three messages should be converted to: - - Line(None, None, Datetime(12, 12, 01), "nickone has just joined the room named", 0, 10) - Line(None, None, None, "test@kikoo.louiz.org", 0, 10) - Line("nickone", 1, Datetime(12, 12, 23), "hello good morning everyone, I am", 0, 20) - Line(None, None, None, "seeking for informations about", 0, 20) - Line(None, None, None, "poezio", 0, 20) - Line("secondnick", 2, Datetime(12, 12, 35), "Hello nickone, you can get", 0, 23) - Line(None, None, None, "informations here:", 0, 23) - Line(None, None, None, "http://blablablabla", 0, 23) - """ - def __init__(self, nickname, nickname_color, time, text, text_color, text_offset, colorized=False): - self.nickname = nickname - self.nickname_color = nickname_color - self.time = time - self.text = text - self.text_color = text_color - self.text_offset = text_offset - self.colorized = colorized -- cgit v1.2.3