diff --git a/glade/dgtkpref.glade b/glade/dgtkpref.glade
index d20504bde..fd6a75ea1 100644
--- a/glade/dgtkpref.glade
+++ b/glade/dgtkpref.glade
@@ -44,18 +44,6 @@
-
-
- True
- Enable system tray icon
- True
- True
-
-
-
- 2
-
-
True
@@ -69,6 +57,18 @@
12
+
+
+ True
+ Enable system tray icon
+ True
+ True
+
+
+
+ 2
+
+
@@ -95,15 +95,13 @@
2
2
-
+
True
- GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER
+ Ask me where to save each download
+ True
- 1
2
- 1
- 2
@@ -119,13 +117,15 @@
-
+
True
- Ask me where to save each download
- True
+ GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER
+ 1
2
+ 1
+ 2
@@ -154,6 +154,14 @@
True
1
2
+
+
+ True
+ Stop seeding torrents when
+their share ratio reaches:
+ True
+
+
True
@@ -171,14 +179,6 @@
-
-
- True
- Stop seeding torrents when
-their share ratio reaches:
- True
-
-
@@ -272,53 +272,13 @@ their share ratio reaches:
-
+
True
- Try from:
-
-
-
-
- True
- to:
-
-
- 2
- 3
-
-
-
-
- True
- True
- 0.5
- 0 0 65535 1 10 10
-
-
- 1
- 2
-
-
-
-
- True
- True
- 0.5
- 0 0 65535 1 10 10
+ Test Port
3
4
-
-
-
-
- True
- Active port:
-
-
- 1
- 2
1
2
@@ -336,17 +296,57 @@ their share ratio reaches:
-
+
True
- Test Port
+ Active port:
+
+
+ 1
+ 2
+ 1
+ 2
+
+
+
+
+ True
+ True
+ 0.5
+ 0 0 65535 1 10 10
3
4
- 1
- 2
+
+
+ True
+ True
+ 0.5
+ 0 0 65535 1 10 10
+
+
+ 1
+ 2
+
+
+
+
+ True
+ to:
+
+
+ 2
+ 3
+
+
+
+
+ True
+ Try from:
+
+
@@ -373,37 +373,122 @@ their share ratio reaches:
5
3
-
+
True
- <i>(0 is unlimited)</i>
- True
+ 0
+ Maximum Upload Rate:
- 3
+ 1
+ 2
-
+
True
- KB/s
+ 0
+ Maximum number of Uploads:
- 2
- 3
+ 2
+ 3
+
+
+
+
+ True
+ 0
+ Maximum Download Rate:
+
+
+ 3
+ 4
+
+
+
+
+ True
+ 0
+ Maximum number of Downloads:
+
+
+ 4
+ 5
+
+
+
+
+ True
+ True
+ 10
+ 1
+ 0 -1 1024 1 10 10
+
+
+ 1
+ 2
+ 1
+ 2
+
+
+
+
+
+ True
+ True
+ 10
+ 1
+ 0 -1 100 1 10 10
+
+
+ 1
+ 2
+ 2
+ 3
+
+
+
+
+
+ True
+ True
+ 10
+ 1
+ 0 -1 2048 1 10 10
+
+
+ 1
+ 2
3
4
-
+
+ True
+ True
+ 10
+ 1
+ 0 -1 100 1 10 10
+
+
+ 1
+ 2
+ 4
+ 5
+
+
+
+
+
True
2
3
- 2
- 3
+ 4
+ 5
@@ -421,123 +506,38 @@ their share ratio reaches:
-
+
True
2
3
- 4
- 5
-
-
-
-
-
- True
- True
- 10
- 1
- 0 0 100 1 10 10
-
-
- 1
- 2
- 4
- 5
-
-
-
-
-
- True
- True
- 10
- 1
- 0 0 100 1 10 10
-
-
- 1
- 2
- 3
- 4
-
-
-
-
-
- True
- True
- 10
- 1
- 0 0 100 1 10 10
-
-
- 1
- 2
2
3
-
+
True
- True
- 10
- 1
- 0 0 100 1 10 10
+ KB/s
- 1
- 2
- 1
- 2
+ 2
+ 3
+ 3
+ 4
-
+
True
- 0
- Maximum number of Downloads:
+ <i>(0 is unlimited)</i>
+ True
- 4
- 5
-
-
-
-
- True
- 0
- Maximum Download Rate:
-
-
- 3
- 4
-
-
-
-
- True
- 0
- Maximum number of Uploads:
-
-
- 2
- 3
-
-
-
-
- True
- 0
- Maximum Upload Rate:
-
-
- 1
- 2
+ 3
diff --git a/src/dcommon.py b/src/dcommon.py
index 654898a4d..0e09eaf71 100644
--- a/src/dcommon.py
+++ b/src/dcommon.py
@@ -21,6 +21,8 @@
import sys, os, os.path, webbrowser
import xdg, xdg.BaseDirectory
+import gettext
+
PROGRAM_NAME = "Deluge"
PROGRAM_VERSION = "0.4.90.0"
@@ -50,15 +52,17 @@ class DelugePreferences:
return not (result == 0)
else:
return False
- elif kind == str:
- return str(result)
elif kind == int:
try:
return int(result)
except ValueError:
return int(float(result))
+ except:
+ return 0
elif kind == float:
return float(result)
+ elif kind == str:
+ return str(result)
else:
return result
diff --git a/src/delugegtk.py b/src/delugegtk.py
index 2f25f46a9..eb0ccdbbe 100755
--- a/src/delugegtk.py
+++ b/src/delugegtk.py
@@ -94,7 +94,7 @@ class DelugeGTK(dbus.service.Object):
self.connect_signals()
- self.apply_prefs()
+
try:
self.load_window_settings()
@@ -108,6 +108,7 @@ class DelugeGTK(dbus.service.Object):
self.plugins.enable_plugin(plugin)
except KeyError:
pass
+ self.apply_prefs()
def connect_signals(self):
self.wtree.signal_autoconnect({
@@ -414,7 +415,11 @@ class DelugeGTK(dbus.service.Object):
def apply_prefs(self):
- pass
+ self.tray.set_visible(self.pref.get("enable_system_tray", bool))
+ self.manager.set_pref("listen_on", [self.pref.get("tcp_port_range_lower", int), self.pref.get("tcp_port_range_upper", int)])
+ self.manager.set_pref("max_uploads", self.pref.get("max_number_uploads", int))
+ self.manager.set_pref("max_download_rate", self.pref.get("max_download_rate", int))
+ self.manager.set_pref("max_connections", self.pref.get("max_number_downloads", int))
# UID, Q#, Name, Size, Progress, Message, Seeders, Peers, DL, UL, ETA, Share