mirror of
https://git.deluge-torrent.org/deluge
synced 2025-04-21 20:14:51 +00:00
Updates to last patch and updates to the preferences dialog.
This commit is contained in:
parent
b9ffab2499
commit
379eff9767
4 changed files with 233 additions and 223 deletions
|
@ -64,6 +64,29 @@ def get_default_plugin_dir():
|
|||
"""Returns the default plugin directory"""
|
||||
return os.path.join(get_config_dir(), "plugins")
|
||||
|
||||
def windows_check():
|
||||
"""Checks if the current platform is Windows. Returns True if it is Windows
|
||||
and False if not."""
|
||||
import platform
|
||||
if platform.system() in ('Windows', 'Microsoft'):
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
def get_pixmap(fname):
|
||||
"""Returns a pixmap file included with deluge"""
|
||||
return pkg_resources.resource_filename("deluge", os.path.join("data", \
|
||||
"pixmaps", fname))
|
||||
def get_logo(size):
|
||||
"""Returns a deluge logo pixbuf based on the size parameter."""
|
||||
import gtk
|
||||
if windows_check():
|
||||
return gtk.gdk.pixbuf_new_from_file_at_size(get_pixmap("deluge.png"), \
|
||||
size, size)
|
||||
else:
|
||||
return gtk.gdk.pixbuf_new_from_file_at_size(get_pixmap("deluge.svg"), \
|
||||
size, size)
|
||||
|
||||
## Formatting text functions
|
||||
|
||||
def fsize(fsize_b):
|
||||
|
@ -116,24 +139,4 @@ def ftime(seconds):
|
|||
return '%dw %dd' % (weeks, days)
|
||||
return 'unknown'
|
||||
|
||||
def windows_check():
|
||||
import platform
|
||||
if platform.system() in ('Windows', 'Microsoft'):
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
def get_pixmap(fname):
|
||||
import pkg_resources
|
||||
from os import path
|
||||
return pkg_resources.resource_filename("deluge", path.join("data", \
|
||||
"pixmaps", fname))
|
||||
|
||||
def get_logo(size):
|
||||
import gtk
|
||||
if windows_check():
|
||||
return gtk.gdk.pixbuf_new_from_file_at_size(get_pixmap("deluge.png"), \
|
||||
size, size)
|
||||
else:
|
||||
return gtk.gdk.pixbuf_new_from_file_at_size(get_pixmap("deluge.svg"), \
|
||||
size, size)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
|
||||
<!--Generated with glade3 3.2.2 on Sat Sep 15 15:10:00 2007 by andrew@fragment-->
|
||||
<!--Generated with glade3 3.2.0 on Sat Sep 15 20:42:30 2007 by andrew@delicious-->
|
||||
<glade-interface>
|
||||
<widget class="GtkDialog" id="pref_dialog">
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
|
@ -38,7 +38,6 @@
|
|||
</widget>
|
||||
<packing>
|
||||
<property name="resize">False</property>
|
||||
<property name="shrink">True</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
|
@ -107,7 +106,6 @@
|
|||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">Ask where to save each download</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
</child>
|
||||
|
@ -123,7 +121,6 @@
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Store all downloads in:</property>
|
||||
<property name="label" translatable="yes">Store all downloads in:</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<property name="group">radio_ask_save</property>
|
||||
|
@ -196,7 +193,6 @@
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Full allocation preallocates all of the space that is needed for the torrent and prevents disk fragmentation</property>
|
||||
<property name="label" translatable="yes">Use Full Allocation</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
|
@ -212,7 +208,6 @@
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Compact allocation only allocates space as needed</property>
|
||||
<property name="label" translatable="yes">Use Compact Allocation</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<property name="group">radio_full_allocation</property>
|
||||
</widget>
|
||||
|
@ -265,7 +260,6 @@
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Enable selecting files for torrents before loading</property>
|
||||
<property name="label" translatable="yes">Enable selecting files for torrents before loading</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
|
@ -279,7 +273,6 @@
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Prioritize first and last pieces of files in torrent</property>
|
||||
<property name="label" translatable="yes">Prioritize first and last pieces of files in torrent</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
|
@ -443,7 +436,6 @@
|
|||
<property name="receives_default">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">Test Active Port</property>
|
||||
<property name="response_id">0</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
|
@ -468,7 +460,6 @@
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Deluge will automatically choose a different port to use every time.</property>
|
||||
<property name="label" translatable="yes">Use Random Ports</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="on_toggle"/>
|
||||
</widget>
|
||||
|
@ -562,7 +553,6 @@
|
|||
<property name="tooltip" translatable="yes">Distributed hash table may improve the amount of active connections.</property>
|
||||
<property name="label" translatable="yes">Enable Mainline DHT</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
</child>
|
||||
|
@ -609,7 +599,6 @@
|
|||
<property name="tooltip" translatable="yes">Universal Plug and Play</property>
|
||||
<property name="label" translatable="yes">UPnP</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
|
@ -625,7 +614,6 @@
|
|||
<property name="tooltip" translatable="yes">NAT Port Mapping Protocol</property>
|
||||
<property name="label" translatable="yes">NAT-PMP</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
|
@ -642,7 +630,6 @@
|
|||
<property name="tooltip" translatable="yes">µTorrent Peer-Exchange</property>
|
||||
<property name="label" translatable="yes">µTorrent-PeX</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
|
@ -777,7 +764,6 @@ Full Stream</property>
|
|||
<property name="can_focus">True</property>
|
||||
<property name="label" translatable="yes">Prefer to encrypt the entire stream</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
|
@ -882,71 +868,40 @@ Full Stream</property>
|
|||
<property name="n_columns">2</property>
|
||||
<property name="column_spacing">15</property>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label16">
|
||||
<widget class="GtkSpinButton" id="spin_max_upload_slots_global">
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Upload Speed (KiB/s):</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label15">
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum number of connections allowed. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Connections:</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label14">
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Upload Slots:</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload slots for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="adjustment">-1 -1 9000 1 10 10</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<property name="snap_to_ticks">True</property>
|
||||
<property name="numeric">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">3</property>
|
||||
<property name="bottom_attach">4</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkSpinButton" id="spin_max_connections_global">
|
||||
<widget class="GtkSpinButton" id="spin_max_upload">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum number of connections allowed. Set -1 for unlimited.</property>
|
||||
<property name="max_length">4</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="adjustment">-1 -1 9000 1 10 10</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<property name="snap_to_ticks">True</property>
|
||||
<property name="digits">1</property>
|
||||
<property name="numeric">True</property>
|
||||
<property name="update_policy">GTK_UPDATE_IF_VALID</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label13">
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum download speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Download Speed (KiB/s):</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
|
@ -971,43 +926,74 @@ Full Stream</property>
|
|||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkSpinButton" id="spin_max_upload">
|
||||
<widget class="GtkLabel" id="label13">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="adjustment">-1 -1 9000 1 10 10</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<property name="digits">1</property>
|
||||
<property name="numeric">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum download speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Download Speed (KiB/s):</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkSpinButton" id="spin_max_upload_slots_global">
|
||||
<widget class="GtkSpinButton" id="spin_max_connections_global">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload slots for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="tooltip" translatable="yes">The maximum number of connections allowed. Set -1 for unlimited.</property>
|
||||
<property name="max_length">4</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="adjustment">-1 -1 9000 1 10 10</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<property name="snap_to_ticks">True</property>
|
||||
<property name="numeric">True</property>
|
||||
<property name="update_policy">GTK_UPDATE_IF_VALID</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label14">
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Upload Slots:</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="top_attach">3</property>
|
||||
<property name="bottom_attach">4</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label15">
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum number of connections allowed. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Connections:</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label16">
|
||||
<property name="visible">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload speed for all torrents. Set -1 for unlimited.</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Upload Speed (KiB/s):</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="top_attach">2</property>
|
||||
<property name="bottom_attach">3</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
|
@ -1051,29 +1037,24 @@ Full Stream</property>
|
|||
<property name="n_columns">2</property>
|
||||
<property name="column_spacing">15</property>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label18">
|
||||
<widget class="GtkSpinButton" id="spin_max_upload_slots_per_torrent">
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Upload Slots:</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload slots per torrent. Set -1 for unlimited.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="adjustment">-1 -1 9000 1 10 10</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<property name="snap_to_ticks">True</property>
|
||||
<property name="numeric">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label17">
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Connections:</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkSpinButton" id="spin_max_connections_per_torrent">
|
||||
<property name="visible">True</property>
|
||||
|
@ -1091,19 +1072,24 @@ Full Stream</property>
|
|||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkSpinButton" id="spin_max_upload_slots_per_torrent">
|
||||
<widget class="GtkLabel" id="label17">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="tooltip" translatable="yes">The maximum upload slots per torrent. Set -1 for unlimited.</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="adjustment">-1 -1 9000 1 10 10</property>
|
||||
<property name="climb_rate">1</property>
|
||||
<property name="snap_to_ticks">True</property>
|
||||
<property name="numeric">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Connections:</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label18">
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Maximum Upload Slots:</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
|
@ -1207,9 +1193,8 @@ Full Stream</property>
|
|||
<property name="visible">True</property>
|
||||
<property name="label" translatable="yes">Enable system tray icon</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="on_toggle"/>
|
||||
</widget>
|
||||
</child>
|
||||
<child>
|
||||
|
@ -1222,7 +1207,6 @@ Full Stream</property>
|
|||
<property name="sensitive">False</property>
|
||||
<property name="label" translatable="yes">Minimize to tray on close</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
</child>
|
||||
|
@ -1241,7 +1225,6 @@ Full Stream</property>
|
|||
<property name="sensitive">False</property>
|
||||
<property name="label" translatable="yes">Start in tray</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
</child>
|
||||
|
@ -1262,8 +1245,8 @@ Full Stream</property>
|
|||
<property name="can_focus">True</property>
|
||||
<property name="label" translatable="yes">Password protect system tray</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="on_toggle"/>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
|
@ -1282,8 +1265,9 @@ Full Stream</property>
|
|||
<property name="visible">True</property>
|
||||
<property name="spacing">5</property>
|
||||
<child>
|
||||
<widget class="GtkLabel" id="label19">
|
||||
<widget class="GtkLabel" id="password_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="label" translatable="yes">Password:</property>
|
||||
</widget>
|
||||
|
@ -1343,6 +1327,7 @@ Full Stream</property>
|
|||
<widget class="GtkAlignment" id="alignment23">
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="top_padding">2</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
<widget class="GtkTable" id="table2">
|
||||
|
@ -1352,14 +1337,31 @@ Full Stream</property>
|
|||
<property name="n_columns">2</property>
|
||||
<property name="column_spacing">10</property>
|
||||
<child>
|
||||
<widget class="GtkEntry" id="txt_open_folder_location">
|
||||
<widget class="GtkRadioButton" id="radio_open_folder_stock">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">Open folder with:</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<signal name="toggled" handler="on_toggle"/>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkRadioButton" id="radio_open_folder_custom">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">Custom:</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<property name="group">radio_open_folder_stock</property>
|
||||
<signal name="toggled" handler="on_toggle"/>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
|
@ -1389,36 +1391,20 @@ Thunar</property>
|
|||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkRadioButton" id="radio_open_folder_custom">
|
||||
<widget class="GtkEntry" id="txt_open_folder_location">
|
||||
<property name="visible">True</property>
|
||||
<property name="sensitive">False</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">Custom:</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<property name="group">radio_open_folder_stock</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="right_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="bottom_attach">2</property>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<widget class="GtkRadioButton" id="radio_open_folder_stock">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">Open folder with:</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="active">True</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="x_options">GTK_FILL</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
|
@ -1452,20 +1438,26 @@ Thunar</property>
|
|||
<widget class="GtkAlignment" id="alignment5">
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="top_padding">2</property>
|
||||
<property name="left_padding">12</property>
|
||||
<child>
|
||||
<widget class="GtkVBox" id="vbox9">
|
||||
<property name="visible">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<child>
|
||||
<widget class="GtkCheckButton" id="chk_new_releases">
|
||||
<widget class="GtkAlignment" id="alignment10">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Deluge will check our servers and will tell you if a newer version has been released</property>
|
||||
<property name="label" translatable="yes">Be alerted about new releases</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
<child>
|
||||
<widget class="GtkCheckButton" id="chk_new_releases1">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="tooltip" translatable="yes">Deluge will check our servers and will tell you if a newer version has been released</property>
|
||||
<property name="label" translatable="yes">Be alerted about new releases</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
|
@ -1536,7 +1528,6 @@ Thunar</property>
|
|||
<property name="can_focus">True</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">Yes, please send anonymous statistics</property>
|
||||
<property name="response_id">0</property>
|
||||
<property name="draw_indicator">True</property>
|
||||
</widget>
|
||||
</child>
|
||||
|
@ -1639,7 +1630,6 @@ Thunar</property>
|
|||
</widget>
|
||||
<packing>
|
||||
<property name="resize">False</property>
|
||||
<property name="shrink">True</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
|
@ -1654,7 +1644,6 @@ Thunar</property>
|
|||
</widget>
|
||||
<packing>
|
||||
<property name="resize">False</property>
|
||||
<property name="shrink">True</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
|
@ -1679,10 +1668,6 @@ Thunar</property>
|
|||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
<property name="resize">True</property>
|
||||
<property name="shrink">True</property>
|
||||
</packing>
|
||||
</child>
|
||||
</widget>
|
||||
<packing>
|
||||
|
@ -1702,7 +1687,6 @@ Thunar</property>
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">gtk-cancel</property>
|
||||
<property name="use_stock">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<signal name="clicked" handler="on_button_cancel_clicked"/>
|
||||
</widget>
|
||||
</child>
|
||||
|
@ -1714,7 +1698,6 @@ Thunar</property>
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">gtk-apply</property>
|
||||
<property name="use_stock">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<signal name="clicked" handler="on_button_apply_clicked"/>
|
||||
</widget>
|
||||
<packing>
|
||||
|
@ -1729,7 +1712,6 @@ Thunar</property>
|
|||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="label" translatable="yes">gtk-ok</property>
|
||||
<property name="use_stock">True</property>
|
||||
<property name="response_id">0</property>
|
||||
<signal name="clicked" handler="on_button_ok_clicked"/>
|
||||
</widget>
|
||||
<packing>
|
||||
|
|
|
@ -42,7 +42,7 @@ from toolbar import ToolBar
|
|||
from torrentview import TorrentView
|
||||
from torrentdetails import TorrentDetails
|
||||
from preferences import Preferences
|
||||
from deluge.common import get_logo
|
||||
import deluge.common
|
||||
|
||||
from deluge.log import LOG as log
|
||||
|
||||
|
@ -54,7 +54,7 @@ class MainWindow:
|
|||
"glade/main_window.glade"))
|
||||
|
||||
self.window = self.main_glade.get_widget("main_window")
|
||||
self.window.set_icon(get_logo(32))
|
||||
self.window.set_icon(deluge.common.get_logo(32))
|
||||
|
||||
# Initialize various components of the gtkui
|
||||
self.menubar = MenuBar(self)
|
||||
|
|
|
@ -38,7 +38,7 @@ import pkg_resources
|
|||
|
||||
from deluge.log import LOG as log
|
||||
import deluge.ui.functions as functions
|
||||
from deluge.common import get_logo
|
||||
import deluge.common
|
||||
|
||||
class Preferences:
|
||||
def __init__(self, window):
|
||||
|
@ -47,7 +47,7 @@ class Preferences:
|
|||
pkg_resources.resource_filename("deluge.ui.gtkui",
|
||||
"glade/preferences_dialog.glade"))
|
||||
self.pref_dialog = self.glade.get_widget("pref_dialog")
|
||||
self.pref_dialog.set_icon(get_logo(32))
|
||||
self.pref_dialog.set_icon(deluge.common.get_logo(32))
|
||||
self.treeview = self.glade.get_widget("treeview")
|
||||
self.notebook = self.glade.get_widget("notebook")
|
||||
self.core = functions.get_core()
|
||||
|
@ -82,13 +82,13 @@ class Preferences:
|
|||
index = self.notebook.append_page(widget)
|
||||
self.liststore.append([index, name])
|
||||
|
||||
def get_config(self):
|
||||
def get_core_config(self):
|
||||
"""Get the configuration from the core."""
|
||||
# Get the config dictionary from the core
|
||||
self.config = functions.get_config(self.core)
|
||||
self.core_config = functions.get_config(self.core)
|
||||
|
||||
def show(self):
|
||||
self.get_config()
|
||||
self.get_core_config()
|
||||
# Update the preferences dialog to reflect current config settings
|
||||
|
||||
## Downloads tab ##
|
||||
|
@ -100,53 +100,53 @@ class Preferences:
|
|||
# choose a download location.. It will be specific to the machine core
|
||||
# is running on.
|
||||
self.glade.get_widget("download_path_button").set_filename(
|
||||
self.config["download_location"])
|
||||
self.core_config["download_location"])
|
||||
self.glade.get_widget("radio_compact_allocation").set_active(
|
||||
self.config["compact_allocation"])
|
||||
self.core_config["compact_allocation"])
|
||||
self.glade.get_widget("radio_full_allocation").set_active(
|
||||
not self.config["compact_allocation"])
|
||||
not self.core_config["compact_allocation"])
|
||||
self.glade.get_widget("chk_prioritize_first_last_pieces").set_active(
|
||||
self.config["prioritize_first_last_pieces"])
|
||||
self.core_config["prioritize_first_last_pieces"])
|
||||
|
||||
## Network tab ##
|
||||
self.glade.get_widget("spin_port_min").set_value(
|
||||
self.config["listen_ports"][0])
|
||||
self.core_config["listen_ports"][0])
|
||||
self.glade.get_widget("spin_port_max").set_value(
|
||||
self.config["listen_ports"][1])
|
||||
self.core_config["listen_ports"][1])
|
||||
self.glade.get_widget("active_port_label").set_text(
|
||||
str(functions.get_listen_port(self.core)))
|
||||
self.glade.get_widget("chk_random_port").set_active(
|
||||
self.config["random_port"])
|
||||
self.core_config["random_port"])
|
||||
self.glade.get_widget("chk_dht").set_active(
|
||||
self.config["dht"])
|
||||
self.core_config["dht"])
|
||||
self.glade.get_widget("chk_upnp").set_active(
|
||||
self.config["upnp"])
|
||||
self.core_config["upnp"])
|
||||
self.glade.get_widget("chk_natpmp").set_active(
|
||||
self.config["natpmp"])
|
||||
self.core_config["natpmp"])
|
||||
self.glade.get_widget("chk_utpex").set_active(
|
||||
self.config["utpex"])
|
||||
self.core_config["utpex"])
|
||||
self.glade.get_widget("combo_encin").set_active(
|
||||
self.config["enc_in_policy"])
|
||||
self.core_config["enc_in_policy"])
|
||||
self.glade.get_widget("combo_encout").set_active(
|
||||
self.config["enc_out_policy"])
|
||||
self.core_config["enc_out_policy"])
|
||||
self.glade.get_widget("combo_enclevel").set_active(
|
||||
self.config["enc_level"])
|
||||
self.core_config["enc_level"])
|
||||
self.glade.get_widget("chk_pref_rc4").set_active(
|
||||
self.config["enc_prefer_rc4"])
|
||||
self.core_config["enc_prefer_rc4"])
|
||||
|
||||
## Bandwidth tab ##
|
||||
self.glade.get_widget("spin_max_connections_global").set_value(
|
||||
self.config["max_connections_global"])
|
||||
self.core_config["max_connections_global"])
|
||||
self.glade.get_widget("spin_max_download").set_value(
|
||||
self.config["max_download_speed"])
|
||||
self.core_config["max_download_speed"])
|
||||
self.glade.get_widget("spin_max_upload").set_value(
|
||||
self.config["max_upload_speed"])
|
||||
self.core_config["max_upload_speed"])
|
||||
self.glade.get_widget("spin_max_upload_slots_global").set_value(
|
||||
self.config["max_upload_slots_global"])
|
||||
self.core_config["max_upload_slots_global"])
|
||||
self.glade.get_widget("spin_max_connections_per_torrent").set_value(
|
||||
self.config["max_connections_per_torrent"])
|
||||
self.core_config["max_connections_per_torrent"])
|
||||
self.glade.get_widget("spin_max_upload_slots_per_torrent").set_value(
|
||||
self.config["max_upload_slots_per_torrent"])
|
||||
self.core_config["max_upload_slots_per_torrent"])
|
||||
|
||||
## Other tab ##
|
||||
# All of it is UI only.
|
||||
|
@ -157,13 +157,13 @@ class Preferences:
|
|||
def set_config(self):
|
||||
"""Sets all altered config values in the core"""
|
||||
# Get the values from the dialog
|
||||
new_config = {}
|
||||
new_core_config = {}
|
||||
## Downloads tab ##
|
||||
new_config["download_location"] = \
|
||||
new_core_config["download_location"] = \
|
||||
self.glade.get_widget("download_path_button").get_filename()
|
||||
new_config["compact_allocation"] = \
|
||||
new_core_config["compact_allocation"] = \
|
||||
self.glade.get_widget("radio_compact_allocation").get_active()
|
||||
new_config["prioritize_first_last_pieces"] = \
|
||||
new_core_config["prioritize_first_last_pieces"] = \
|
||||
self.glade.get_widget(
|
||||
"chk_prioritize_first_last_pieces").get_active()
|
||||
|
||||
|
@ -173,51 +173,51 @@ class Preferences:
|
|||
self.glade.get_widget("spin_port_min").get_value_as_int())
|
||||
listen_ports.append(
|
||||
self.glade.get_widget("spin_port_max").get_value_as_int())
|
||||
new_config["listen_ports"] = listen_ports
|
||||
new_config["random_port"] = \
|
||||
new_core_config["listen_ports"] = listen_ports
|
||||
new_core_config["random_port"] = \
|
||||
self.glade.get_widget("chk_random_port").get_active()
|
||||
new_config["dht"] = self.glade.get_widget("chk_dht").get_active()
|
||||
new_config["upnp"] = self.glade.get_widget("chk_upnp").get_active()
|
||||
new_config["natpmp"] = self.glade.get_widget("chk_natpmp").get_active()
|
||||
new_config["utpex"] = self.glade.get_widget("chk_utpex").get_active()
|
||||
new_config["enc_in_policy"] = \
|
||||
new_core_config["dht"] = self.glade.get_widget("chk_dht").get_active()
|
||||
new_core_config["upnp"] = self.glade.get_widget("chk_upnp").get_active()
|
||||
new_core_config["natpmp"] = self.glade.get_widget("chk_natpmp").get_active()
|
||||
new_core_config["utpex"] = self.glade.get_widget("chk_utpex").get_active()
|
||||
new_core_config["enc_in_policy"] = \
|
||||
self.glade.get_widget("combo_encin").get_active()
|
||||
new_config["enc_out_policy"] = \
|
||||
new_core_config["enc_out_policy"] = \
|
||||
self.glade.get_widget("combo_encout").get_active()
|
||||
new_config["enc_level"] = \
|
||||
new_core_config["enc_level"] = \
|
||||
self.glade.get_widget("combo_enclevel").get_active()
|
||||
new_config["enc_prefer_rc4"] = \
|
||||
new_core_config["enc_prefer_rc4"] = \
|
||||
self.glade.get_widget("chk_pref_rc4").get_active()
|
||||
|
||||
## Bandwidth tab ##
|
||||
new_config["max_connections_global"] = \
|
||||
new_core_config["max_connections_global"] = \
|
||||
self.glade.get_widget(
|
||||
"spin_max_connections_global").get_value_as_int()
|
||||
new_config["max_download_speed"] = \
|
||||
new_core_config["max_download_speed"] = \
|
||||
self.glade.get_widget("spin_max_download").get_value()
|
||||
new_config["max_upload_speed"] = \
|
||||
new_core_config["max_upload_speed"] = \
|
||||
self.glade.get_widget("spin_max_upload").get_value()
|
||||
new_config["max_upload_slots_global"] = \
|
||||
new_core_config["max_upload_slots_global"] = \
|
||||
self.glade.get_widget(
|
||||
"spin_max_upload_slots_global").get_value_as_int()
|
||||
new_config["max_connections_per_torrent"] = \
|
||||
new_core_config["max_connections_per_torrent"] = \
|
||||
self.glade.get_widget(
|
||||
"spin_max_connections_per_torrent").get_value_as_int()
|
||||
new_config["max_upload_slots_per_torrent"] = \
|
||||
new_core_config["max_upload_slots_per_torrent"] = \
|
||||
self.glade.get_widget(
|
||||
"spin_max_upload_slots_per_torrent").get_value_as_int()
|
||||
|
||||
config_to_set = {}
|
||||
for key in new_config.keys():
|
||||
for key in new_core_config.keys():
|
||||
# The values do not match so this needs to be updated
|
||||
if self.config[key] != new_config[key]:
|
||||
config_to_set[key] = new_config[key]
|
||||
if self.core_config[key] != new_core_config[key]:
|
||||
config_to_set[key] = new_core_config[key]
|
||||
|
||||
# Set each changed config value in the core
|
||||
functions.set_config(config_to_set, self.core)
|
||||
|
||||
# Update the configuration
|
||||
self.config.update(config_to_set)
|
||||
self.core_config.update(config_to_set)
|
||||
|
||||
def hide(self):
|
||||
self.pref_dialog.hide()
|
||||
|
@ -229,14 +229,39 @@ class Preferences:
|
|||
def on_toggle(self, widget):
|
||||
"""Handles widget sensitivity based on radio/check button values."""
|
||||
value = widget.get_active()
|
||||
if widget == self.glade.get_widget('radio_save_all_to'):
|
||||
self.glade.get_widget('download_path_button').set_sensitive(value)
|
||||
# Disable the download path button if user wants to pick where each
|
||||
# new torrent is saved.
|
||||
if widget == self.glade.get_widget("radio_save_all_to"):
|
||||
self.glade.get_widget("download_path_button").set_sensitive(value)
|
||||
|
||||
self.glade.get_widget('spin_port_min').set_sensitive(
|
||||
not self.glade.get_widget('chk_random_port').get_active())
|
||||
self.glade.get_widget('spin_port_max').set_sensitive(
|
||||
not self.glade.get_widget('chk_random_port').get_active())
|
||||
# Disable the port spinners if random ports is selected.
|
||||
if widget == self.glade.get_widget("chk_random_port"):
|
||||
self.glade.get_widget("spin_port_min").set_sensitive(not value)
|
||||
self.glade.get_widget("spin_port_max").set_sensitive(not value)
|
||||
|
||||
# Disable all the tray options if tray is not used.
|
||||
if widget == self.glade.get_widget("chk_use_tray"):
|
||||
self.glade.get_widget("chk_min_on_close").set_sensitive(value)
|
||||
self.glade.get_widget("chk_start_in_tray").set_sensitive(value)
|
||||
self.glade.get_widget("chk_lock_tray").set_sensitive(value)
|
||||
if value == True:
|
||||
lock = self.glade.get_widget("chk_lock_tray").get_active()
|
||||
self.glade.get_widget("txt_tray_passwd").set_sensitive(lock)
|
||||
self.glade.get_widget("password_label").set_sensitive(lock)
|
||||
else:
|
||||
self.glade.get_widget("txt_tray_passwd").set_sensitive(value)
|
||||
self.glade.get_widget("password_label").set_sensitive(value)
|
||||
|
||||
if widget == self.glade.get_widget("chk_lock_tray"):
|
||||
self.glade.get_widget("txt_tray_passwd").set_sensitive(value)
|
||||
self.glade.get_widget("password_label").set_sensitive(value)
|
||||
|
||||
# Disable the file manager combo box if custom is selected.
|
||||
if widget == self.glade.get_widget("radio_open_folder_custom"):
|
||||
self.glade.get_widget("combo_file_manager").set_sensitive(not value)
|
||||
self.glade.get_widget("txt_open_folder_location").set_sensitive(
|
||||
value)
|
||||
|
||||
def on_button_ok_clicked(self, data):
|
||||
log.debug("on_button_ok_clicked")
|
||||
self.set_config()
|
||||
|
|
Loading…
Add table
Reference in a new issue