[zimio] filter in/out/stanza type in XML console. Fixes #4785

This commit is contained in:
Yann Leboulanger 2010-01-08 16:10:37 +01:00
parent 6978305528
commit 183eedd654
2 changed files with 431 additions and 382 deletions

View File

@ -1,376 +1,371 @@
<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> <?xml version="1.0"?>
<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
<glade-interface> <glade-interface>
<!-- interface-requires gtk+ 2.6 -->
<widget class="GtkWindow" id="xml_console_window"> <!-- interface-naming-policy toplevel-contextual -->
<property name="border_width">12</property> <widget class="GtkWindow" id="xml_console_window">
<property name="title" translatable="yes"></property> <property name="border_width">12</property>
<property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="default_width">550</property>
<property name="window_position">GTK_WIN_POS_NONE</property> <property name="default_height">450</property>
<property name="modal">False</property> <signal name="delete_event" handler="on_xml_console_window_delete_event"/>
<property name="default_width">550</property> <child>
<property name="default_height">450</property> <widget class="GtkVBox" id="vbox">
<property name="resizable">True</property> <property name="visible">True</property>
<property name="destroy_with_parent">False</property> <property name="spacing">6</property>
<property name="decorated">True</property> <child>
<property name="skip_taskbar_hint">False</property> <widget class="GtkLabel" id="label342">
<property name="skip_pager_hint">False</property> <property name="visible">True</property>
<property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property> <property name="xalign">0</property>
<property name="gravity">GDK_GRAVITY_NORTH_WEST</property> <property name="label" translatable="yes">&lt;b&gt;Jabber Traffic&lt;/b&gt;</property>
<property name="focus_on_map">True</property> <property name="use_markup">True</property>
<signal name="delete_event" handler="on_xml_console_window_delete_event" last_modification_time="Sat, 06 Aug 2005 00:03:05 GMT"/> </widget>
<packing>
<child> <property name="expand">False</property>
<widget class="GtkVBox" id="vbox"> <property name="fill">False</property>
<property name="visible">True</property> <property name="position">0</property>
<property name="homogeneous">False</property> </packing>
<property name="spacing">6</property> </child>
<child>
<child> <widget class="GtkScrolledWindow" id="scrolledwindow43">
<widget class="GtkLabel" id="label342"> <property name="visible">True</property>
<property name="visible">True</property> <property name="can_focus">True</property>
<property name="label" translatable="yes">&lt;b&gt;Jabber Traffic&lt;/b&gt;</property> <property name="hscrollbar_policy">automatic</property>
<property name="use_underline">False</property> <property name="vscrollbar_policy">automatic</property>
<property name="use_markup">True</property> <property name="shadow_type">in</property>
<property name="justify">GTK_JUSTIFY_LEFT</property> <child>
<property name="wrap">False</property> <widget class="GtkTextView" id="stanzas_log_textview">
<property name="selectable">False</property> <property name="visible">True</property>
<property name="xalign">0</property> <property name="can_focus">True</property>
<property name="yalign">0.5</property> <property name="editable">False</property>
<property name="xpad">0</property> <property name="wrap_mode">char</property>
<property name="ypad">0</property> </widget>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> </child>
<property name="width_chars">-1</property> </widget>
<property name="single_line_mode">False</property> <packing>
<property name="angle">0</property> <property name="position">1</property>
</widget> </packing>
<packing> </child>
<property name="padding">0</property> <child>
<property name="expand">False</property> <widget class="GtkHBox" id="hbox2988">
<property name="fill">False</property> <property name="visible">True</property>
</packing> <child>
</child> <widget class="GtkCheckButton" id="enable_checkbutton">
<property name="label" translatable="yes" comments="XML Console enable checkbutton">Enable</property>
<child> <property name="visible">True</property>
<widget class="GtkScrolledWindow" id="scrolledwindow43"> <property name="can_focus">True</property>
<property name="visible">True</property> <property name="receives_default">False</property>
<property name="can_focus">True</property> <property name="use_underline">True</property>
<property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> <property name="draw_indicator">True</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> <signal name="toggled" handler="on_enable_checkbutton_toggled"/>
<property name="shadow_type">GTK_SHADOW_IN</property> </widget>
<property name="window_placement">GTK_CORNER_TOP_LEFT</property> <packing>
<property name="expand">False</property>
<child> <property name="fill">False</property>
<widget class="GtkTextView" id="stanzas_log_textview"> <property name="position">0</property>
<property name="visible">True</property> </packing>
<property name="can_focus">True</property> </child>
<property name="editable">False</property> <child>
<property name="overwrite">False</property> <widget class="GtkLabel" id="label351">
<property name="accepts_tab">True</property> <property name="visible">True</property>
<property name="justification">GTK_JUSTIFY_LEFT</property> </widget>
<property name="wrap_mode">GTK_WRAP_CHAR</property> <packing>
<property name="cursor_visible">True</property> <property name="position">1</property>
<property name="pixels_above_lines">0</property> </packing>
<property name="pixels_below_lines">0</property> </child>
<property name="pixels_inside_wrap">0</property> <child>
<property name="left_margin">0</property> <widget class="GtkButton" id="clear_button">
<property name="right_margin">0</property> <property name="label">gtk-clear</property>
<property name="indent">0</property> <property name="visible">True</property>
<property name="text" translatable="yes"></property> <property name="can_focus">True</property>
</widget> <property name="receives_default">False</property>
</child> <property name="use_stock">True</property>
</widget> <signal name="clicked" handler="on_clear_button_clicked"/>
<packing> </widget>
<property name="padding">0</property> <packing>
<property name="expand">True</property> <property name="expand">False</property>
<property name="fill">True</property> <property name="fill">False</property>
</packing> <property name="position">2</property>
</child> </packing>
</child>
<child> </widget>
<widget class="GtkHBox" id="hbox2988"> <packing>
<property name="visible">True</property> <property name="expand">False</property>
<property name="homogeneous">False</property> <property name="fill">False</property>
<property name="spacing">0</property> <property name="position">2</property>
</packing>
<child> </child>
<widget class="GtkCheckButton" id="enable_checkbutton"> <child>
<property name="visible">True</property> <widget class="GtkExpander" id="expander1">
<property name="can_focus">True</property> <property name="visible">True</property>
<property name="label" translatable="yes" comments="XML Console enable checkbutton">Enable</property> <property name="can_focus">True</property>
<property name="use_underline">True</property> <property name="spacing">6</property>
<property name="relief">GTK_RELIEF_NORMAL</property> <child>
<property name="focus_on_click">True</property> <widget class="GtkVBox" id="input_vbox1">
<property name="active">False</property> <property name="visible">True</property>
<property name="inconsistent">False</property> <property name="orientation">vertical</property>
<property name="draw_indicator">True</property> <property name="spacing">6</property>
<signal name="toggled" handler="on_enable_checkbutton_toggled" last_modification_time="Sat, 13 Aug 2005 14:36:52 GMT"/> <child>
</widget> <widget class="GtkHBox" id="hbox1">
<packing> <property name="visible">True</property>
<property name="padding">0</property> <child>
<property name="expand">False</property> <widget class="GtkCheckButton" id="in_stanza_checkbutton">
<property name="fill">False</property> <property name="label" translatable="yes">Hide IN stanzas</property>
</packing> <property name="visible">True</property>
</child> <property name="can_focus">True</property>
<property name="receives_default">False</property>
<child> <property name="draw_indicator">True</property>
<widget class="GtkLabel" id="label351"> <signal name="toggled" handler="on_in_stanza_checkbutton_toggled"/>
<property name="visible">True</property> </widget>
<property name="label" translatable="yes"></property> <packing>
<property name="use_underline">False</property> <property name="position">0</property>
<property name="use_markup">False</property> </packing>
<property name="justify">GTK_JUSTIFY_LEFT</property> </child>
<property name="wrap">False</property> <child>
<property name="selectable">False</property> <widget class="GtkCheckButton" id="out_stanza_checkbutton">
<property name="xalign">0.5</property> <property name="label" translatable="yes">Hide OUT stanzas</property>
<property name="yalign">0.5</property> <property name="visible">True</property>
<property name="xpad">0</property> <property name="can_focus">True</property>
<property name="ypad">0</property> <property name="receives_default">False</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> <property name="draw_indicator">True</property>
<property name="width_chars">-1</property> <signal name="toggled" handler="on_out_stanza_checkbutton_toggled"/>
<property name="single_line_mode">False</property> </widget>
<property name="angle">0</property> <packing>
</widget> <property name="position">1</property>
<packing> </packing>
<property name="padding">0</property> </child>
<property name="expand">True</property> <child>
<property name="fill">True</property> <widget class="GtkCheckButton" id="presence_stanza_checkbutton">
</packing> <property name="label" translatable="yes">Hide Presence stanzas</property>
</child> <property name="visible">True</property>
<property name="can_focus">True</property>
<child> <property name="receives_default">False</property>
<widget class="GtkButton" id="clear_button"> <property name="draw_indicator">True</property>
<property name="visible">True</property> <signal name="toggled" handler="on_presence_stanza_checkbutton_toggled"/>
<property name="can_focus">True</property> </widget>
<property name="label">gtk-clear</property> <packing>
<property name="use_stock">True</property> <property name="position">2</property>
<property name="relief">GTK_RELIEF_NORMAL</property> </packing>
<property name="focus_on_click">True</property> </child>
<signal name="clicked" handler="on_clear_button_clicked" last_modification_time="Sat, 06 Aug 2005 00:20:16 GMT"/> <child>
</widget> <widget class="GtkCheckButton" id="iq_stanza_checkbutton">
<packing> <property name="label" translatable="yes">Hide IQ stanzas</property>
<property name="padding">0</property> <property name="visible">True</property>
<property name="expand">False</property> <property name="can_focus">True</property>
<property name="fill">False</property> <property name="receives_default">False</property>
</packing> <property name="draw_indicator">True</property>
</child> <signal name="toggled" handler="on_iq_stanza_checkbutton_toggled"/>
</widget> </widget>
<packing> <packing>
<property name="padding">0</property> <property name="position">3</property>
<property name="expand">False</property> </packing>
<property name="fill">False</property> </child>
</packing> <child>
</child> <widget class="GtkCheckButton" id="message_stanza_checkbutton">
<property name="label" translatable="yes">Hide Message stanzas</property>
<child> <property name="visible">True</property>
<widget class="GtkExpander" id="expander"> <property name="can_focus">True</property>
<property name="visible">True</property> <property name="receives_default">False</property>
<property name="can_focus">True</property> <property name="draw_indicator">True</property>
<property name="expanded">False</property> <signal name="toggled" handler="on_message_stanza_checkbutton_toggled"/>
<property name="spacing">6</property> </widget>
<signal name="activate" handler="on_expander_activate" last_modification_time="Mon, 04 Jul 2005 22:24:33 GMT"/> <packing>
<property name="position">4</property>
<child> </packing>
<widget class="GtkVBox" id="input_vbox"> </child>
<property name="visible">True</property> </widget>
<property name="homogeneous">False</property> <packing>
<property name="spacing">6</property> <property name="position">0</property>
</packing>
<child> </child>
<widget class="GtkScrolledWindow" id="scrolledwindow42"> <child>
<property name="visible">True</property> <widget class="GtkHBox" id="hbox2">
<property name="can_focus">True</property> <property name="visible">True</property>
<property name="hscrollbar_policy">GTK_POLICY_NEVER</property> <child>
<property name="vscrollbar_policy">GTK_POLICY_NEVER</property> <placeholder/>
<property name="shadow_type">GTK_SHADOW_IN</property> </child>
<property name="window_placement">GTK_CORNER_TOP_LEFT</property> <child>
<placeholder/>
<child> </child>
<widget class="GtkTextView" id="input_textview"> </widget>
<property name="visible">True</property> <packing>
<property name="can_focus">True</property> <property name="position">1</property>
<property name="editable">True</property> </packing>
<property name="overwrite">False</property> </child>
<property name="accepts_tab">True</property> </widget>
<property name="justification">GTK_JUSTIFY_LEFT</property> </child>
<property name="wrap_mode">GTK_WRAP_CHAR</property> <child>
<property name="cursor_visible">True</property> <widget class="GtkLabel" id="label2">
<property name="pixels_above_lines">0</property> <property name="visible">True</property>
<property name="pixels_below_lines">0</property> <property name="xalign">0</property>
<property name="pixels_inside_wrap">0</property> <property name="label" translatable="yes">&lt;b&gt;Filter&lt;/b&gt;</property>
<property name="left_margin">0</property> <property name="use_markup">True</property>
<property name="right_margin">0</property> </widget>
<property name="indent">0</property> <packing>
<property name="text" translatable="yes"></property> <property name="type">label_item</property>
</widget> </packing>
</child> </child>
</widget> </widget>
<packing> <packing>
<property name="padding">0</property> <property name="expand">False</property>
<property name="expand">True</property> <property name="position">3</property>
<property name="fill">True</property> </packing>
</packing> </child>
</child> <child>
<widget class="GtkExpander" id="expander">
<child> <property name="visible">True</property>
<widget class="GtkHButtonBox" id="hbuttonbox31"> <property name="can_focus">True</property>
<property name="visible">True</property> <property name="spacing">6</property>
<property name="layout_style">GTK_BUTTONBOX_END</property> <signal name="activate" handler="on_expander_activate"/>
<property name="spacing">6</property> <child>
<widget class="GtkVBox" id="input_vbox">
<child> <property name="visible">True</property>
<widget class="GtkButton" id="iq_button"> <property name="spacing">6</property>
<property name="visible">True</property> <child>
<property name="tooltip" translatable="yes" comments="Info/Query make the &quot;IQ&quot; initials. So translate like this 'YourLang/YourLang (Info/Query)'. Thanks (it's a tooltip so width is not a problem)">Info/Query</property> <widget class="GtkScrolledWindow" id="scrolledwindow42">
<property name="can_focus">True</property> <property name="visible">True</property>
<property name="label" translatable="yes" comments="Info/Query: all(?) jabber xml start with &lt;iq Leaving it _IQ is not a bad idea unless you are sure your lang has this somehow else translated (NOTE: xml still will still say &lt;iq in your language (of course))">_IQ</property> <property name="can_focus">True</property>
<property name="use_underline">True</property> <property name="hscrollbar_policy">never</property>
<property name="relief">GTK_RELIEF_NORMAL</property> <property name="vscrollbar_policy">never</property>
<property name="focus_on_click">True</property> <property name="shadow_type">in</property>
<signal name="clicked" handler="on_iq_button_clicked" last_modification_time="Mon, 04 Jul 2005 19:35:55 GMT"/> <child>
</widget> <widget class="GtkTextView" id="input_textview">
</child> <property name="visible">True</property>
<property name="can_focus">True</property>
<child> <property name="wrap_mode">char</property>
<widget class="GtkButton" id="presence_button"> </widget>
<property name="visible">True</property> </child>
<property name="can_focus">True</property> </widget>
<property name="label" translatable="yes">_Presence</property> <packing>
<property name="use_underline">True</property> <property name="position">0</property>
<property name="relief">GTK_RELIEF_NORMAL</property> </packing>
<property name="focus_on_click">True</property> </child>
<signal name="clicked" handler="on_presence_button_clicked" last_modification_time="Mon, 04 Jul 2005 19:36:08 GMT"/> <child>
</widget> <widget class="GtkHButtonBox" id="hbuttonbox31">
</child> <property name="visible">True</property>
<property name="spacing">6</property>
<child> <property name="layout_style">end</property>
<widget class="GtkButton" id="message_button"> <child>
<property name="visible">True</property> <widget class="GtkButton" id="iq_button">
<property name="can_focus">True</property> <property name="label" translatable="yes" comments="Info/Query: all(?) jabber xml start with &lt;iq Leaving it _IQ is not a bad idea unless you are sure your lang has this somehow else translated (NOTE: xml still will still say &lt;iq in your language (of course))">_IQ</property>
<property name="label" translatable="yes">_Message</property> <property name="visible">True</property>
<property name="use_underline">True</property> <property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property> <property name="receives_default">False</property>
<property name="focus_on_click">True</property> <property name="tooltip" translatable="yes" comments="Info/Query make the &quot;IQ&quot; initials. So translate like this 'YourLang/YourLang (Info/Query)'. Thanks (it's a tooltip so width is not a problem)">Info/Query</property>
<signal name="clicked" handler="on_message_button_clicked" last_modification_time="Mon, 04 Jul 2005 19:36:21 GMT"/> <property name="use_underline">True</property>
</widget> <signal name="clicked" handler="on_iq_button_clicked"/>
</child> </widget>
<packing>
<child> <property name="expand">False</property>
<widget class="GtkButton" id="send_button"> <property name="fill">False</property>
<property name="visible">True</property> <property name="position">0</property>
<property name="can_default">True</property> </packing>
<property name="can_focus">True</property> </child>
<property name="relief">GTK_RELIEF_NORMAL</property> <child>
<property name="focus_on_click">True</property> <widget class="GtkButton" id="presence_button">
<signal name="clicked" handler="on_send_button_clicked" last_modification_time="Mon, 04 Jul 2005 19:36:26 GMT"/> <property name="label" translatable="yes">_Presence</property>
<property name="visible">True</property>
<child> <property name="can_focus">True</property>
<widget class="GtkAlignment" id="alignment80"> <property name="receives_default">False</property>
<property name="visible">True</property> <property name="use_underline">True</property>
<property name="xalign">0.5</property> <signal name="clicked" handler="on_presence_button_clicked"/>
<property name="yalign">0.5</property> </widget>
<property name="xscale">0</property> <packing>
<property name="yscale">0</property> <property name="expand">False</property>
<property name="top_padding">0</property> <property name="fill">False</property>
<property name="bottom_padding">0</property> <property name="position">1</property>
<property name="left_padding">0</property> </packing>
<property name="right_padding">0</property> </child>
<child>
<child> <widget class="GtkButton" id="message_button">
<widget class="GtkHBox" id="hbox2980"> <property name="label" translatable="yes">_Message</property>
<property name="visible">True</property> <property name="visible">True</property>
<property name="homogeneous">False</property> <property name="can_focus">True</property>
<property name="spacing">2</property> <property name="receives_default">False</property>
<property name="use_underline">True</property>
<child> <signal name="clicked" handler="on_message_button_clicked"/>
<widget class="GtkImage" id="image833"> </widget>
<property name="visible">True</property> <packing>
<property name="stock">gtk-apply</property> <property name="expand">False</property>
<property name="icon_size">4</property> <property name="fill">False</property>
<property name="xalign">0.5</property> <property name="position">2</property>
<property name="yalign">0.5</property> </packing>
<property name="xpad">0</property> </child>
<property name="ypad">0</property> <child>
</widget> <widget class="GtkButton" id="send_button">
<packing> <property name="visible">True</property>
<property name="padding">0</property> <property name="can_focus">True</property>
<property name="expand">False</property> <property name="can_default">True</property>
<property name="fill">False</property> <property name="receives_default">False</property>
</packing> <signal name="clicked" handler="on_send_button_clicked"/>
</child> <child>
<widget class="GtkAlignment" id="alignment80">
<child> <property name="visible">True</property>
<widget class="GtkLabel" id="label341"> <property name="xscale">0</property>
<property name="visible">True</property> <property name="yscale">0</property>
<property name="label" translatable="yes">_Send</property> <child>
<property name="use_underline">True</property> <widget class="GtkHBox" id="hbox2980">
<property name="use_markup">False</property> <property name="visible">True</property>
<property name="justify">GTK_JUSTIFY_LEFT</property> <property name="spacing">2</property>
<property name="wrap">False</property> <child>
<property name="selectable">False</property> <widget class="GtkImage" id="image833">
<property name="xalign">0.5</property> <property name="visible">True</property>
<property name="yalign">0.5</property> <property name="stock">gtk-apply</property>
<property name="xpad">0</property> </widget>
<property name="ypad">0</property> <packing>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> <property name="expand">False</property>
<property name="width_chars">-1</property> <property name="fill">False</property>
<property name="single_line_mode">False</property> <property name="position">0</property>
<property name="angle">0</property> </packing>
</widget> </child>
<packing> <child>
<property name="padding">0</property> <widget class="GtkLabel" id="label341">
<property name="expand">False</property> <property name="visible">True</property>
<property name="fill">False</property> <property name="label" translatable="yes">_Send</property>
</packing> <property name="use_underline">True</property>
</child> </widget>
</widget> <packing>
</child> <property name="expand">False</property>
</widget> <property name="fill">False</property>
</child> <property name="position">1</property>
</widget> </packing>
</child> </child>
</widget> </widget>
<packing> </child>
<property name="padding">0</property> </widget>
<property name="expand">False</property> </child>
<property name="fill">False</property> </widget>
</packing> <packing>
</child> <property name="expand">False</property>
</widget> <property name="fill">False</property>
</child> <property name="position">3</property>
</packing>
<child> </child>
<widget class="GtkLabel" id="label343"> </widget>
<property name="visible">True</property> <packing>
<property name="label" translatable="yes">&lt;b&gt;XML Input&lt;/b&gt;</property> <property name="expand">False</property>
<property name="use_underline">False</property> <property name="fill">False</property>
<property name="use_markup">True</property> <property name="position">1</property>
<property name="justify">GTK_JUSTIFY_LEFT</property> </packing>
<property name="wrap">False</property> </child>
<property name="selectable">False</property> </widget>
<property name="xalign">0</property> </child>
<property name="yalign">0.5</property> <child>
<property name="xpad">0</property> <widget class="GtkLabel" id="label343">
<property name="ypad">0</property> <property name="visible">True</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> <property name="xalign">0</property>
<property name="width_chars">-1</property> <property name="label" translatable="yes">&lt;b&gt;XML Input&lt;/b&gt;</property>
<property name="single_line_mode">False</property> <property name="use_markup">True</property>
<property name="angle">0</property> </widget>
</widget> <packing>
<packing> <property name="type">label_item</property>
<property name="type">label_item</property> </packing>
</packing> </child>
</child> </widget>
</widget> <packing>
<packing> <property name="expand">False</property>
<property name="padding">0</property> <property name="position">4</property>
<property name="expand">False</property> </packing>
<property name="fill">True</property> </child>
</packing> </widget>
</child> </child>
</widget> </widget>
</child>
</widget>
</glade-interface> </glade-interface>

