changeset b7c54367355b in /home/hg/repos/gajim
details:http://hg.gajim.org/gajim?cmd=changeset;node=b7c54367355b description: fix history window
diffstat:
data/gui/history_window.ui | 85 +++++++++++++++++++++++---------------------- src/history_window.py | 81 ++++++++++++++----------------------------- 2 files changed, 71 insertions(+), 95 deletions(-)
diffs (truncated from 443 to 300 lines):
diff -r e35d4ab1480a -r b7c54367355b data/gui/history_window.ui --- a/data/gui/history_window.ui Thu Jan 03 23:31:26 2013 +0400 +++ b/data/gui/history_window.ui Thu Jan 03 23:30:17 2013 +0100 @@ -1,63 +1,49 @@ -<?xml version="1.0"?> +<?xml version="1.0" encoding="UTF-8"?> <interface> - <requires lib="gtk+" version="2.16"/> - <!-- interface-naming-policy toplevel-contextual --> - <object class="GtkListStore" id="liststore1"> - <columns> - <!-- column-name item --> - <column type="gchararray"/> - </columns> - <data> - <row> - <col id="0" translatable="yes">Enter JID or Contact name</col> - </row> - <row> - <col id="0" translatable="yes">Groupchat Histories</col> - </row> - <row> - <col id="0" translatable="yes">All Chat Histories</col> - </row> - </data> - </object> + <!-- interface-requires gtk+ 3.0 --> <object class="GtkWindow" id="history_window"> + <property name="can_focus">False</property> <property name="title" translatable="yes">Conversation History</property> <property name="role">history</property> <property name="default_width">650</property> <property name="default_height">450</property> - <signal name="destroy" handler="on_history_window_destroy"/> - <signal name="key_press_event" handler="on_history_window_key_press_event"/> + <signal name="destroy" handler="on_history_window_destroy" swapped="no"/> + <signal name="key-press-event" handler="on_history_window_key_press_event" swapped="no"/> <child> <object class="GtkVBox" id="vbox"> <property name="visible">True</property> + <property name="can_focus">False</property> <property name="border_width">12</property> - <property name="orientation">vertical</property> <property name="spacing">6</property> <child> <object class="GtkVBox" id="vbox1"> <property name="visible">True</property> + <property name="can_focus">False</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="orientation">vertical</property> <property name="spacing">6</property> <child> <object class="GtkHBox" id="hbox1"> <property name="visible">True</property> + <property name="can_focus">False</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="spacing">6</property> <child> - <object class="GtkComboBoxEntry" id="query_combobox"> - <property name="visible">True</property> - <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> - <property name="model">liststore1</property> - <property name="text_column">0</property> - <signal name="changed" handler="on_query_combobox_changed"/> + <object class="GtkEntry" id="query_entry"> + <property name="can_focus">True</property> + <property name="invisible_char">●</property> + <property name="invisible_char_set">True</property> + <property name="placeholder_text">Enter name / JID of contact or groupchat</property> </object> <packing> + <property name="expand">True</property> + <property name="fill">True</property> <property name="position">0</property> </packing> </child> <child> <object class="GtkLabel" id="label3"> <property name="visible">True</property> + <property name="can_focus">False</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <property name="label" translatable="yes">Search:</property> </object> @@ -68,26 +54,30 @@ </packing> </child> <child> - <object class="GtkEntry" id="query_entry"> + <object class="GtkEntry" id="search_entry"> <property name="visible">True</property> <property name="sensitive">False</property> <property name="can_focus">True</property> <property name="activates_default">True</property> - <signal name="activate" handler="on_query_entry_activate"/> + <signal name="activate" handler="on_search_entry_activate" swapped="no"/> </object> <packing> <property name="expand">False</property> + <property name="fill">True</property> <property name="position">2</property> </packing> </child> <child> <object class="GtkCheckButton" id="search_in_date"> <property name="label" translatable="yes">_In date search</property> + <property name="use_action_appearance">False</property> <property name="visible">True</property> <property name="can_focus">False</property> <property name="receives_default">False</property> <property name="tooltip_text" translatable="yes">searching only in the selected day </property> + <property name="use_action_appearance">False</property> <property name="use_underline">True</property> + <property name="xalign">0.5</property> <property name="draw_indicator">True</property> </object> <packing> @@ -99,6 +89,7 @@ </object> <packing> <property name="expand">False</property> + <property name="fill">True</property> <property name="position">0</property> </packing> </child> @@ -114,17 +105,18 @@ <child> <object class="GtkVBox" id="vbox2"> <property name="visible">True</property> - <property name="orientation">vertical</property> + <property name="can_focus">False</property> <property name="spacing">6</property> <child> <object class="GtkCalendar" id="calendar"> <property name="visible">True</property> <property name="can_focus">True</property> - <signal name="month_changed" handler="on_calendar_month_changed"/> - <signal name="day_selected" handler="on_calendar_day_selected"/> + <signal name="month-changed" handler="on_calendar_month_changed" swapped="no"/> + <signal name="day-selected" handler="on_calendar_day_selected" swapped="no"/> </object> <packing> <property name="expand">False</property> + <property name="fill">True</property> <property name="position">0</property> </packing> </child> @@ -141,8 +133,6 @@ <object class="GtkScrolledWindow" id="scrolledwindow"> <property name="visible">True</property> <property name="can_focus">True</property> - <property name="hscrollbar_policy">automatic</property> - <property name="vscrollbar_policy">automatic</property> <property name="shadow_type">etched-in</property> <child> <placeholder/> @@ -163,15 +153,16 @@ <object class="GtkScrolledWindow" id="results_scrolledwindow"> <property name="can_focus">True</property> <property name="no_show_all">True</property> - <property name="hscrollbar_policy">automatic</property> - <property name="vscrollbar_policy">automatic</property> <property name="shadow_type">in</property> <child> <object class="GtkTreeView" id="results_treeview"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="rules_hint">True</property> - <signal name="row_activated" handler="on_results_treeview_row_activated"/> + <signal name="row-activated" handler="on_results_treeview_row_activated" swapped="no"/> + <child internal-child="selection"> + <object class="GtkTreeSelection" id="treeview-selection1"/> + </child> </object> </child> </object> @@ -182,25 +173,33 @@ </child> </object> <packing> + <property name="expand">True</property> + <property name="fill">True</property> <property name="position">1</property> </packing> </child> </object> <packing> + <property name="expand">True</property> + <property name="fill">True</property> <property name="position">0</property> </packing> </child> <child> <object class="GtkHBox" id="hbox2"> <property name="visible">True</property> + <property name="can_focus">False</property> <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property> <child> <object class="GtkCheckButton" id="log_history_checkbutton"> <property name="label" translatable="yes">_Log conversation history</property> + <property name="use_action_appearance">False</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> + <property name="use_action_appearance">False</property> <property name="use_underline">True</property> + <property name="xalign">0.5</property> <property name="active">True</property> <property name="draw_indicator">True</property> </object> @@ -216,23 +215,27 @@ </object> <packing> <property name="expand">False</property> + <property name="fill">True</property> <property name="position">1</property> </packing> </child> <child> <object class="GtkHButtonBox" id="hbuttonbox"> <property name="visible">True</property> + <property name="can_focus">False</property> <property name="spacing">6</property> <property name="layout_style">end</property> <child> <object class="GtkButton" id="close_button"> <property name="label">gtk-close</property> + <property name="use_action_appearance">False</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="can_default">True</property> <property name="receives_default">False</property> + <property name="use_action_appearance">False</property> <property name="use_stock">True</property> - <signal name="clicked" handler="on_close_button_clicked"/> + <signal name="clicked" handler="on_close_button_clicked" swapped="no"/> </object> <packing> <property name="expand">False</property> diff -r e35d4ab1480a -r b7c54367355b src/history_window.py --- a/src/history_window.py Thu Jan 03 23:31:26 2013 +0400 +++ b/src/history_window.py Thu Jan 03 23:30:17 2013 +0100 @@ -26,6 +26,7 @@ ##
from gi.repository import Gtk +from gi.repository import Gdk from gi.repository import GObject import time import calendar @@ -69,18 +70,17 @@ self.calendar = xml.get_object('calendar') scrolledwindow = xml.get_object('scrolledwindow') self.history_textview = conversation_textview.ConversationTextview( - account, used_in_history_window = True) + account, used_in_history_window = True) scrolledwindow.add(self.history_textview.tv) self.history_buffer = self.history_textview.tv.get_buffer() self.history_buffer.create_tag('highlight', background = 'yellow') self.checkbutton = xml.get_object('log_history_checkbutton') self.checkbutton.connect('toggled', - self.on_log_history_checkbutton_toggled) - self.query_entry = xml.get_object('query_entry') - self.query_combobox = xml.get_object('query_combobox') - self.jid_entry = self.query_combobox.get_child() + self.on_log_history_checkbutton_toggled) + self.search_entry = xml.get_object('search_entry') + self.query_liststore = xml.get_object('query_liststore') + self.jid_entry = xml.get_object('query_entry') self.jid_entry.connect('activate', self.on_jid_entry_activate) - self.query_combobox.set_active(0) self.results_treeview = xml.get_object('results_treeview') self.results_window = xml.get_object('results_scrolledwindow') self.search_in_date = xml.get_object('search_in_date') @@ -91,24 +91,24 @@ col = Gtk.TreeViewColumn(_('Name')) self.results_treeview.append_column(col) renderer = Gtk.CellRendererText() - col.pack_start(renderer, True, True, 0) - col.set_attributes(renderer, text = C_CONTACT_NAME) + col.pack_start(renderer, True) + col.add_attribute(renderer, 'text', C_CONTACT_NAME) col.set_sort_column_id(C_CONTACT_NAME) # user can click this header and sort col.set_resizable(True)
col = Gtk.TreeViewColumn(_('Date')) self.results_treeview.append_column(col) renderer = Gtk.CellRendererText() - col.pack_start(renderer, True, True, 0) - col.set_attributes(renderer, text = C_UNIXTIME) + col.pack_start(renderer, True) + col.add_attribute(renderer, 'text', C_UNIXTIME) col.set_sort_column_id(C_UNIXTIME) # user can click this header and sort col.set_resizable(True)
col = Gtk.TreeViewColumn(_('Message')) self.results_treeview.append_column(col) renderer = Gtk.CellRendererText() - col.pack_start(renderer, True, True, 0) - col.set_attributes(renderer, text = C_MESSAGE) + col.pack_start(renderer, True)