diff options
author | Daniel Brötzmann <mailtrash@posteo.de> | 2018-10-20 21:36:40 +0300 |
---|---|---|
committer | Daniel Brötzmann <mailtrash@posteo.de> | 2018-10-20 21:36:40 +0300 |
commit | 52fcf0db87b68bc968fc944eadde21c42e177933 (patch) | |
tree | 815a9078cf32684de2e335a15239969795f4854a /triggers | |
parent | dd5925eb969f449625751703f21cd698105734fe (diff) |
[triggers] Adapt to _ui API
Diffstat (limited to 'triggers')
-rw-r--r-- | triggers/config_dialog.ui | 1559 | ||||
-rw-r--r-- | triggers/triggers.py | 262 |
2 files changed, 901 insertions, 920 deletions
diff --git a/triggers/config_dialog.ui b/triggers/config_dialog.ui index ca7a55d..8ec5d68 100644 --- a/triggers/config_dialog.ui +++ b/triggers/config_dialog.ui @@ -42,119 +42,250 @@ </row> </data> </object> - <object class="GtkWindow" id="advanced_notifications_window"> + <object class="GtkBox" id="plugin_box"> + <property name="visible">True</property> <property name="can_focus">False</property> - <property name="destroy_with_parent">True</property> + <property name="border_width">18</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> <child> - <placeholder/> + <object class="GtkBox" id="rules_box"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <child> + <object class="GtkScrolledWindow"> + <property name="height_request">90</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="shadow_type">in</property> + <child> + <object class="GtkTreeView" id="conditions_treeview"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="enable_grid_lines">horizontal</property> + <signal name="cursor-changed" handler="on_conditions_treeview_cursor_changed" swapped="no"/> + <child internal-child="selection"> + <object class="GtkTreeSelection"/> + </child> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkToolbar"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="show_arrow">False</property> + <property name="icon_size">1</property> + <child> + <object class="GtkToolButton" id="up_button"> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">False</property> + <property name="tooltip_text" translatable="yes">Up</property> + <property name="label" translatable="yes">Up</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-go-up</property> + <signal name="clicked" handler="on_up_button_clicked" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="down_button"> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">False</property> + <property name="tooltip_text" translatable="yes">Down</property> + <property name="label" translatable="yes">Down</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-go-down</property> + <signal name="clicked" handler="on_down_button_clicked" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="new_button"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="tooltip_text" translatable="yes">New rule</property> + <property name="label" translatable="yes">New rule</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-new</property> + <signal name="clicked" handler="on_new_button_clicked" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkToolButton" id="delete_button"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="tooltip_text" translatable="yes">Delete rule</property> + <property name="label" translatable="yes">Delete rule</property> + <property name="use_underline">True</property> + <property name="stock_id">gtk-delete</property> + <signal name="clicked" handler="on_delete_button_clicked" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <style> + <class name="inline-toolbar"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> </child> <child> - <object class="GtkBox" id="plugin_box"> + <object class="GtkBox" id="config_box"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="border_width">18</property> <property name="orientation">vertical</property> - <property name="spacing">6</property> + <property name="spacing">5</property> <child> - <object class="GtkBox" id="rules_box"> + <object class="GtkBox" id="conditions_box"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="halign">start</property> <property name="orientation">vertical</property> + <property name="spacing">6</property> <child> - <object class="GtkScrolledWindow"> - <property name="height_request">90</property> + <object class="GtkLabel"> <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="shadow_type">in</property> - <child> - <object class="GtkTreeView" id="conditions_treeview"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="enable_grid_lines">horizontal</property> - <signal name="cursor-changed" handler="on_conditions_treeview_cursor_changed" swapped="no"/> - <child internal-child="selection"> - <object class="GtkTreeSelection"/> - </child> - </object> - </child> + <property name="can_focus">False</property> + <property name="margin_top">6</property> + <property name="label" translatable="yes">Conditions</property> + <property name="use_markup">True</property> + <style> + <class name="large-header"/> + <class name="dim-label"/> + </style> </object> <packing> <property name="expand">False</property> - <property name="fill">True</property> + <property name="fill">False</property> <property name="position">0</property> </packing> </child> <child> - <object class="GtkToolbar"> + <object class="GtkGrid"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="show_arrow">False</property> - <property name="icon_size">1</property> + <property name="halign">center</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> <child> - <object class="GtkToolButton" id="up_button"> + <object class="GtkLabel"> <property name="visible">True</property> - <property name="sensitive">False</property> <property name="can_focus">False</property> - <property name="tooltip_text" translatable="yes">Up</property> - <property name="label" translatable="yes">Up</property> - <property name="use_underline">True</property> - <property name="stock_id">gtk-go-up</property> - <signal name="clicked" handler="on_up_button_clicked" swapped="no"/> + <property name="halign">end</property> + <property name="label" translatable="yes">Event</property> + <property name="use_markup">True</property> + <style> + <class name="dim-label"/> + </style> </object> <packing> - <property name="expand">False</property> - <property name="homogeneous">True</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkToolButton" id="down_button"> + <object class="GtkComboBox" id="event_combobox"> + <property name="width_request">200</property> <property name="visible">True</property> - <property name="sensitive">False</property> <property name="can_focus">False</property> - <property name="tooltip_text" translatable="yes">Down</property> - <property name="label" translatable="yes">Down</property> - <property name="use_underline">True</property> - <property name="stock_id">gtk-go-down</property> - <signal name="clicked" handler="on_down_button_clicked" swapped="no"/> + <property name="model">liststore2</property> + <signal name="changed" handler="on_event_combobox_changed" swapped="no"/> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> </object> <packing> - <property name="expand">False</property> - <property name="homogeneous">True</property> + <property name="left_attach">1</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkToolButton" id="new_button"> + <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="tooltip_text" translatable="yes">New rule</property> - <property name="label" translatable="yes">New rule</property> - <property name="use_underline">True</property> - <property name="stock_id">gtk-new</property> - <signal name="clicked" handler="on_new_button_clicked" swapped="no"/> + <property name="halign">end</property> + <property name="label" translatable="yes">Category</property> + <property name="use_markup">True</property> + <style> + <class name="dim-label"/> + </style> </object> <packing> - <property name="expand">False</property> - <property name="homogeneous">True</property> + <property name="left_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> - <object class="GtkToolButton" id="delete_button"> + <object class="GtkComboBox" id="recipient_type_combobox"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="tooltip_text" translatable="yes">Delete rule</property> - <property name="label" translatable="yes">Delete rule</property> - <property name="use_underline">True</property> - <property name="stock_id">gtk-delete</property> - <signal name="clicked" handler="on_delete_button_clicked" swapped="no"/> + <property name="model">liststore1</property> + <signal name="changed" handler="on_recipient_type_combobox_changed" swapped="no"/> + <child> + <object class="GtkCellRendererText"/> + <attributes> + <attribute name="text">0</attribute> + </attributes> + </child> </object> <packing> - <property name="expand">False</property> - <property name="homogeneous">True</property> + <property name="left_attach">1</property> + <property name="top_attach">1</property> </packing> </child> - <style> - <class name="inline-toolbar"/> - </style> + <child> + <object class="GtkEntry" id="recipient_list_entry"> + <property name="width_request">300</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="tooltip_text" translatable="yes">comma separated list</property> + <signal name="changed" handler="on_recipient_list_entry_changed" swapped="no"/> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <placeholder/> + </child> </object> <packing> <property name="expand">False</property> @@ -162,159 +293,345 @@ <property name="position">1</property> </packing> </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkBox" id="config_box"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="orientation">vertical</property> - <property name="spacing">5</property> <child> - <object class="GtkBox" id="conditions_box"> + <object class="GtkBox" id="status_box"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="halign">start</property> - <property name="orientation">vertical</property> + <property name="margin_top">6</property> <property name="spacing">6</property> <child> <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="margin_top">6</property> - <property name="label" translatable="yes">Conditions</property> + <property name="valign">start</property> + <property name="label" translatable="yes">My status</property> <property name="use_markup">True</property> <style> - <class name="large-header"/> <class name="dim-label"/> </style> </object> <packing> <property name="expand">False</property> - <property name="fill">False</property> + <property name="fill">True</property> <property name="position">0</property> </packing> </child> <child> - <object class="GtkGrid"> + <object class="GtkRadioButton" id="all_status_rb"> + <property name="label" translatable="yes">All statuses</property> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">center</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">end</property> - <property name="label" translatable="yes">Event</property> - <property name="use_markup">True</property> - <style> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="valign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <property name="group">special_status_rb</property> + <signal name="toggled" handler="on_status_radiobutton_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkRadioButton" id="special_status_rb"> + <property name="label" translatable="yes">Certain status(es)</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="valign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <property name="group">all_status_rb</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkExpander" id="status_expander"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="valign">start</property> + <property name="expanded">True</property> <child> - <object class="GtkComboBox" id="event_combobox"> - <property name="width_request">200</property> + <object class="GtkBox"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="model">liststore2</property> - <signal name="changed" handler="on_event_combobox_changed" swapped="no"/> + <property name="orientation">vertical</property> + <property name="spacing">6</property> <child> - <object class="GtkCellRendererText"/> - <attributes> - <attribute name="text">0</attribute> - </attributes> + <object class="GtkCheckButton" id="online_cb"> + <property name="label" translatable="yes">Online/Free For Chat</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="away_cb"> + <property name="label" translatable="yes">Away</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="xa_cb"> + <property name="label" translatable="yes">Not Available</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> </child> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">end</property> - <property name="label" translatable="yes">Category</property> - <property name="use_markup">True</property> - <style> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkComboBox" id="recipient_type_combobox"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="model">liststore1</property> - <signal name="changed" handler="on_recipient_type_combobox_changed" swapped="no"/> <child> - <object class="GtkCellRendererText"/> - <attributes> - <attribute name="text">0</attribute> - </attributes> + <object class="GtkCheckButton" id="dnd_cb"> + <property name="label" translatable="yes">Busy</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">3</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="invisible_cb"> + <property name="label" translatable="yes">Invisible</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> </child> </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> </child> - <child> - <object class="GtkEntry" id="recipient_list_entry"> - <property name="width_request">300</property> + <child type="label"> + <object class="GtkLabel"> <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <property name="tooltip_text" translatable="yes">comma separated list</property> - <signal name="changed" handler="on_recipient_list_entry_changed" swapped="no"/> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Status</property> </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <placeholder/> </child> </object> <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">1</property> + <property name="position">3</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + <child> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">end</property> + <property name="label" translatable="yes">Window/tab opened with contact</property> + <style> + <class name="dim-label"/> + </style> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkBox" id="status_box"> + <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="halign">end</property> + <property name="label" translatable="yes">Focus</property> + <style> + <class name="dim-label"/> + </style> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="tab_opened_cb"> + <property name="label" translatable="yes">Opened</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> <property name="halign">start</property> - <property name="margin_top">6</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_tab_opened_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="has_focus_cb"> + <property name="label" translatable="yes">Has focus</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_has_focus_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="left_attach">1</property> + <property name="top_attach">1</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="not_tab_opened_cb"> + <property name="label" translatable="yes">Not opened</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_not_tab_opened_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">0</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="not_has_focus_cb"> + <property name="label" translatable="yes">Does not have focus</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_not_has_focus_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="left_attach">2</property> + <property name="top_attach">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="actions_box"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="margin_top">6</property> + <property name="label" translatable="yes">Actions</property> + <property name="use_markup">True</property> + <style> + <class name="large-header"/> + <class name="dim-label"/> + </style> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">12</property> + <child> + <object class="GtkBox" id="chat_window_box"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> <property name="spacing">6</property> <child> <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="valign">start</property> - <property name="label" translatable="yes">My status</property> - <property name="use_markup">True</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Chat window</property> <style> + <class name="bold"/> <class name="dim-label"/> </style> </object> @@ -325,16 +642,15 @@ </packing> </child> <child> - <object class="GtkRadioButton" id="all_status_rb"> - <property name="label" translatable="yes">All statuses</property> + <object class="GtkCheckButton" id="use_auto_open_cb"> + <property name="label" translatable="yes">_Open chat window with user</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> - <property name="valign">start</property> + <property name="halign">start</property> <property name="use_underline">True</property> <property name="draw_indicator">True</property> - <property name="group">special_status_rb</property> - <signal name="toggled" handler="on_status_radiobutton_toggled" swapped="no"/> + <signal name="toggled" handler="on_use_auto_open_cb_toggled" swapped="no"/> </object> <packing> <property name="expand">False</property> @@ -343,15 +659,15 @@ </packing> </child> <child> - <object class="GtkRadioButton" id="special_status_rb"> - <property name="label" translatable="yes">Certain status(es)</property> + <object class="GtkCheckButton" id="disable_auto_open_cb"> + <property name="label" translatable="yes">_Disable automatically opening chat window</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> - <property name="valign">start</property> + <property name="halign">start</property> <property name="use_underline">True</property> <property name="draw_indicator">True</property> - <property name="group">all_status_rb</property> + <signal name="toggled" handler="on_disable_auto_open_cb_toggled" swapped="no"/> </object> <packing> <property name="expand">False</property> @@ -359,245 +675,86 @@ <property name="position">2</property> </packing> </child> - <child> - <object class="GtkExpander" id="status_expander"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="valign">start</property> - <property name="expanded">True</property> - <child> - <object class="GtkBox"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> - <child> - <object class="GtkCheckButton" id="online_cb"> - <property name="label" translatable="yes">Online/Free For Chat</property> - <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="away_cb"> - <property name="label" translatable="yes">Away</property> - <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="xa_cb"> - <property name="label" translatable="yes">Not Available</property> - <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_status_cb_toggled" 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="dnd_cb"> - <property name="label" translatable="yes">Busy</property> - <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">3</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="invisible_cb"> - <property name="label" translatable="yes">Invisible</property> - <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_status_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">4</property> - </packing> - </child> - </object> - </child> - <child type="label"> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">Status</property> - </object> - </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">3</property> - </packing> - </child> </object> <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">2</property> + <property name="position">0</property> </packing> </child> <child> - <object class="GtkGrid"> + <object class="GtkBox" id="notifications_box"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">end</property> - <property name="label" translatable="yes">Window/tab opened with contact</property> - <style> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> + <property name="orientation">vertical</property> + <property name="spacing">6</property> <child> <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="halign">end</property> - <property name="label" translatable="yes">Focus</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Notifications</property> <style> + <class name="bold"/> <class name="dim-label"/> </style> </object> <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> </packing> </child> <child> - <object class="GtkCheckButton" id="tab_opened_cb"> - <property name="label" translatable="yes">Opened</property> + <object class="GtkCheckButton" id="use_popup_cb"> + <property name="label" translatable="yes">_Inform me with a popup window</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> <property name="halign">start</property> <property name="use_underline">True</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_tab_opened_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="has_focus_cb"> - <property name="label" translatable="yes">Has focus</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_has_focus_cb_toggled" swapped="no"/> + <signal name="toggled" handler="on_use_popup_cb_toggled" swapped="no"/> </object> <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> </packing> </child> <child> - <object class="GtkCheckButton" id="not_tab_opened_cb"> - <property name="label" translatable="yes">Not opened</property> + <object class="GtkCheckButton" id="disable_popup_cb"> + <property name="label" translatable="yes">_Disable existing popup window</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> <property name="halign">start</property> <property name="use_underline">True</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_not_tab_opened_cb_toggled" swapped="no"/> + <signal name="toggled" handler="on_disable_popup_cb_toggled" swapped="no"/> </object> <packing> - <property name="left_attach">2</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="not_has_focus_cb"> - <property name="label" translatable="yes">Does not have focus</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_not_has_focus_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">2</property> - <property name="top_attach">1</property> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> </packing> </child> </object> <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">5</property> + <property name="position">1</property> </packing> </child> </object> <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">0</property> + <property name="position">1</property> </packing> </child> <child> - <object class="GtkBox" id="actions_box"> + <object class="GtkBox" id="sounds_box"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="orientation">vertical</property> @@ -606,17 +763,17 @@ <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="margin_top">6</property> - <property name="label" translatable="yes">Actions</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Sounds</property> <property name="use_markup">True</property> <style> - <class name="large-header"/> + <class name="bold"/> <class name="dim-label"/> </style> </object> <packing> <property name="expand">False</property> - <property name="fill">False</property> + <property name="fill">True</property> <property name="position">0</property> </packing> </child> @@ -624,64 +781,18 @@ <object class="GtkBox"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="halign">start</property> <property name="spacing">12</property> <child> - <object class="GtkBox" id="chat_window_box"> + <object class="GtkCheckButton" id="use_sound_cb"> + <property name="label" translatable="yes">Play a sound</property> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> - <child> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">start</property> - <property name="label" translatable="yes">Chat window</property> - <style> - <class name="bold"/> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="use_auto_open_cb"> - <property name="label" translatable="yes">_Open chat window with user</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_use_auto_open_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="disable_auto_open_cb"> - <property name="label" translatable="yes">_Disable automatically opening chat window</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_disable_auto_open_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> - </packing> - </child> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">end</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_use_sound_cb_toggled" swapped="no"/> </object> <packing> <property name="expand">False</property> @@ -690,21 +801,18 @@ </packing> </child> <child> - <object class="GtkBox" id="notifications_box"> + <object class="GtkBox" id="sound_file_box"> <property name="visible">True</property> + <property name="sensitive">False</property> <property name="can_focus">False</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> + <property name="halign">start</property> + <property name="spacing">12</property> <child> - <object class="GtkLabel"> + <object class="GtkEntry" id="sound_entry"> + <property name="width_request">120</property> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">start</property> - <property name="label" translatable="yes">Notifications</property> - <style> - <class name="bold"/> - <class name="dim-label"/> - </style> + <property name="can_focus">True</property> + <signal name="changed" handler="on_sound_entry_changed" swapped="no"/> </object> <packing> <property name="expand">False</property> @@ -713,15 +821,13 @@ </packing> </child> <child> - <object class="GtkCheckButton" id="use_popup_cb"> - <property name="label" translatable="yes">_Inform me with a popup window</property> + <object class="GtkButton"> + <property name="label">...</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> - <property name="halign">start</property> <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_use_popup_cb_toggled" swapped="no"/> + <signal name="clicked" handler="on_browse_for_sounds_button_clicked" swapped="no"/> </object> <packing> <property name="expand">False</property> @@ -730,15 +836,18 @@ </packing> </child> <child> - <object class="GtkCheckButton" id="disable_popup_cb"> - <property name="label" translatable="yes">_Disable existing popup window</property> + <object class="GtkButton" id="play_button"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_disable_popup_cb_toggled" swapped="no"/> + <signal name="clicked" handler="on_play_button_clicked" swapped="no"/> + <child> + <object class="GtkImage"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="stock">gtk-media-play</property> + </object> + </child> </object> <packing> <property name="expand">False</property> @@ -756,421 +865,303 @@ </object> <packing> <property name="expand">False</property> - <property name="fill">True</property> + <property name="fill">False</property> <property name="position">1</property> </packing> </child> <child> - <object class="GtkBox" id="sounds_box"> + <object class="GtkCheckButton" id="disable_sound_cb"> + <property name="label" translatable="yes">_Disable existing sound for this event</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_disable_sound_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">2</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkExpander" id="advanced_expander"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="margin_top">6</property> + <child> + <object class="GtkBox"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkCheckButton" id="one_shot_cb"> + <property name="label" translatable="yes">Delete this rule once it is applied</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="margin_top">6</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_one_shot_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="orientation">vertical</property> <property name="spacing">6</property> <child> + <object class="GtkCheckButton" id="run_command_cb"> + <property name="label" translatable="yes">Launch a command</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_run_command_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkEntry" id="command_entry"> + <property name="width_request">200</property> + <property name="visible">True</property> + <property name="sensitive">False</property> + <property name="can_focus">True</property> + <signal name="changed" handler="on_command_entry_changed" swapped="no"/> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkGrid"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="row_spacing">6</property> + <property name="column_spacing">12</property> + <child> <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="halign">start</property> - <property name="label" translatable="yes">Sounds</property> - <property name="use_markup">True</property> + <property name="label" translatable="yes">Notification area</property> <style> <class name="bold"/> <class name="dim-label"/> </style> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkBox"> + <object class="GtkLabel"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="halign">start</property> - <property name="spacing">12</property> - <child> - <object class="GtkCheckButton" id="use_sound_cb"> - <property name="label" translatable="yes">Play a sound</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">end</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_use_sound_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkBox" id="sound_file_box"> - <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">False</property> - <property name="halign">start</property> - <property name="spacing">12</property> - <child> - <object class="GtkEntry" id="sound_entry"> - <property name="width_request">120</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <signal name="changed" handler="on_sound_entry_changed" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkButton"> - <property name="label">...</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="use_underline">True</property> - <signal name="clicked" handler="on_browse_for_sounds_button_clicked" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> - <child> - <object class="GtkButton" id="play_button"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <signal name="clicked" handler="on_play_button_clicked" swapped="no"/> - <child> - <object class="GtkImage"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="stock">gtk-media-play</property> - </object> - </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> - </packing> - </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> + <property name="label" translatable="yes">Roster</property> + <style> + <class name="bold"/> + <class name="dim-label"/> + </style> </object> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> + <property name="left_attach">1</property> + <property name="top_attach">0</property> </packing> </child> <child> - <object class="GtkCheckButton" id="disable_sound_cb"> - <property name="label" translatable="yes">_Disable existing sound for this event</property> + <object class="GtkCheckButton" id="use_roster_cb"> + <property name="label" translatable="yes">_Show event</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> <property name="halign">start</property> <property name="use_underline">True</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_disable_sound_cb_toggled" swapped="no"/> + <signal name="toggled" handler="on_use_roster_cb_toggled" swapped="no"/> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> + <property name="left_attach">1</property> + <property name="top_attach">1</property> </packing> </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> - </packing> - </child> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> - <child> - <object class="GtkExpander" id="advanced_expander"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="margin_top">6</property> - <child> - <object class="GtkBox"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="orientation">vertical</property> - <property name="spacing">6</property> <child> - <object class="GtkCheckButton" id="one_shot_cb"> - <property name="label" translatable="yes">Delete this rule once it is applied</property> + <object class="GtkCheckButton" id="disable_roster_cb"> + <property name="label" translatable="yes">_Disable showing event</property> <property name="visible">True</property> <property name="can_focus">True</property> <property name="receives_default">False</property> <property name="halign">start</property> - <property name="margin_top">6</property> + <property name="use_underline">True</property> <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_one_shot_cb_toggled" swapped="no"/> + <signal name="toggled" handler="on_disable_roster_cb_toggled" swapped="no"/> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">1</property> + <property name="top_attach">2</property> </packing> </child> <child> - <object class="GtkBox"> + <object class="GtkCheckButton" id="use_systray_cb"> + <property name="label" translatable="yes">_Show event</property> <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="spacing">6</property> - <child> - <object class="GtkCheckButton" id="run_command_cb"> - <property name="label" translatable="yes">Launch a command</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_run_command_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkEntry" id="command_entry"> - <property name="width_request">200</property> - <property name="visible">True</property> - <property name="sensitive">False</property> - <property name="can_focus">True</property> - <signal name="changed" handler="on_command_entry_changed" swapped="no"/> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_use_systray_cb_toggled" swapped="no"/> </object> <packing> - <property name="expand">False</property> - <property name="fill">False</property> - <property name="position">1</property> + <property name="left_attach">0</property> + <property name="top_attach">1</property> </packing> </child> <child> - <object class="GtkGrid"> + <object class="GtkCheckButton" id="disable_systray_cb"> + <property name="label" translatable="yes">_Disable showing event</property> <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_disable_systray_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">2</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="urgency_hint_label"> <property name="can_focus">False</property> - <property name="row_spacing">6</property> - <property name="column_spacing">12</property> - <child> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">start</property> - <property name="label" translatable="yes">Notification area</property> - <style> - <class name="bold"/> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="halign">start</property> - <property name="label" translatable="yes">Roster</property> - <style> - <class name="bold"/> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">0</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="use_roster_cb"> - <property name="label" translatable="yes">_Show event</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_use_roster_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="disable_roster_cb"> - <property name="label" translatable="yes">_Disable showing event</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_disable_roster_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">1</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="use_systray_cb"> - <property name="label" translatable="yes">_Show event</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_use_systray_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">1</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="disable_systray_cb"> - <property name="label" translatable="yes">_Disable showing event</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_disable_systray_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">2</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="urgency_hint_label"> - <property name="can_focus">False</property> - <property name="no_show_all">True</property> - <property name="halign">start</property> - <property name="label" translatable="yes">Make window flash in taskbar</property> - <style> - <class name="bold"/> - <class name="dim-label"/> - </style> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">3</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="use_urgency_hint_cb"> - <property name="label" translatable="yes">_Activate UrgencyHint of window manager</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="no_show_all">True</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_use_urgency_hint_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">4</property> - </packing> - </child> - <child> - <object class="GtkCheckButton" id="disable_urgency_hint_cb"> - <property name="label" translatable="yes">_Deactivate UrgencyHint of window manager</property> - <property name="can_focus">True</property> - <property name="receives_default">False</property> - <property name="no_show_all">True</property> - <property name="halign">start</property> - <property name="use_underline">True</property> - <property name="draw_indicator">True</property> - <signal name="toggled" handler="on_disable_urgency_hint_cb_toggled" swapped="no"/> - </object> - <packing> - <property name="left_attach">0</property> - <property name="top_attach">5</property> - </packing> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> - <child> - <placeholder/> - </child> + <property name="no_show_all">True</property> + <property name="halign">start</property> + <property name="label" translatable="yes">Make window flash in taskbar</property> + <style> + <class name="bold"/> + <class name="dim-label"/> + </style> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">7</property> + <property name="left_attach">0</property> + <property name="top_attach">3</property> </packing> </child> + <child> + <object class="GtkCheckButton" id="use_urgency_hint_cb"> + <property name="label" translatable="yes">_Activate UrgencyHint of window manager</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="no_show_all">True</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_use_urgency_hint_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">4</property> + </packing> + </child> + <child> + <object class="GtkCheckButton" id="disable_urgency_hint_cb"> + <property name="label" translatable="yes">_Deactivate UrgencyHint of window manager</property> + <property name="can_focus">True</property> + <property name="receives_default">False</property> + <property name="no_show_all">True</property> + <property name="halign">start</property> + <property name="use_underline">True</property> + <property name="draw_indicator">True</property> + <signal name="toggled" handler="on_disable_urgency_hint_cb_toggled" swapped="no"/> + </object> + <packing> + <property name="left_attach">0</property> + <property name="top_attach">5</property> + </packing> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> + <child> + <placeholder/> + </child> </object> - </child> - <child type="label"> - <object class="GtkLabel"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">Advanced Actions</property> - <style> - <class name="bold"/> - <class name="dim-label"/> - </style> - </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">7</property> + </packing> </child> </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> - </packing> + </child> + <child type="label"> + <object class="GtkLabel"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Advanced Actions</property> + <style> + <class name="bold"/> + <class name="dim-label"/> + </style> + </object> </child> </object> <packing> - <property name="expand">True</property> + <property name="expand">False</property> <property name="fill">True</property> - <property name="position">1</property> + <property name="position">2</property> </packing> </child> </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> </child> </object> </interface> diff --git a/triggers/triggers.py b/triggers/triggers.py index a7a5cc1..b414831 100644 --- a/triggers/triggers.py +++ b/triggers/triggers.py @@ -29,6 +29,7 @@ from gajim.common import ged from gajim.common import helpers from gajim.plugins import GajimPlugin from gajim.plugins.helpers import log_calls +from gajim.plugins.helpers import get_builder from gajim.plugins.gui import GajimPluginConfigDialog # Since Gajim 1.1.0 _() has to be imported @@ -292,22 +293,20 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): 'one_shot'] def init(self): - self.GTK_BUILDER_FILE_PATH = self.plugin.local_file_path( - 'config_dialog.ui') - self.xml = Gtk.Builder() - self.xml.set_translation_domain('gajim_plugins') - self.xml.add_objects_from_file(self.GTK_BUILDER_FILE_PATH, - ['plugin_box', 'liststore1', 'liststore2']) - plugin_box = self.xml.get_object('plugin_box') - self.get_child().pack_start(plugin_box, True, True, 0) - - self.xml.connect_signals(self) + path = self.plugin.local_file_path('config_dialog.ui') + self._ui = get_builder(path, widgets=['plugin_box', 'liststore1', 'liststore2']) + + box = self.get_content_area() + box.pack_start(self._ui.plugin_box, True, True, 0) + + self._ui.connect_signals(self) self.connect('hide', self.on_hide) def on_run(self): # Fill window for w in ('conditions_treeview', 'config_box', 'event_combobox', 'recipient_type_combobox', 'recipient_list_entry', 'delete_button', + 'online_cb', 'away_cb', 'xa_cb', 'dnd_cb', 'invisible_cb', 'use_sound_cb', 'disable_sound_cb', 'use_popup_cb', 'disable_popup_cb', 'use_auto_open_cb', 'disable_auto_open_cb', 'use_systray_cb', 'disable_systray_cb', 'use_roster_cb', @@ -315,41 +314,32 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): 'has_focus_cb', 'not_has_focus_cb', 'sound_entry', 'sound_file_box', 'up_button', 'down_button', 'run_command_cb', 'command_entry', 'one_shot_cb', 'use_urgency_hint_cb', 'disable_urgency_hint_cb'): - self.__dict__[w] = self.xml.get_object(w) + self._ui.__dict__[w] = self._ui.get_object(w) self.config = {} for n in self.plugin.config: self.config[int(n)] = self.plugin.config[n] - # Contains status checkboxes - self.all_status_rb = self.xml.get_object('all_status_rb') - self.special_status_rb = self.xml.get_object('special_status_rb') - self.online_cb = self.xml.get_object('online_cb') - self.away_cb = self.xml.get_object('away_cb') - self.xa_cb = self.xml.get_object('xa_cb') - self.dnd_cb = self.xml.get_object('dnd_cb') - self.invisible_cb = self.xml.get_object('invisible_cb') - - if not self.conditions_treeview.get_column(0): + if not self._ui.conditions_treeview.get_column(0): # Window never opened model = Gtk.ListStore(int, str) model.set_sort_column_id(0, Gtk.SortType.ASCENDING) - self.conditions_treeview.set_model(model) + self._ui.conditions_treeview.set_model(model) # '#' Means number col = Gtk.TreeViewColumn(_('#')) - self.conditions_treeview.append_column(col) + self._ui.conditions_treeview.append_column(col) renderer = Gtk.CellRendererText() col.pack_start(renderer, expand=False) col.add_attribute(renderer, 'text', 0) col = Gtk.TreeViewColumn(_('Condition')) - self.conditions_treeview.append_column(col) + self._ui.conditions_treeview.append_column(col) renderer = Gtk.CellRendererText() col.pack_start(renderer, expand=True) col.add_attribute(renderer, 'text', 1) else: - model = self.conditions_treeview.get_model() + model = self._ui.conditions_treeview.get_model() model.clear() @@ -358,19 +348,19 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): while num in self.config: iter_ = model.append((num, '')) path = model.get_path(iter_) - self.conditions_treeview.set_cursor(path) + self._ui.conditions_treeview.set_cursor(path) self.active_num = num self.initiate_rule_state() self.set_treeview_string() num += 1 # No rule selected at init time - self.conditions_treeview.get_selection().unselect_all() + self._ui.conditions_treeview.get_selection().unselect_all() self.active_num = -1 - self.config_box.set_sensitive(False) - self.delete_button.set_sensitive(False) - self.down_button.set_sensitive(False) - self.up_button.set_sensitive(False) + self._ui.config_box.set_sensitive(False) + self._ui.delete_button.set_sensitive(False) + self._ui.down_button.set_sensitive(False) + self._ui.up_button.set_sensitive(False) def initiate_rule_state(self): """ @@ -381,110 +371,110 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): # event value = self.config[self.active_num]['event'] if value: - self.event_combobox.set_active(list(self.events_list.keys()).index( + self._ui.event_combobox.set_active(list(self.events_list.keys()).index( value)) else: - self.event_combobox.set_active(-1) + self._ui.event_combobox.set_active(-1) # recipient_type value = self.config[self.active_num]['recipient_type'] if value: - self.recipient_type_combobox.set_active( + self._ui.recipient_type_combobox.set_active( self.recipient_types_list.index(value)) else: - self.recipient_type_combobox.set_active(-1) + self._ui.recipient_type_combobox.set_active(-1) # recipient value = self.config[self.active_num]['recipients'] if not value: value = '' - self.recipient_list_entry.set_text(value) + self._ui.recipient_list_entry.set_text(value) # status value = self.config[self.active_num]['status'] if value == 'all': - self.all_status_rb.set_active(True) + self._ui.all_status_rb.set_active(True) else: - self.special_status_rb.set_active(True) + self._ui.special_status_rb.set_active(True) values = value.split() for v in ('online', 'away', 'xa', 'dnd', 'invisible'): if v in values: - self.__dict__[v + '_cb'].set_active(True) + self._ui.__dict__[v + '_cb'].set_active(True) else: - self.__dict__[v + '_cb'].set_active(False) + self._ui.__dict__[v + '_cb'].set_active(False) - self.on_status_radiobutton_toggled(self.all_status_rb) + self.on_status_radiobutton_toggled(self._ui.all_status_rb) # tab_opened value = self.config[self.active_num]['tab_opened'] - self.tab_opened_cb.set_active(True) - self.not_tab_opened_cb.set_active(True) + self._ui.tab_opened_cb.set_active(True) + self._ui.not_tab_opened_cb.set_active(True) if value == 'no': - self.tab_opened_cb.set_active(False) + self._ui.tab_opened_cb.set_active(False) elif value == 'yes': - self.not_tab_opened_cb.set_active(False) + self._ui.not_tab_opened_cb.set_active(False) # has_focus if 'has_focus' not in self.config[self.active_num]: self.config[self.active_num]['has_focus'] = 'both' value = self.config[self.active_num]['has_focus'] - self.has_focus_cb.set_active(True) - self.not_has_focus_cb.set_active(True) + self._ui.has_focus_cb.set_active(True) + self._ui.not_has_focus_cb.set_active(True) if value == 'no': - self.has_focus_cb.set_active(False) + self._ui.has_focus_cb.set_active(False) elif value == 'yes': - self.not_has_focus_cb.set_active(False) + self._ui.not_has_focus_cb.set_active(False) # sound_file value = self.config[self.active_num]['sound_file'] - self.sound_entry.set_text(value) + self._ui.sound_entry.set_text(value) # sound, popup, auto_open, systray, roster for option in ('sound', 'popup', 'auto_open', 'systray', 'roster', 'urgency_hint'): value = self.config[self.active_num][option] if value == 'yes': - self.__dict__['use_' + option + '_cb'].set_active(True) + self._ui.__dict__['use_' + option + '_cb'].set_active(True) else: - self.__dict__['use_' + option + '_cb'].set_active(False) + self._ui.__dict__['use_' + option + '_cb'].set_active(False) if value == 'no': - self.__dict__['disable_' + option + '_cb'].set_active(True) + self._ui.__dict__['disable_' + option + '_cb'].set_active(True) else: - self.__dict__['disable_' + option + '_cb'].set_active(False) + self._ui.__dict__['disable_' + option + '_cb'].set_active(False) # run_command value = self.config[self.active_num]['run_command'] - self.run_command_cb.set_active(value) + self._ui.run_command_cb.set_active(value) # command value = self.config[self.active_num]['command'] - self.command_entry.set_text(value) + self._ui.command_entry.set_text(value) # one shot if 'one_shot' in self.config[self.active_num]: value = self.config[self.active_num]['one_shot'] else: value = False - self.one_shot_cb.set_active(value) + self._ui.one_shot_cb.set_active(value) def set_treeview_string(self): - (model, iter_) = self.conditions_treeview.get_selection().get_selected() + (model, iter_) = self._ui.conditions_treeview.get_selection().get_selected() if not iter_: return - ind = self.event_combobox.get_active() + ind = self._ui.event_combobox.get_active() event = '' if ind > -1: - event = self.event_combobox.get_model()[ind][0] - ind = self.recipient_type_combobox.get_active() + event = self._ui.event_combobox.get_model()[ind][0] + ind = self._ui.recipient_type_combobox.get_active() recipient_type = '' if ind > -1: - recipient_type = self.recipient_type_combobox.get_model()[ind][0] + recipient_type = self._ui.recipient_type_combobox.get_model()[ind][0] recipient = '' if recipient_type != 'everybody': - recipient = self.recipient_list_entry.get_text() - if self.all_status_rb.get_active(): + recipient = self._ui.recipient_list_entry.get_text() + if self._ui.all_status_rb.get_active(): status = '' else: status = _('and I am: ') for st in ('online', 'away', 'xa', 'dnd', 'invisible'): - if self.__dict__[st + '_cb'].get_active(): + if self._ui.__dict__[st + '_cb'].get_active(): status += helpers.get_uf_show(st) + ' ' model[iter_][1] = _('When event: %(event)s for category: ' '%(recipient_type)s %(recipient)s %(status)s') % { @@ -498,21 +488,21 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): return self.active_num = model[iter_][0] if self.active_num == 0: - self.up_button.set_sensitive(False) + self._ui.up_button.set_sensitive(False) else: - self.up_button.set_sensitive(True) - _max = self.conditions_treeview.get_model().iter_n_children(None) + self._ui.up_button.set_sensitive(True) + _max = self._ui.conditions_treeview.get_model().iter_n_children(None) if self.active_num == _max - 1: - self.down_button.set_sensitive(False) + self._ui.down_button.set_sensitive(False) else: - self.down_button.set_sensitive(True) + self._ui.down_button.set_sensitive(True) self.initiate_rule_state() - self.config_box.set_sensitive(True) - self.delete_button.set_sensitive(True) + self._ui.config_box.set_sensitive(True) + self._ui.delete_button.set_sensitive(True) def on_new_button_clicked(self, widget): - model = self.conditions_treeview.get_model() - num = self.conditions_treeview.get_model().iter_n_children(None) + model = self._ui.conditions_treeview.get_model() + num = self._ui.conditions_treeview.get_model().iter_n_children(None) self.config[num] = {'event': 'message_received', 'recipient_type': 'all', 'recipients': '', 'status': 'all', 'tab_opened': 'both', 'has_focus': 'both', 'sound': '', 'sound_file': '', 'popup': '', @@ -520,13 +510,13 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): 'roster': '', 'one_shot': False, 'urgency_hint': False} iter_ = model.append((num, '')) path = model.get_path(iter_) - self.conditions_treeview.set_cursor(path) + self._ui.conditions_treeview.set_cursor(path) self.active_num = num self.set_treeview_string() - self.config_box.set_sensitive(True) + self._ui.config_box.set_sensitive(True) def on_delete_button_clicked(self, widget): - (model, iter_) = self.conditions_treeview.get_selection().get_selected() + (model, iter_) = self._ui.conditions_treeview.get_selection().get_selected() if not iter_: return # up all others @@ -540,13 +530,13 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): model.remove(iter_) del self.config[num] self.active_num = '' - self.config_box.set_sensitive(False) - self.delete_button.set_sensitive(False) - self.up_button.set_sensitive(False) - self.down_button.set_sensitive(False) + self._ui.config_box.set_sensitive(False) + self._ui.delete_button.set_sensitive(False) + self._ui.up_button.set_sensitive(False) + self._ui.down_button.set_sensitive(False) def on_up_button_clicked(self, widget): - (model, iter_) = self.conditions_treeview.get_selection().get_selected() + (model, iter_) = self._ui.conditions_treeview.get_selection().get_selected() if not iter_: return conf = self.config[self.active_num].copy() @@ -558,10 +548,10 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): path = model.get_path(iter_) iter_ = model.get_iter((path[0] - 1,)) model[iter_][0] = self.active_num - self.on_conditions_treeview_cursor_changed(self.conditions_treeview) + self.on_conditions_treeview_cursor_changed(self._ui.conditions_treeview) def on_down_button_clicked(self, widget): - (model, iter_) = self.conditions_treeview.get_selection().get_selected() + (model, iter_) = self._ui.conditions_treeview.get_selection().get_selected() if not iter_: return conf = self.config[self.active_num].copy() @@ -571,12 +561,12 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): model[iter_][0] = self.active_num + 1 iter_ = model.iter_next(iter_) model[iter_][0] = self.active_num - self.on_conditions_treeview_cursor_changed(self.conditions_treeview) + self.on_conditions_treeview_cursor_changed(self._ui.conditions_treeview) def on_event_combobox_changed(self, widget): if self.active_num < 0: return - active = self.event_combobox.get_active() + active = self._ui.event_combobox.get_active() if active == -1: return else: @@ -584,22 +574,22 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): self.config[self.active_num]['event'] = event for w in ('use_systray_cb', 'disable_systray_cb', 'use_roster_cb', 'disable_roster_cb'): - self.__dict__[w].set_sensitive(True) + self._ui.__dict__[w].set_sensitive(True) for w in self.events_list[event]: - self.__dict__[w].set_sensitive(False) - self.__dict__[w].set_state(False) + self._ui.__dict__[w].set_sensitive(False) + self._ui.__dict__[w].set_state(False) self.set_treeview_string() def on_recipient_type_combobox_changed(self, widget): if self.active_num < 0: return recipient_type = self.recipient_types_list[ - self.recipient_type_combobox.get_active()] + self._ui.recipient_type_combobox.get_active()] self.config[self.active_num]['recipient_type'] = recipient_type if recipient_type == 'all': - self.recipient_list_entry.set_sensitive(False) + self._ui.recipient_list_entry.set_sensitive(False) else: - self.recipient_list_entry.set_sensitive(True) + self._ui.recipient_list_entry.set_sensitive(True) self.set_treeview_string() def on_recipient_list_entry_changed(self, widget): @@ -615,7 +605,7 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): return status = '' for st in ('online', 'away', 'xa', 'dnd', 'invisible'): - if self.__dict__[st + '_cb'].get_active(): + if self._ui.__dict__[st + '_cb'].get_active(): status += st + ' ' if status: status = status[:-1] @@ -625,18 +615,18 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): def on_status_radiobutton_toggled(self, widget): if self.active_num < 0: return - if self.all_status_rb.get_active(): - self.xml.get_object('status_expander').set_expanded(False) + if self._ui.all_status_rb.get_active(): + self._ui.status_expander.set_expanded(False) self.config[self.active_num]['status'] = 'all' # 'All status' clicked for st in ('online', 'away', 'xa', 'dnd', 'invisible'): - self.__dict__[st + '_cb'].set_sensitive(False) + self._ui.__dict__[st + '_cb'].set_sensitive(False) else: - self.xml.get_object('status_expander').set_expanded(True) + self._ui.status_expander.set_expanded(True) self.set_status_config() # 'special status' clicked for st in ('online', 'away', 'xa', 'dnd', 'invisible'): - self.__dict__[st + '_cb'].set_sensitive(True) + self._ui.__dict__[st + '_cb'].set_sensitive(True) self.set_treeview_string() @@ -649,54 +639,54 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): def on_tab_opened_cb_toggled(self, widget): if self.active_num < 0: return - if self.tab_opened_cb.get_active(): - self.has_focus_cb.set_sensitive(True) - self.not_has_focus_cb.set_sensitive(True) - if self.not_tab_opened_cb.get_active(): + if self._ui.tab_opened_cb.get_active(): + self._ui.has_focus_cb.set_sensitive(True) + self._ui.not_has_focus_cb.set_sensitive(True) + if self._ui.not_tab_opened_cb.get_active(): self.config[self.active_num]['tab_opened'] = 'both' else: self.config[self.active_num]['tab_opened'] = 'yes' else: - self.has_focus_cb.set_sensitive(False) - self.not_has_focus_cb.set_sensitive(False) - self.not_tab_opened_cb.set_active(True) + self._ui.has_focus_cb.set_sensitive(False) + self._ui.not_has_focus_cb.set_sensitive(False) + self._ui.not_tab_opened_cb.set_active(True) self.config[self.active_num]['tab_opened'] = 'no' def on_not_tab_opened_cb_toggled(self, widget): if self.active_num < 0: return - if self.not_tab_opened_cb.get_active(): - if self.tab_opened_cb.get_active(): + if self._ui.not_tab_opened_cb.get_active(): + if self._ui.tab_opened_cb.get_active(): self.config[self.active_num]['tab_opened'] = 'both' else: self.config[self.active_num]['tab_opened'] = 'no' else: - self.tab_opened_cb.set_active(True) + self._ui.tab_opened_cb.set_active(True) self.config[self.active_num]['tab_opened'] = 'yes' # has_focus OR (not xor) not_has_focus must be active def on_has_focus_cb_toggled(self, widget): if self.active_num < 0: return - if self.has_focus_cb.get_active(): - if self.not_has_focus_cb.get_active(): + if self._ui.has_focus_cb.get_active(): + if self._ui.not_has_focus_cb.get_active(): self.config[self.active_num]['has_focus'] = 'both' else: self.config[self.active_num]['has_focus'] = 'yes' else: - self.not_has_focus_cb.set_active(True) + self._ui.not_has_focus_cb.set_active(True) self.config[self.active_num]['has_focus'] = 'no' def on_not_has_focus_cb_toggled(self, widget): if self.active_num < 0: return - if self.not_has_focus_cb.get_active(): - if self.has_focus_cb.get_active(): + if self._ui.not_has_focus_cb.get_active(): + if self._ui.has_focus_cb.get_active(): self.config[self.active_num]['has_focus'] = 'both' else: self.config[self.active_num]['has_focus'] = 'no' else: - self.has_focus_cb.set_active(True) + self._ui.has_focus_cb.set_active(True) self.config[self.active_num]['has_focus'] = 'yes' def on_use_it_toggled(self, widget, oposite_widget, option): @@ -720,11 +710,11 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): self.config[self.active_num][option] = '' def on_use_sound_cb_toggled(self, widget): - self.on_use_it_toggled(widget, self.disable_sound_cb, 'sound') + self.on_use_it_toggled(widget, self._ui.disable_sound_cb, 'sound') if widget.get_active(): - self.sound_file_box.set_sensitive(True) + self._ui.sound_file_box.set_sensitive(True) else: - self.sound_file_box.set_sensitive(False) + self._ui.sound_file_box.set_sensitive(False) def on_browse_for_sounds_button_clicked(self, widget, data=None): if NEW_FILECHOOSER: @@ -738,9 +728,9 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): def on_ok(path_to_snd_file): self.config[self.active_num]['sound_file'] = path_to_snd_file - self.sound_entry.set_text(path_to_snd_file) + self._ui.sound_entry.set_text(path_to_snd_file) - path_to_snd_file = self.sound_entry.get_text() + path_to_snd_file = self._ui.sound_entry.get_text() path_to_snd_file = os.path.join(os.getcwd(), path_to_snd_file) SoundChooserDialog(on_ok, path=path_to_snd_file, @@ -755,65 +745,65 @@ class TriggersPluginConfigDialog(GajimPluginConfigDialog): if not path_to_snd_file: path_to_snd_file = '' self.config[self.active_num]['sound_file'] = path_to_snd_file - self.sound_entry.set_text(path_to_snd_file) + self._ui.sound_entry.set_text(path_to_snd_file) - path_to_snd_file = self.sound_entry.get_text() + path_to_snd_file = self._ui.sound_entry.get_text() path_to_snd_file = os.path.join(os.getcwd(), path_to_snd_file) dialog = SoundChooserDialog(path_to_snd_file, on_ok) def on_play_button_clicked(self, widget): - helpers.play_sound_file(self.sound_entry.get_text()) + helpers.play_sound_file(self._ui.sound_entry.get_text()) def on_disable_sound_cb_toggled(self, widget): - self.on_disable_it_toggled(widget, self.use_sound_cb, 'sound') + self.on_disable_it_toggled(widget, self._ui.use_sound_cb, 'sound') def on_sound_entry_changed(self, widget): self.config[self.active_num]['sound_file'] = widget.get_text() def on_use_popup_cb_toggled(self, widget): - self.on_use_it_toggled(widget, self.disable_popup_cb, 'popup') + self.on_use_it_toggled(widget, self._ui.disable_popup_cb, 'popup') def on_disable_popup_cb_toggled(self, widget): - self.on_disable_it_toggled(widget, self.use_popup_cb, 'popup') + self.on_disable_it_toggled(widget, self._ui.use_popup_cb, 'popup') def on_use_auto_open_cb_toggled(self, widget): - self.on_use_it_toggled(widget, self.disable_auto_open_cb, 'auto_open') + self.on_use_it_toggled(widget, self._ui.disable_auto_open_cb, 'auto_open') def on_disable_auto_open_cb_toggled(self, widget): - self.on_disable_it_toggled(widget, self.use_auto_open_cb, 'auto_open') + self.on_disable_it_toggled(widget, self._ui.use_auto_open_cb, 'auto_open') def on_run_command_cb_toggled(self, widget): self.config[self.active_num]['run_command'] = widget.get_active() if widget.get_active(): - self.command_entry.set_sensitive(True) + self._ui.command_entry.set_sensitive(True) else: - self.command_entry.set_sensitive(False) + self._ui.command_entry.set_sensitive(False) def on_command_entry_changed(self, widget): self.config[self.active_num]['command'] = widget.get_text() def on_use_systray_cb_toggled(self, widget): - self.on_use_it_toggled(widget, self.disable_systray_cb, 'systray') + self.on_use_it_toggled(widget, self._ui.disable_systray_cb, 'systray') def on_disable_systray_cb_toggled(self, widget): - self.on_disable_it_toggled(widget, self.use_systray_cb, 'systray') + self.on_disable_it_toggled(widget, self._ui.use_systray_cb, 'systray') def on_use_roster_cb_toggled(self, widget): - self.on_use_it_toggled(widget, self.disable_roster_cb, 'roster') + self.on_use_it_toggled(widget, self._ui.disable_roster_cb, 'roster') def on_disable_roster_cb_toggled(self, widget): - self.on_disable_it_toggled(widget, self.use_roster_cb, 'roster') + self.on_disable_it_toggled(widget, self._ui.use_roster_cb, 'roster') def on_one_shot_cb_toggled(self, widget): self.config[self.active_num]['one_shot'] = widget.get_active() - self.command_entry.set_sensitive(widget.get_active()) + self._ui.command_entry.set_sensitive(widget.get_active()) def on_use_urgency_hint_cb_toggled(self, widget): - self.on_use_it_toggled(widget, self.disable_urgency_hint_cb, + self.on_use_it_toggled(widget, self._ui.disable_urgency_hint_cb, 'uregency_hint') def on_disable_urgency_hint_cb_toggled(self, widget): - self.on_disable_it_toggled(widget, self.use_urgency_hint_cb, + self.on_disable_it_toggled(widget, self._ui.use_urgency_hint_cb, 'uregency_hint') def on_hide(self, widget): |