From 17f28f938890b58dad9480f89924a21c3cd5ff3d Mon Sep 17 00:00:00 2001 From: Nikos Kouremenos <kourem@gmail.com> Date: Mon, 12 Dec 2005 13:00:46 +0000 Subject: [PATCH] add catching for links and emots in history window --- src/conversation_textview.py | 5 +++-- src/gtkgui.glade | 20 ++------------------ src/history_window.py | 27 +++++++-------------------- 3 files changed, 12 insertions(+), 40 deletions(-) diff --git a/src/conversation_textview.py b/src/conversation_textview.py index 03fc4914ff..8fe28418cc 100644 --- a/src/conversation_textview.py +++ b/src/conversation_textview.py @@ -624,11 +624,12 @@ def print_subject(self, subject): self.print_empty_line() def print_real_text(self, text, text_tags = [], name = None): - '''/me is replaces by name if name is given''' + '''this adds normal and special text. call this to add text''' buffer = self.get_buffer() - # detect urls formatting and if the user has it on emoticons + # /me is replaced by name if name is given if name and text.startswith('/me ') or text.startswith('/me\n'): text = '* ' + name + text[3:] + # detect urls formatting and if the user has it on emoticons index = self.detect_and_print_special_text(text, text_tags) # add the rest of text located in the index and after diff --git a/src/gtkgui.glade b/src/gtkgui.glade index 39bf1bd93e..0f03aae8f5 100644 --- a/src/gtkgui.glade +++ b/src/gtkgui.glade @@ -9025,7 +9025,7 @@ Custom</property> </child> <child> - <widget class="GtkScrolledWindow" id="scrolledwindow16"> + <widget class="GtkScrolledWindow" id="scrolledwindow"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> @@ -9034,23 +9034,7 @@ Custom</property> <property name="window_placement">GTK_CORNER_TOP_LEFT</property> <child> - <widget class="GtkTextView" id="history_textview"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">False</property> - <property name="overwrite">False</property> - <property name="accepts_tab">True</property> - <property name="justification">GTK_JUSTIFY_LEFT</property> - <property name="wrap_mode">GTK_WRAP_WORD</property> - <property name="cursor_visible">False</property> - <property name="pixels_above_lines">0</property> - <property name="pixels_below_lines">0</property> - <property name="pixels_inside_wrap">0</property> - <property name="left_margin">0</property> - <property name="right_margin">0</property> - <property name="indent">0</property> - <property name="text" translatable="yes"></property> - </widget> + <placeholder/> </child> </widget> <packing> diff --git a/src/history_window.py b/src/history_window.py index 6f5ae8bcba..162c93f0ba 100644 --- a/src/history_window.py +++ b/src/history_window.py @@ -30,6 +30,7 @@ import calendar import gtkgui_helpers +import conversation_textview from common import gajim from common import helpers @@ -65,7 +66,10 @@ def __init__(self, jid, account): self.window = xml.get_widget('history_window') self.calendar = xml.get_widget('calendar') - self.history_buffer = xml.get_widget('history_textview').get_buffer() + scrolledwindow = xml.get_widget('scrolledwindow') + self.history_textview = conversation_textview.ConversationTextview(account) + scrolledwindow.add(self.history_textview) + self.history_buffer = self.history_textview.get_buffer() self.query_entry = xml.get_widget('query_entry') self.search_button = xml.get_widget('search_button') query_builder_button = xml.get_widget('query_builder_button') @@ -114,23 +118,6 @@ def __init__(self, jid, account): # selected month is current month as calendar defaults to selecting # current date self.calendar.emit('month-changed') - - - tag = self.history_buffer.create_tag('incoming') - color = gajim.config.get('inmsgcolor') - tag.set_property('foreground', color) - - tag = self.history_buffer.create_tag('outgoing') - color = gajim.config.get('outmsgcolor') - tag.set_property('foreground', color) - - tag = self.history_buffer.create_tag('status') - color = gajim.config.get('statusmsgcolor') - tag.set_property('foreground', color) - - tag = self.history_buffer.create_tag('time_sometimes') - tag.set_property('foreground', 'grey') - tag.set_property('justification', gtk.JUSTIFY_CENTER) # select and show logs for last date we have logs with contact # and if we don't have logs at all, default to today @@ -297,9 +284,9 @@ def add_new_line(self, contact_name, tim, kind, show, message): message = message + '\n' if tag_msg: - buf.insert_with_tags_by_name(end_iter, message, tag_msg) + self.history_textview.print_real_text(message, tag_msg) else: - buf.insert(end_iter, message) + self.history_textview.print_real_text(message) def set_unset_expand_on_expander(self, widget): '''expander has to have expand to TRUE so scrolledwindow resizes properly -- GitLab