[Notifications] Update gtkui from libglade to gtkbuilder

This commit is contained in:
DjLegolas 2017-08-06 13:05:38 +03:00 committed by Calum Lind
parent 470490769f
commit 24a31b1194
2 changed files with 299 additions and 217 deletions

View file

@ -1,185 +1,230 @@
<?xml version="1.0" encoding="UTF-8"?>
<glade-interface>
<!-- interface-requires gtk+ 2.16 -->
<interface>
<requires lib="gtk+" version="2.24"/>
<!-- interface-naming-policy toplevel-contextual -->
<widget class="GtkWindow" id="window">
<object class="GtkAdjustment" id="adjustment1">
<property name="lower">1</property>
<property name="upper">65535</property>
<property name="value">25</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
<object class="GtkWindow" id="window">
<property name="can_focus">False</property>
<child>
<widget class="GtkVBox" id="prefs_box">
<object class="GtkVBox" id="prefs_box">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<widget class="GtkViewport" id="viewport1">
<object class="GtkViewport" id="viewport1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="resize_mode">queue</property>
<child>
<widget class="GtkVBox" id="vbox4">
<object class="GtkVBox" id="vbox4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<widget class="GtkVBox" id="vbox3">
<object class="GtkVBox" id="vbox3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<widget class="GtkLabel" id="label22">
<object class="GtkLabel" id="label22">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="xalign">0</property>
<property name="xpad">10</property>
<property name="ypad">10</property>
<property name="label" translatable="yes">&lt;b&gt;&lt;i&gt;&lt;big&gt;Notifications&lt;/big&gt;&lt;/i&gt;&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkHSeparator" id="hseparator1">
<object class="GtkHSeparator" id="hseparator1">
<property name="visible">True</property>
</widget>
<property name="can_focus">False</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkAlignment" id="alignment1">
<object class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="yalign">0</property>
<property name="bottom_padding">2</property>
<property name="left_padding">2</property>
<property name="right_padding">2</property>
<child>
<widget class="GtkNotebook" id="notebook1">
<object class="GtkNotebook" id="notebook1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<child>
<widget class="GtkVBox" id="vbox2">
<object class="GtkVBox" id="vbox2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<widget class="GtkFrame" id="frame2">
<object class="GtkFrame" id="frame2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label_xalign">0</property>
<property name="shadow_type">none</property>
<child>
<widget class="GtkAlignment" id="alignment2">
<object class="GtkAlignment" id="alignment2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkVBox" id="vbox1">
<object class="GtkVBox" id="vbox1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<widget class="GtkCheckButton" id="blink_enabled">
<object class="GtkCheckButton" id="blink_enabled">
<property name="label" translatable="yes">Tray icon blinks enabled</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="popup_enabled">
<object class="GtkCheckButton" id="popup_enabled">
<property name="label" translatable="yes">Popups enabled</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<widget class="GtkHBox" id="hbox2">
<object class="GtkHBox" id="hbox2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<widget class="GtkCheckButton" id="sound_enabled">
<object class="GtkCheckButton" id="sound_enabled">
<property name="label" translatable="yes">Sound enabled</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
<signal name="toggled" handler="on_sound_enabled_toggled"/>
</widget>
<signal name="toggled" handler="on_sound_enabled_toggled" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkFileChooserButton" id="sound_path">
<object class="GtkFileChooserButton" id="sound_path">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="create_folders">False</property>
<signal name="update_preview" handler="on_sound_path_update_preview"/>
</widget>
<signal name="update-preview" handler="on_sound_path_update_preview" swapped="no"/>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="padding">2</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</widget>
</object>
</child>
</widget>
</object>
</child>
<child>
<widget class="GtkLabel" id="label6">
<child type="label">
<object class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xpad">5</property>
<property name="label" translatable="yes">&lt;b&gt;UI Notifications&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
<packing>
<property name="type">label_item</property>
</packing>
</object>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkFrame" id="frame3">
<object class="GtkFrame" id="frame3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label_xalign">0</property>
<property name="shadow_type">none</property>
<child>
<widget class="GtkAlignment" id="alignment3">
<object class="GtkAlignment" id="alignment3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkTable" id="prefs_table">
<object class="GtkTable" id="prefs_table">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="n_rows">7</property>
<property name="n_columns">4</property>
<property name="column_spacing">2</property>
<property name="row_spacing">2</property>
<child>
<widget class="GtkLabel" id="label1">
<placeholder/>
</child>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Hostname:</property>
<property name="justify">right</property>
</widget>
</object>
<packing>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="smtp_host">
<object class="GtkEntry" id="smtp_host">
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
<property name="primary_icon_activatable">False</property>
<property name="secondary_icon_activatable">False</property>
<property name="primary_icon_sensitive">True</property>
<property name="secondary_icon_sensitive">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
@ -188,11 +233,12 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="label2">
<object class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Port:</property>
<property name="justify">right</property>
</widget>
</object>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
@ -201,15 +247,19 @@
</packing>
</child>
<child>
<widget class="GtkSpinButton" id="smtp_port">
<object class="GtkSpinButton" id="smtp_port">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="max_length">5</property>
<property name="width_chars">5</property>
<property name="adjustment">25 1 65535 1 10 0</property>
<property name="primary_icon_activatable">False</property>
<property name="secondary_icon_activatable">False</property>
<property name="primary_icon_sensitive">True</property>
<property name="secondary_icon_sensitive">True</property>
<property name="adjustment">adjustment1</property>
<property name="climb_rate">1</property>
<property name="numeric">True</property>
</widget>
</object>
<packing>
<property name="left_attach">3</property>
<property name="right_attach">4</property>
@ -218,21 +268,26 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="label3">
<object class="GtkLabel" id="label3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Username:</property>
<property name="justify">right</property>
</widget>
</object>
<packing>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="smtp_user">
<object class="GtkEntry" id="smtp_user">
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
<property name="primary_icon_activatable">False</property>
<property name="secondary_icon_activatable">False</property>
<property name="primary_icon_sensitive">True</property>
<property name="secondary_icon_sensitive">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">4</property>
@ -241,21 +296,26 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="label4">
<object class="GtkLabel" id="label4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Password:</property>
</widget>
</object>
<packing>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="smtp_pass">
<object class="GtkEntry" id="smtp_pass">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="visibility">False</property>
</widget>
<property name="primary_icon_activatable">False</property>
<property name="secondary_icon_activatable">False</property>
<property name="primary_icon_sensitive">True</property>
<property name="secondary_icon_sensitive">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">4</property>
@ -264,52 +324,58 @@
</packing>
</child>
<child>
<widget class="GtkFrame" id="frame1">
<object class="GtkFrame" id="frame1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label_xalign">0</property>
<property name="shadow_type">none</property>
<child>
<widget class="GtkAlignment" id="alignment4">
<object class="GtkAlignment" id="alignment4">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="left_padding">12</property>
<child>
<widget class="GtkHBox" id="hbox1">
<object class="GtkHBox" id="hbox1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">2</property>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow1">
<object class="GtkScrolledWindow" id="scrolledwindow1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<property name="shadow_type">in</property>
<child>
<widget class="GtkTreeView" id="smtp_recipients">
<object class="GtkTreeView" id="smtp_recipients">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="headers_visible">False</property>
<property name="enable_grid_lines">horizontal</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkVButtonBox" id="vbuttonbox1">
<object class="GtkVButtonBox" id="vbuttonbox1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">5</property>
<property name="layout_style">start</property>
<child>
<widget class="GtkButton" id="add_button">
<object class="GtkButton" id="add_button">
<property name="label">gtk-add</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="on_add_button_clicked"/>
</widget>
<signal name="clicked" handler="on_add_button_clicked" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@ -317,43 +383,42 @@
</packing>
</child>
<child>
<widget class="GtkButton" id="delete_button">
<object class="GtkButton" id="delete_button">
<property name="label">gtk-delete</property>
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="on_delete_button_clicked"/>
</widget>
<signal name="clicked" handler="on_delete_button_clicked" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="padding">3</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
</child>
</widget>
</object>
</child>
<child>
<widget class="GtkLabel" id="label5">
<child type="label">
<object class="GtkLabel" id="label5">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">&lt;b&gt;Recipients&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
<packing>
<property name="type">label_item</property>
</packing>
</object>
</child>
</widget>
</object>
<packing>
<property name="right_attach">4</property>
<property name="top_attach">6</property>
@ -361,18 +426,19 @@
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="smtp_tls">
<object class="GtkCheckButton" id="smtp_tls">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
<child>
<widget class="GtkLabel" id="label9">
<object class="GtkLabel" id="label9">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Server requires TLS/SSL</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">4</property>
@ -382,21 +448,26 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="label8">
<object class="GtkLabel" id="label8">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">From:</property>
<property name="justify">right</property>
</widget>
</object>
<packing>
<property name="top_attach">4</property>
<property name="bottom_attach">5</property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="smtp_from">
<object class="GtkEntry" id="smtp_from">
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
<property name="primary_icon_activatable">False</property>
<property name="secondary_icon_activatable">False</property>
<property name="primary_icon_sensitive">True</property>
<property name="secondary_icon_sensitive">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">4</property>
@ -405,141 +476,147 @@
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="smtp_enabled">
<object class="GtkCheckButton" id="smtp_enabled">
<property name="label" translatable="yes">Enabled</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
<signal name="toggled" handler="on_enabled_toggled"/>
</widget>
<signal name="toggled" handler="on_enabled_toggled" swapped="no"/>
</object>
<packing>
<property name="right_attach">4</property>
</packing>
</child>
<child>
<placeholder/>
</child>
</widget>
</object>
</child>
</widget>
</object>
</child>
<child>
<widget class="GtkLabel" id="label7">
<child type="label">
<object class="GtkLabel" id="label7">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xpad">5</property>
<property name="label" translatable="yes">&lt;b&gt;Email Notifications&lt;/b&gt;</property>
<property name="use_markup">True</property>
</widget>
<packing>
<property name="type">label_item</property>
</packing>
</object>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
</child>
<child>
<widget class="GtkLabel" id="settings_page_label">
<child type="tab">
<object class="GtkLabel" id="settings_page_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Settings</property>
</widget>
</object>
<packing>
<property name="tab_fill">False</property>
<property name="type">tab</property>
</packing>
</child>
<child>
<widget class="GtkVBox" id="vbox5">
<object class="GtkVBox" id="vbox5">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<placeholder/>
</child>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow2">
<object class="GtkScrolledWindow" id="scrolledwindow2">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<child>
<widget class="GtkTreeView" id="subscriptions_treeview">
<object class="GtkTreeView" id="subscriptions_treeview">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="enable_grid_lines">horizontal</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label12">
<object class="GtkLabel" id="label12">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">This configuration does not mean that you'll actually receive notifications for all these events.</property>
<property name="justify">fill</property>
<property name="wrap">True</property>
</widget>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="padding">2</property>
<property name="position">2</property>
</packing>
</child>
</widget>
</object>
<packing>
<property name="position">1</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="subscriptions_page_label">
<child type="tab">
<object class="GtkLabel" id="subscriptions_page_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Subscriptions</property>
</widget>
</object>
<packing>
<property name="position">1</property>
<property name="tab_fill">False</property>
<property name="type">tab</property>
</packing>
</child>
<child>
<widget class="GtkVBox" id="sounds_page">
<object class="GtkVBox" id="sounds_page">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow3">
<object class="GtkScrolledWindow" id="scrolledwindow3">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<child>
<widget class="GtkTreeView" id="sounds_treeview">
<object class="GtkTreeView" id="sounds_treeview">
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkHButtonBox" id="hbuttonbox1">
<object class="GtkHButtonBox" id="hbuttonbox1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="spacing">10</property>
<property name="layout_style">end</property>
<child>
<widget class="GtkButton" id="sounds_revert_button">
<object class="GtkButton" id="sounds_revert_button">
<property name="label">gtk-revert-to-saved</property>
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="on_sounds_revert_button_clicked"/>
</widget>
<signal name="clicked" handler="on_sounds_revert_button_clicked" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
@ -547,59 +624,64 @@
</packing>
</child>
<child>
<widget class="GtkButton" id="sounds_edit_button">
<object class="GtkButton" id="sounds_edit_button">
<property name="label">gtk-edit</property>
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="use_stock">True</property>
<signal name="clicked" handler="on_sounds_edit_button_clicked"/>
</widget>
<signal name="clicked" handler="on_sounds_edit_button_clicked" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="padding">5</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
<packing>
<property name="position">2</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="sounds_page_label">
<child type="tab">
<object class="GtkLabel" id="sounds_page_label">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Sound Customization</property>
</widget>
</object>
<packing>
<property name="position">2</property>
<property name="tab_fill">False</property>
<property name="type">tab</property>
</packing>
</child>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</widget>
</object>
</child>
</widget>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
</widget>
</object>
</child>
</widget>
</glade-interface>
</object>
</interface>