View File

@ -2847,14 +2847,23 @@ class XMLConsoleWindow:
self.tagIn = buffer_.create_tag('incoming') self.tagIn = buffer_.create_tag('incoming')
color = gajim.config.get('inmsgcolor') color = gajim.config.get('inmsgcolor')
self.tagIn.set_property('foreground', color) self.tagIn.set_property('foreground', color)
self.tagInComment = buffer_.create_tag('in_comment') self.tagInPresence = buffer_.create_tag('incoming_presence')
self.tagInComment.set_property('foreground', color) self.tagInPresence.set_property('foreground', color)
self.tagInMessage = buffer_.create_tag('incoming_message')
self.tagInMessage.set_property('foreground', color)
self.tagInIq = buffer_.create_tag('incoming_iq')
self.tagInIq.set_property('foreground', color)
self.tagOut = buffer_.create_tag('outgoing') self.tagOut = buffer_.create_tag('outgoing')
color = gajim.config.get('outmsgcolor') color = gajim.config.get('outmsgcolor')
self.tagOut.set_property('foreground', color) self.tagOut.set_property('foreground', color)
self.tagOutComment = buffer_.create_tag('out_comment') self.tagOutPresence = buffer_.create_tag('outgoing_presence')
self.tagOutComment.set_property('foreground', color) self.tagOutPresence.set_property('foreground', color)
self.tagOutMessage = buffer_.create_tag('outgoing_message')
self.tagOutMessage.set_property('foreground', color)
self.tagOutIq = buffer_.create_tag('outgoing_iq')
self.tagOutIq.set_property('foreground', color)
buffer_.create_tag('') # Default tag
self.enabled = False self.enabled = False
@ -2882,6 +2891,37 @@ class XMLConsoleWindow:
def on_enable_checkbutton_toggled(self, widget): def on_enable_checkbutton_toggled(self, widget):
self.enabled = widget.get_active() self.enabled = widget.get_active()
def on_in_stanza_checkbutton_toggled(self, widget):
active = widget.get_active()
self.tagIn.set_property('invisible', active)
self.tagInComment.set_property('invisible', active)
self.tagInPresence.set_property('invisible', active)
self.tagInMessage.set_property('invisible', active)
self.tagInIq.set_property('invisible', active)
def on_presence_stanza_checkbutton_toggled(self, widget):
active = widget.get_active()
self.tagInPresence.set_property('invisible', active)
self.tagOutPresence.set_property('invisible', active)
def on_out_stanza_checkbutton_toggled(self, widget):
active = widget.get_active()
self.tagOut.set_property('invisible', active)
self.tagOutComment.set_property('invisible', active)
self.tagOutPresence.set_property('invisible', active)
self.tagOutMessage.set_property('invisible', active)
self.tagOutIq.set_property('invisible', active)
def on_message_stanza_checkbutton_toggled(self, widget):
active = widget.get_active()
self.tagInMessage.set_property('invisible', active)
self.tagOutMessage.set_property('invisible', active)
def on_iq_stanza_checkbutton_toggled(self, widget):
active = widget.get_active()
self.tagInIq.set_property('invisible', active)
self.tagOutIq.set_property('invisible', active)
def scroll_to_end(self, ): def scroll_to_end(self, ):
parent = self.stanzas_log_textview.get_parent() parent = self.stanzas_log_textview.get_parent()
buffer_ = self.stanzas_log_textview.get_buffer() buffer_ = self.stanzas_log_textview.get_buffer()
@ -2908,15 +2948,29 @@ class XMLConsoleWindow:
if end_rect.y <= (visible_rect.y + visible_rect.height): if end_rect.y <= (visible_rect.y + visible_rect.height):
at_the_end = True at_the_end = True
end_iter = buffer.get_end_iter() end_iter = buffer.get_end_iter()
type_ = ''
if stanza[1:9] == 'presence':
type_ = 'presence'
elif stanza[1:8] == 'message':
type_ = 'message'
elif stanza[1:3] == 'iq':
type_ = 'iq'
if type_:
type_ = kind + '_' + type_
else:
type_ = kind # 'incoming' or 'outgoing'
if kind == 'incoming': if kind == 'incoming':
buffer.insert_with_tags_by_name(end_iter, '<!-- In -->\n', buffer.insert_with_tags_by_name(end_iter, '<!-- In -->\n',
'in_comment') type_)
elif kind == 'outgoing': elif kind == 'outgoing':
buffer.insert_with_tags_by_name(end_iter, '<!-- Out -->\n', buffer.insert_with_tags_by_name(end_iter, '<!-- Out -->\n',
'out_comment') type_)
end_iter = buffer.get_end_iter() end_iter = buffer.get_end_iter()
buffer.insert_with_tags_by_name(end_iter, stanza.replace('><', '>\n<') + \ buffer.insert_with_tags_by_name(end_iter, stanza.replace('><', '>\n<') +\
'\n\n', kind) '\n\n', type_)
if at_the_end: if at_the_end:
gobject.idle_add(self.scroll_to_end) gobject.idle_add(self.scroll_to_end)