View file

@ -18,7 +18,6 @@ import logging
from os.path import basename
import gtk
import gtk.glade
from twisted.internet import defer
import deluge.common
@ -238,9 +237,10 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
self.config = deluge.configmanager.ConfigManager(
'notifications-gtk.conf', DEFAULT_PREFS
)
self.glade = gtk.glade.XML(get_resource('config.glade'))
self.glade.get_widget('smtp_port').set_value(25)
self.prefs = self.glade.get_widget('prefs_box')
self.builder = gtk.Builder()
self.builder.add_from_file(get_resource('config.ui'))
self.builder.get_object('smtp_port').set_value(25)
self.prefs = self.builder.get_object('prefs_box')
self.prefs.show_all()
self.build_recipients_model_populate_treeview()
@ -251,7 +251,7 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
self.popuplate_what_needs_handled_events
)
self.glade.signal_autoconnect({
self.builder.connect_signals({
'on_add_button_clicked': (self.on_add_button_clicked,
self.recipients_treeview),
'on_delete_button_clicked': (self.on_delete_button_clicked,
@ -276,24 +276,24 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
self.on_show_prefs)
if not POPUP_AVAILABLE:
self.glade.get_widget('popup_enabled').set_property('sensitive',
False)
self.builder.get_object('popup_enabled').set_property('sensitive',
False)
if not SOUND_AVAILABLE:
# for widget_name in ('sound_enabled', 'sound_path', 'sounds_page', 'sounds_page_label'):
# self.glade.get_widget(widget_name).set_property('sensitive', False)
self.glade.get_widget('sound_enabled').set_property('sensitive',
# self.builder.get_object(widget_name).set_property('sensitive', False)
self.builder.get_object('sound_enabled').set_property('sensitive',
False)
self.builder.get_object('sound_path').set_property('sensitive', False)
self.builder.get_object('sounds_page').set_property('sensitive',
False)
self.glade.get_widget('sound_path').set_property('sensitive', False)
self.glade.get_widget('sounds_page').set_property('sensitive',
False)
self.glade.get_widget('sounds_page_label').set_property('sensitive',
False)
self.builder.get_object('sounds_page_label').set_property('sensitive',
False)
self.systray = component.get('SystemTray')
if not hasattr(self.systray, 'tray'):
# Tray is not beeing used
self.glade.get_widget('blink_enabled').set_property('sensitive',
False)
self.builder.get_object('blink_enabled').set_property('sensitive',
False)
GtkUiNotifications.enable(self)
@ -307,7 +307,7 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
def build_recipients_model_populate_treeview(self):
# SMTP Recipients treeview/model
self.recipients_treeview = self.glade.get_widget('smtp_recipients')
self.recipients_treeview = self.builder.get_object('smtp_recipients')
treeview_selection = self.recipients_treeview.get_selection()
treeview_selection.connect(
'changed', self.on_recipients_treeview_selection_changed
@ -326,7 +326,7 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
def build_sounds_model_populate_treeview(self):
# Sound customisation treeview/model
self.sounds_treeview = self.glade.get_widget('sounds_treeview')
self.sounds_treeview = self.builder.get_object('sounds_treeview')
sounds_selection = self.sounds_treeview.get_selection()
sounds_selection.connect(
'changed', self.on_sounds_treeview_selection_changed
@ -362,7 +362,7 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
def build_notifications_model_populate_treeview(self):
# Notification Subscriptions treeview/model
self.subscriptions_treeview = self.glade.get_widget('subscriptions_treeview')
self.subscriptions_treeview = self.builder.get_object('subscriptions_treeview')
subscriptions_selection = self.subscriptions_treeview.get_selection()
subscriptions_selection.connect(
'changed', self.on_subscriptions_treeview_selection_changed
@ -469,7 +469,7 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
current_sound_subscriptions.append(event)
old_sound_file = self.config['sound_path']
new_sound_file = self.glade.get_widget('sound_path').get_filename()
new_sound_file = self.builder.get_object('sound_path').get_filename()
log.debug('Old Default sound file: %s New one: %s',
old_sound_file, new_sound_file)
custom_sounds = {}
@ -480,9 +480,9 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
custom_sounds[event_name] = filepath
self.config.config.update({
'popup_enabled': self.glade.get_widget('popup_enabled').get_active(),
'blink_enabled': self.glade.get_widget('blink_enabled').get_active(),
'sound_enabled': self.glade.get_widget('sound_enabled').get_active(),
'popup_enabled': self.builder.get_object('popup_enabled').get_active(),
'blink_enabled': self.builder.get_object('blink_enabled').get_active(),
'sound_enabled': self.builder.get_object('sound_enabled').get_active(),
'sound_path': new_sound_file,
'subscriptions': {
'popup': current_popup_subscriptions,
@ -494,13 +494,13 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
self.config.save()
core_config = {
'smtp_enabled': self.glade.get_widget('smtp_enabled').get_active(),
'smtp_host': self.glade.get_widget('smtp_host').get_text(),
'smtp_port': self.glade.get_widget('smtp_port').get_value(),
'smtp_user': self.glade.get_widget('smtp_user').get_text(),
'smtp_pass': self.glade.get_widget('smtp_pass').get_text(),
'smtp_from': self.glade.get_widget('smtp_from').get_text(),
'smtp_tls': self.glade.get_widget('smtp_tls').get_active(),
'smtp_enabled': self.builder.get_object('smtp_enabled').get_active(),
'smtp_host': self.builder.get_object('smtp_host').get_text(),
'smtp_port': self.builder.get_object('smtp_port').get_value(),
'smtp_user': self.builder.get_object('smtp_user').get_text(),
'smtp_pass': self.builder.get_object('smtp_pass').get_text(),
'smtp_from': self.builder.get_object('smtp_from').get_text(),
'smtp_tls': self.builder.get_object('smtp_tls').get_active(),
'smtp_recipients': [dest[0] for dest in self.recipients_model if
dest[0] != 'USER@HOST'],
'subscriptions': {'email': current_email_subscriptions}
@ -514,37 +514,37 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
def cb_get_config(self, core_config):
'callback for on show_prefs'
self.glade.get_widget('smtp_host').set_text(core_config['smtp_host'])
self.glade.get_widget('smtp_port').set_value(core_config['smtp_port'])
self.glade.get_widget('smtp_user').set_text(core_config['smtp_user'])
self.glade.get_widget('smtp_pass').set_text(core_config['smtp_pass'])
self.glade.get_widget('smtp_from').set_text(core_config['smtp_from'])
self.glade.get_widget('smtp_tls').set_active(core_config['smtp_tls'])
self.builder.get_object('smtp_host').set_text(core_config['smtp_host'])
self.builder.get_object('smtp_port').set_value(core_config['smtp_port'])
self.builder.get_object('smtp_user').set_text(core_config['smtp_user'])
self.builder.get_object('smtp_pass').set_text(core_config['smtp_pass'])
self.builder.get_object('smtp_from').set_text(core_config['smtp_from'])
self.builder.get_object('smtp_tls').set_active(core_config['smtp_tls'])
self.recipients_model.clear()
for recipient in core_config['smtp_recipients']:
self.recipients_model.set(self.recipients_model.append(),
RECIPIENT_FIELD, recipient,
RECIPIENT_EDIT, False)
self.glade.get_widget('smtp_enabled').set_active(
self.builder.get_object('smtp_enabled').set_active(
core_config['smtp_enabled']
)
self.glade.get_widget('sound_enabled').set_active(
self.builder.get_object('sound_enabled').set_active(
self.config['sound_enabled']
)
self.glade.get_widget('popup_enabled').set_active(
self.builder.get_object('popup_enabled').set_active(
self.config['popup_enabled']
)
self.glade.get_widget('blink_enabled').set_active(
self.builder.get_object('blink_enabled').set_active(
self.config['blink_enabled']
)
if self.config['sound_path']:
sound_path = self.config['sound_path']
else:
sound_path = deluge.common.get_default_download_dir()
self.glade.get_widget('sound_path').set_filename(sound_path)
self.builder.get_object('sound_path').set_filename(sound_path)
# Force toggle
self.on_enabled_toggled(self.glade.get_widget('smtp_enabled'))
self.on_sound_enabled_toggled(self.glade.get_widget('sound_enabled'))
self.on_enabled_toggled(self.builder.get_object('smtp_enabled'))
self.on_sound_enabled_toggled(self.builder.get_object('sound_enabled'))
client.notifications.get_handled_events().addCallback(
self.popuplate_what_needs_handled_events,
@ -575,34 +575,34 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
def on_recipients_treeview_selection_changed(self, selection):
model, selected_connection_iter = selection.get_selected()
if selected_connection_iter:
self.glade.get_widget('delete_button').set_property('sensitive',
True)
self.builder.get_object('delete_button').set_property('sensitive',
True)
else:
self.glade.get_widget('delete_button').set_property('sensitive',
False)
self.builder.get_object('delete_button').set_property('sensitive',
False)
def on_subscriptions_treeview_selection_changed(self, selection):
model, selected_connection_iter = selection.get_selected()
if selected_connection_iter:
self.glade.get_widget('delete_button').set_property('sensitive',
True)
self.builder.get_object('delete_button').set_property('sensitive',
True)
else:
self.glade.get_widget('delete_button').set_property('sensitive',
False)
self.builder.get_object('delete_button').set_property('sensitive',
False)
def on_sounds_treeview_selection_changed(self, selection):
model, selected_iter = selection.get_selected()
if selected_iter:
self.glade.get_widget('sounds_edit_button').set_property('sensitive', True)
self.builder.get_object('sounds_edit_button').set_property('sensitive', True)
path = model.get(selected_iter, SND_PATH)[0]
log.debug('Sound selection changed: %s', path)
if path != self.config['sound_path']:
self.glade.get_widget('sounds_revert_button').set_property('sensitive', True)
self.builder.get_object('sounds_revert_button').set_property('sensitive', True)
else:
self.glade.get_widget('sounds_revert_button').set_property('sensitive', False)
self.builder.get_object('sounds_revert_button').set_property('sensitive', False)
else:
self.glade.get_widget('sounds_edit_button').set_property('sensitive', False)
self.glade.get_widget('sounds_revert_button').set_property('sensitive', False)
self.builder.get_object('sounds_edit_button').set_property('sensitive', False)
self.builder.get_object('sounds_revert_button').set_property('sensitive', False)
def on_sounds_revert_button_clicked(self, widget):
log.debug('on_sounds_revert_button_clicked')
@ -646,25 +646,25 @@ class GtkUI(GtkPluginBase, GtkUiNotifications):
for widget_name in ('smtp_host', 'smtp_port', 'smtp_user', 'smtp_pass',
'smtp_pass', 'smtp_tls', 'smtp_from',
'smtp_recipients'):
self.glade.get_widget(widget_name).set_property('sensitive',
widget.get_active())
self.builder.get_object(widget_name).set_property('sensitive',
widget.get_active())
def on_sound_enabled_toggled(self, widget):
if widget.get_active():
self.glade.get_widget('sound_path').set_property('sensitive', True)
self.glade.get_widget('sounds_page').set_property('sensitive',
True)
self.glade.get_widget('sounds_page_label').set_property('sensitive',
True)
self.builder.get_object('sound_path').set_property('sensitive', True)
self.builder.get_object('sounds_page').set_property('sensitive',
True)
self.builder.get_object('sounds_page_label').set_property('sensitive',
True)
else:
self.glade.get_widget('sound_path').set_property('sensitive', False)
self.glade.get_widget('sounds_page').set_property('sensitive',
False)
self.glade.get_widget('sounds_page_label').set_property('sensitive',
False)
self.builder.get_object('sound_path').set_property('sensitive', False)
self.builder.get_object('sounds_page').set_property('sensitive',
False)
self.builder.get_object('sounds_page_label').set_property('sensitive',
False)
# for widget_name in ('sounds_path', 'sounds_page', 'sounds_page_label'):
# self.glade.get_widget(widget_name).set_property('sensitive',
# self.builder.get_object(widget_name).set_property('sensitive',
# widget.get_active())
def _on_email_col_toggled(self, cell, path):