[Xfce4-commits] <eatmonkey:aria2-xml-rpc> Add the advanced settings dialog
Mike Massonnet
noreply at xfce.org
Sun Jan 31 15:28:01 CET 2010
Updating branch refs/heads/aria2-xml-rpc
to ed96366ebca6aeecdb26a74978f658d30c84937e (commit)
from 1eea45eedd4faf59e41679ad692e597e4f579983 (commit)
commit ed96366ebca6aeecdb26a74978f658d30c84937e
Author: Mike Massonnet <mmassonnet at xfce.org>
Date: Sun Jan 31 15:22:48 2010 +0100
Add the advanced settings dialog
The "Edit configuration" button in the advanced tab of the settings
dialog turns the dialog into a single notebook with a treeview to edit
the aria2.conf file by hand.
src/eataria2.rb | 6 +-
src/eatsettings.rb | 244 +++++++++-
src/settings.ui | 1275 ++++++++++++++++++++++++++++------------------------
3 files changed, 919 insertions(+), 606 deletions(-)
diff --git a/src/eataria2.rb b/src/eataria2.rb
index adcc38a..e468677 100644
--- a/src/eataria2.rb
+++ b/src/eataria2.rb
@@ -562,8 +562,8 @@ class Eat::Aria2Config
begin
file = File.open(@filename)
while !file.eof and line = file.readline
- next if line !~ /^([a-zA-Z0-9-]+)=(.*)$/
next if line =~ /^daemon=.*$/
+ next if line !~ /^([a-zA-Z0-9-]+)=(.*)$/
key = $1
val = $2.strip
if val == "true"
@@ -601,12 +601,16 @@ class Eat::Aria2Config
begin
file = File.open(@filename, "w")
@values.each do |key,val|
+ if key =~ /^(all-proxy|ca-certificate|certificate|http-proxy|https-proxy|private-key|ftp-proxy|dht-entry-point)$/
+ next if val.empty?
+ end
file.puts("#{key}=#{val}")
end
file.close
rescue
p $!
end
+ parse
end
end
diff --git a/src/eatsettings.rb b/src/eatsettings.rb
index 1cd6ec5..9ff5a41 100644
--- a/src/eatsettings.rb
+++ b/src/eatsettings.rb
@@ -3,6 +3,7 @@
require "gtk2"
require "singleton"
+require "config"
require "eataria2"
include Gtk
@@ -126,6 +127,7 @@ class Eat::SettingsDialog
builder << "settings.ui"
@dialog = builder["dialog-settings"]
+ @notebook = builder["notebook-settings"]
@xmlrpc = Hash.new
@xmlrpc[:vbox] = builder["xmlrpc-vbox"]
@xmlrpc[:custom_server] = builder["action-custom-server"]
@@ -160,7 +162,7 @@ class Eat::SettingsDialog
# Setup actions
builder["action-custom-server"].signal_connect("toggled") { action_custom_server }
- # Setup values
+ # Setup basic configuration values
@settings = Eat::Settings.instance
@xmlrpc[:custom_server].active = @settings["custom-server"]
@xmlrpc[:host].text = @settings["xmlrpc-host"] if @settings["xmlrpc-host"] != nil
@@ -182,6 +184,29 @@ class Eat::SettingsDialog
@advanced[:listen_port].value = @settings.aria2["listen-port"].to_i
@advanced[:enable_upnp].active = @settings["enable-upnp"]
+ # Setup advanced configuration treeview
+ @treestore = TreeStore.new(String, String, TrueClass)
+ builder["treeview-configuration"].set_model(@treestore)
+ fill_treestore()
+
+ cell = CellRendererText.new
+ cell.ellipsize = Pango::ELLIPSIZE_END
+ column = builder["treeviewcolumn-option"]
+ column.pack_start(cell, true)
+ column.add_attribute(cell, :text, 0)
+
+ cell = CellRendererText.new
+ cell.ellipsize = Pango::ELLIPSIZE_END
+ column = builder["treeviewcolumn-value"]
+ column.pack_start(cell, true)
+ column.add_attribute(cell, :text, 1)
+ column.add_attribute(cell, :editable, 2)
+ cell.signal_connect("edited") { |this, path, new_text| treestore_update_iter(path, new_text) }
+
+ # Setup navigation between basic/advanced configuration editing
+ builder["button-edit-configuration"].signal_connect("clicked") { switch_configuration(true) }
+ builder["button-back"].signal_connect("clicked") { switch_configuration(false) }
+
@dialog.vbox.show_all
end
@@ -190,17 +215,77 @@ class Eat::SettingsDialog
end
def run()
- # Run dialog
res = @dialog.run
+ update_settings if res == Dialog::RESPONSE_OK
- # Update settings
- if res == Dialog::RESPONSE_OK
- @settings["custom-server"] = @xmlrpc[:custom_server].active?
- @settings["xmlrpc-host"] = @xmlrpc[:host].text
- @settings["xmlrpc-port"] = @xmlrpc[:port].value_as_int
- @settings["xmlrpc-user"] = @xmlrpc[:user].text
- @settings["xmlrpc-passwd"] = @xmlrpc[:passwd].text
- @settings["enable-upnp"] = @advanced[:enable_upnp].active?
+ begin
+ yield res
+ rescue
+ end
+ @dialog.hide
+
+ res
+ end
+
+ private
+
+ def action_custom_server()
+ active = @xmlrpc[:custom_server].active?
+ @xmlrpc[:vbox].set_sensitive(active)
+ @basic_options[:frame].set_sensitive(!active)
+ @bittorrent[:frame].set_sensitive(!active)
+ @advanced[:vbox].set_sensitive(!active)
+ end
+
+ def switch_configuration(advanced)
+ @notebook.set_page(advanced ? 1 : 0)
+
+ if advanced
+ # Sync treestore with widget values
+ @treeiter["max-concurrent-downloads"].set_value(1, @basic_options[:max_concurrent_downloads].value_as_int.to_s)
+ @treeiter["max-overall-download-limit"].set_value(1, @basic_options[:max_download_speed].value_as_int.to_s)
+ @treeiter["dir"].set_value(1, @basic_options[:download_dir_button].current_folder)
+ @treeiter["max-overall-upload-limit"].set_value(1, @bittorrent[:max_upload_speed].value_as_int.to_s)
+ @treeiter["bt-max-peers"].set_value(1, @bittorrent[:max_peers].value_as_int.to_s)
+ @treeiter["seed-ratio"].set_value(1, @bittorrent[:seed_ratio].value.to_s)
+ @treeiter["enable-dht"].set_value(1, @bittorrent[:enable_dht].active?.to_s)
+ @treeiter["enable-peer-exchange"].set_value(1, @bittorrent[:enable_pex].active?.to_s)
+ @treeiter["bt-require-crypto"].set_value(1, @bittorrent[:require_encryption].active?.to_s)
+ @treeiter["check-certificate"].set_value(1, @advanced[:certificates].active?.to_s)
+ @treeiter["split"].set_value(1, @advanced[:split].value_as_int.to_s)
+ @treeiter["metalink-location"].set_value(1, @advanced[:locations].text)
+ @treeiter["listen-port"].set_value(1, @advanced[:listen_port].value_as_int.to_s)
+ else
+ # Sync widget values with treestore
+ @basic_options[:max_concurrent_downloads].value = @treeiter["max-concurrent-downloads"].get_value(1).to_i
+ @basic_options[:max_download_speed].value = @treeiter["max-overall-download-limit"].get_value(1).to_i
+ @basic_options[:download_dir_button].current_folder = @treeiter["dir"].get_value(1)
+ @bittorrent[:max_upload_speed].value = @treeiter["max-overall-upload-limit"].get_value(1).to_i
+ @bittorrent[:max_peers].value = @treeiter["bt-max-peers"].get_value(1).to_i
+ @bittorrent[:seed_ratio].value = @treeiter["seed-ratio"].get_value(1).to_f
+ @bittorrent[:enable_dht].active = @treeiter["enable-dht"].get_value(1) == "true"
+ @bittorrent[:enable_pex].active = @treeiter["enable-peer-exchange"].get_value(1) == "true"
+ @bittorrent[:require_encryption].active = @treeiter["bt-require-crypto"].get_value(1) == "true"
+ @advanced[:certificates].active = @treeiter["check-certificate"].get_value(1) == "true"
+ @advanced[:split].value = @treeiter["split"].get_value(1).to_i
+ @advanced[:locations].text = @treeiter["metalink-location"].get_value(1)
+ @advanced[:listen_port].value = @treeiter["listen-port"].get_value(1).to_i
+ end
+ end
+
+ def update_settings()
+ @settings["custom-server"] = @xmlrpc[:custom_server].active?
+ @settings["xmlrpc-host"] = @xmlrpc[:host].text
+ @settings["xmlrpc-port"] = @xmlrpc[:port].value_as_int
+ @settings["xmlrpc-user"] = @xmlrpc[:user].text
+ @settings["xmlrpc-passwd"] = @xmlrpc[:passwd].text
+ @settings["enable-upnp"] = @advanced[:enable_upnp].active?
+
+ @treeiter.each do |key, iter|
+ @settings.aria2[key] = iter.get_value(1)
+ end
+
+ if @notebook.page == 0
@settings.aria2["max-concurrent-downloads"] = @basic_options[:max_concurrent_downloads].value_as_int
@settings.aria2["max-overall-download-limit"] = @basic_options[:max_download_speed].value_as_int
@settings.aria2["dir"] = @basic_options[:download_dir_button].current_folder
@@ -214,26 +299,137 @@ class Eat::SettingsDialog
@settings.aria2["split"] = @advanced[:split].value_as_int
@settings.aria2["metalink-location"] = @advanced[:locations].text
@settings.aria2["listen-port"] = @advanced[:listen_port].value_as_int
- @settings.save
end
- begin
- yield res
- rescue
- end
- @dialog.hide
+ @settings.save
+ end
- res
+ def treestore_append_iter(parent_iter, name)
+ iter = @treestore.append(parent_iter)
+ iter.set_value(0, name)
+ iter.set_value(1, @settings.aria2[name].to_s)
+ iter.set_value(2, true)
+ @treeiter[name] = iter
end
- private
+ def treestore_update_iter(path, new_name)
+ iter = @treestore.get_iter(path)
+ iter.set_value(1, new_name)
+ end
- def action_custom_server()
- active = @xmlrpc[:custom_server].active?
- @xmlrpc[:vbox].set_sensitive(active)
- @basic_options[:frame].set_sensitive(!active)
- @bittorrent[:frame].set_sensitive(!active)
- @advanced[:vbox].set_sensitive(!active)
+ def fill_treestore()
+ @treeiter = {}
+
+ parent_iter = @treestore.append(nil)
+ parent_iter.set_value(0, "Basic options")
+
+ treestore_append_iter(parent_iter, "dir")
+ treestore_append_iter(parent_iter, "max-concurrent-downloads")
+ treestore_append_iter(parent_iter, "check-integrity")
+
+ parent_iter = @treestore.append(nil)
+ parent_iter.set_value(0, "HTTP/FTP options")
+
+ treestore_append_iter(parent_iter, "all-proxy")
+ treestore_append_iter(parent_iter, "connect-timeout")
+ treestore_append_iter(parent_iter, "lowest-speed-limit")
+ treestore_append_iter(parent_iter, "max-file-not-found")
+ treestore_append_iter(parent_iter, "max-tries")
+ treestore_append_iter(parent_iter, "proxy-method")
+ treestore_append_iter(parent_iter, "remote-time")
+ treestore_append_iter(parent_iter, "split")
+ treestore_append_iter(parent_iter, "timeout")
+
+ parent_iter = @treestore.append(nil)
+ parent_iter.set_value(0, "HTTP options")
+
+ treestore_append_iter(parent_iter, "ca-certificate")
+ treestore_append_iter(parent_iter, "certificate")
+ treestore_append_iter(parent_iter, "check-certificate")
+ treestore_append_iter(parent_iter, "http-auth-challenge")
+ treestore_append_iter(parent_iter, "http-user")
+ treestore_append_iter(parent_iter, "http-passwd")
+ treestore_append_iter(parent_iter, "http-proxy")
+ treestore_append_iter(parent_iter, "https-proxy")
+ treestore_append_iter(parent_iter, "private-key")
+ treestore_append_iter(parent_iter, "referer")
+ treestore_append_iter(parent_iter, "enable-http-keep-alive")
+ treestore_append_iter(parent_iter, "enable-http-pipelining")
+ treestore_append_iter(parent_iter, "header")
+ treestore_append_iter(parent_iter, "load-cookies")
+ treestore_append_iter(parent_iter, "save-cookies")
+ treestore_append_iter(parent_iter, "use-head")
+ treestore_append_iter(parent_iter, "user-agent")
+
+ parent_iter = @treestore.append(nil)
+ parent_iter.set_value(0, "FTP options")
+
+ treestore_append_iter(parent_iter, "ftp-user")
+ treestore_append_iter(parent_iter, "ftp-passwd")
+ treestore_append_iter(parent_iter, "ftp-pasv")
+ treestore_append_iter(parent_iter, "ftp-proxy")
+ treestore_append_iter(parent_iter, "ftp-type")
+ treestore_append_iter(parent_iter, "ftp-reuse-connection")
+
+ parent_iter = @treestore.append(nil)
+ parent_iter.set_value(0, "BitTorrent options")
+
+ treestore_append_iter(parent_iter, "bt-external-ip")
+ treestore_append_iter(parent_iter, "bt-hash-check-seed")
+ treestore_append_iter(parent_iter, "bt-max-open-files")
+ treestore_append_iter(parent_iter, "bt-max-peers")
+ treestore_append_iter(parent_iter, "bt-min-crypto-level")
+ treestore_append_iter(parent_iter, "bt-prioritize-piece")
+ treestore_append_iter(parent_iter, "bt-require-crypto")
+ treestore_append_iter(parent_iter, "bt-request-peer-speed-limit")
+ treestore_append_iter(parent_iter, "bt-save-metadata")
+ treestore_append_iter(parent_iter, "bt-seed-unverified")
+ treestore_append_iter(parent_iter, "bt-stop-timeout")
+ treestore_append_iter(parent_iter, "bt-tracker-interval")
+ treestore_append_iter(parent_iter, "dht-entry-point")
+ treestore_append_iter(parent_iter, "dht-listen-port")
+ treestore_append_iter(parent_iter, "enable-dht")
+ treestore_append_iter(parent_iter, "enable-peer-exchange")
+ treestore_append_iter(parent_iter, "follow-torrent")
+ treestore_append_iter(parent_iter, "listen-port")
+ treestore_append_iter(parent_iter, "max-overall-upload-limit")
+ treestore_append_iter(parent_iter, "max-upload-limit")
+ treestore_append_iter(parent_iter, "peer-id-prefix")
+ treestore_append_iter(parent_iter, "seed-ratio")
+
+ parent_iter = @treestore.append(nil)
+ parent_iter.set_value(0, "Metalink options")
+
+ treestore_append_iter(parent_iter, "follow-metalink")
+ treestore_append_iter(parent_iter, "metalink-servers")
+ treestore_append_iter(parent_iter, "metalink-language")
+ treestore_append_iter(parent_iter, "metalink-location")
+ treestore_append_iter(parent_iter, "metalink-os")
+ treestore_append_iter(parent_iter, "metalink-version")
+ treestore_append_iter(parent_iter, "metalink-preferred-protocol")
+ treestore_append_iter(parent_iter, "metalink-enable-unique-protocol")
+
+ parent_iter = @treestore.append(nil)
+ parent_iter.set_value(0, "Advanced options")
+
+ treestore_append_iter(parent_iter, "allow-overwrite")
+ treestore_append_iter(parent_iter, "allow-piece-length-change")
+ treestore_append_iter(parent_iter, "async-dns")
+ treestore_append_iter(parent_iter, "auto-file-renaming")
+ treestore_append_iter(parent_iter, "auto-save-interval")
+ treestore_append_iter(parent_iter, "enable-direct-io")
+ treestore_append_iter(parent_iter, "file-allocation")
+ treestore_append_iter(parent_iter, "interface")
+ treestore_append_iter(parent_iter, "on-download-complete")
+ treestore_append_iter(parent_iter, "on-download-error")
+ treestore_append_iter(parent_iter, "on-download-start")
+ treestore_append_iter(parent_iter, "on-download-stop")
+ treestore_append_iter(parent_iter, "summary-interval")
+ treestore_append_iter(parent_iter, "force-sequential")
+ treestore_append_iter(parent_iter, "max-overall-download-limit")
+ treestore_append_iter(parent_iter, "max-download-limit")
+ treestore_append_iter(parent_iter, "no-file-allocation-limit")
+ treestore_append_iter(parent_iter, "realtime-chunk-checksum")
end
end
diff --git a/src/settings.ui b/src/settings.ui
index b8a8b64..c520ef3 100644
--- a/src/settings.ui
+++ b/src/settings.ui
@@ -4,9 +4,10 @@
<!-- interface-naming-policy project-wide -->
<object class="GtkDialog" id="dialog-settings">
<property name="title" translatable="yes">Settings</property>
- <property name="resizable">False</property>
<property name="modal">True</property>
<property name="window_position">center-on-parent</property>
+ <property name="default_width">375</property>
+ <property name="default_height">405</property>
<property name="destroy_with_parent">True</property>
<property name="icon_name">preferences-other</property>
<property name="type_hint">normal</property>
@@ -19,65 +20,104 @@
<property name="orientation">vertical</property>
<property name="spacing">2</property>
<child>
- <object class="GtkNotebook" id="notebook1">
+ <object class="GtkNotebook" id="notebook-settings">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="border_width">6</property>
+ <property name="show_tabs">False</property>
<property name="show_border">False</property>
<child>
- <object class="GtkVBox" id="vbox1">
+ <object class="GtkNotebook" id="notebook1">
<property name="visible">True</property>
+ <property name="can_focus">True</property>
<property name="border_width">6</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
+ <property name="show_border">False</property>
<child>
- <object class="GtkFrame" id="frame1">
+ <object class="GtkVBox" id="vbox2">
<property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="shadow_type">none</property>
+ <property name="border_width">6</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkAlignment" id="alignment1">
+ <object class="GtkFrame" id="frame1">
<property name="visible">True</property>
- <property name="top_padding">6</property>
- <property name="left_padding">12</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkVBox" id="vbox2">
+ <object class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkCheckButton" id="checkbutton-custom-server">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="related_action">action-custom-server</property>
- <property name="use_action_appearance">True</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
<child>
- <object class="GtkAlignment" id="xmlrpc-alignment">
+ <object class="GtkVBox" id="vbox3">
<property name="visible">True</property>
- <property name="left_padding">12</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkVBox" id="xmlrpc-vbox">
+ <object class="GtkCheckButton" id="checkbutton-custom-server">
+ <property name="label" translatable="yes">Connect to custom server</property>
<property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">action-custom-server</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkAlignment" id="xmlrpc-alignment">
+ <property name="visible">True</property>
+ <property name="left_padding">12</property>
<child>
- <object class="GtkHBox" id="hbox1">
+ <object class="GtkVBox" id="xmlrpc-vbox">
<property name="visible">True</property>
- <property name="spacing">4</property>
+ <property name="sensitive">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label3">
+ <object class="GtkHBox" id="hbox1">
<property name="visible">True</property>
- <property name="label" translatable="yes">Host:</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Host:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="xmlrpc-host">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="xmlrpc-port">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="max_length">5</property>
+ <property name="invisible_char">•</property>
+ <property name="adjustment">adjustment1</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
@@ -86,54 +126,40 @@
</packing>
</child>
<child>
- <object class="GtkEntry" id="xmlrpc-host">
+ <object class="GtkExpander" id="expander1">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="invisible_char">•</property>
- </object>
- <packing>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkSpinButton" id="xmlrpc-port">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="max_length">5</property>
- <property name="invisible_char">•</property>
- <property name="adjustment">adjustment1</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkExpander" id="expander1">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkVBox" id="vbox3">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkHBox" id="hbox2">
+ <object class="GtkVBox" id="vbox4">
<property name="visible">True</property>
- <property name="spacing">4</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label4">
+ <object class="GtkHBox" id="hbox2">
<property name="visible">True</property>
- <property name="label" translatable="yes">Username:</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label4">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Username:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="xmlrpc-user">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
@@ -142,120 +168,275 @@
</packing>
</child>
<child>
- <object class="GtkEntry" id="xmlrpc-user">
+ <object class="GtkHBox" id="hbox3">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">•</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label5">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Password:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="xmlrpc-passwd">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="visibility">False</property>
+ <property name="invisible_char">•</property>
+ </object>
+ <packing>
+ <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>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
</child>
- <child>
- <object class="GtkHBox" id="hbox3">
+ <child type="label">
+ <object class="GtkLabel" id="label6">
<property name="visible">True</property>
- <property name="spacing">4</property>
- <child>
- <object class="GtkLabel" id="label5">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Password:</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkEntry" id="xmlrpc-passwd">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="visibility">False</property>
- <property name="invisible_char">•</property>
- </object>
- <packing>
- <property name="position">1</property>
- </packing>
- </child>
+ <property name="label" translatable="yes">Authentication</property>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
</object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label6">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Authentication</property>
- </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
</child>
</object>
- <packing>
- <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>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
</object>
</child>
+ <child type="label">
+ <object class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">aria2 XML-RPC Server</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
</child>
- <child type="label">
- <object class="GtkLabel" id="label2">
+ <child>
+ <object class="GtkFrame" id="basic-options-frame">
<property name="visible">True</property>
- <property name="label" translatable="yes">aria2 XML-RPC Server</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment2">
+ <property name="visible">True</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkVBox" id="basic-options-vbox">
+ <property name="visible">True</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkHBox" id="hbox4">
+ <property name="visible">True</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label8">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Maximum number of concurrent downloads:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="max-concurrent-downloads">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ <property name="adjustment">adjustment2</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox6">
+ <property name="visible">True</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label11">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Maximum download speed:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="max-download-speed">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ <property name="adjustment">adjustment-max-download-speed</property>
+ <property name="numeric">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label13">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">KiB/s</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label20">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">(0=infinite)</property>
+ <attributes>
+ <attribute name="size" value="7500"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox5">
+ <property name="visible">True</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label9">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Download directory:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFileChooserButton" id="download-dir-button">
+ <property name="visible">True</property>
+ <property name="action">select-folder</property>
+ <property name="create_folders">False</property>
+ <property name="width_chars">14</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label7">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Download Options</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
</child>
</object>
+ </child>
+ <child type="tab">
+ <object class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">General</property>
+ </object>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
+ <property name="tab_fill">False</property>
</packing>
</child>
<child>
- <object class="GtkFrame" id="basic-options-frame">
+ <object class="GtkFrame" id="bittorrent-frame">
<property name="visible">True</property>
+ <property name="border_width">6</property>
<property name="label_xalign">0</property>
<property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment2">
+ <object class="GtkAlignment" id="alignment4">
<property name="visible">True</property>
<property name="top_padding">6</property>
<property name="left_padding">12</property>
<child>
- <object class="GtkVBox" id="basic-options-vbox">
+ <object class="GtkVBox" id="vbox5">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<property name="spacing">6</property>
<child>
- <object class="GtkHBox" id="hbox4">
+ <object class="GtkHBox" id="hbox7">
<property name="visible">True</property>
<property name="spacing">4</property>
<child>
- <object class="GtkLabel" id="label8">
+ <object class="GtkLabel" id="label12">
<property name="visible">True</property>
- <property name="label" translatable="yes">Maximum number of concurrent downloads:</property>
+ <property name="label" translatable="yes">Maximum upload speed:</property>
</object>
<packing>
<property name="expand">False</property>
@@ -264,11 +445,12 @@
</packing>
</child>
<child>
- <object class="GtkSpinButton" id="max-concurrent-downloads">
+ <object class="GtkSpinButton" id="max-upload-speed">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="invisible_char">•</property>
- <property name="adjustment">adjustment2</property>
+ <property name="adjustment">adjustment-max-upload-speed</property>
+ <property name="numeric">True</property>
</object>
<packing>
<property name="expand">False</property>
@@ -276,19 +458,46 @@
<property name="position">1</property>
</packing>
</child>
+ <child>
+ <object class="GtkLabel" id="label14">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">KiB/s</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label19">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">(0=infinite)</property>
+ <attributes>
+ <attribute name="size" value="7500"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
</object>
<packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkHBox" id="hbox6">
+ <object class="GtkHBox" id="hbox9">
<property name="visible">True</property>
<property name="spacing">4</property>
<child>
- <object class="GtkLabel" id="label11">
+ <object class="GtkLabel" id="label17">
<property name="visible">True</property>
- <property name="label" translatable="yes">Maximum download speed:</property>
+ <property name="label" translatable="yes">Maximum number of peers:</property>
</object>
<packing>
<property name="expand">False</property>
@@ -297,12 +506,11 @@
</packing>
</child>
<child>
- <object class="GtkSpinButton" id="max-download-speed">
+ <object class="GtkSpinButton" id="max-peers">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="invisible_char">•</property>
- <property name="adjustment">adjustment-max-download-speed</property>
- <property name="numeric">True</property>
+ <property name="adjustment">adjustment-max-peers</property>
</object>
<packing>
<property name="expand">False</property>
@@ -311,18 +519,7 @@
</packing>
</child>
<child>
- <object class="GtkLabel" id="label13">
- <property name="visible">True</property>
- <property name="label" translatable="yes">KiB/s</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label20">
+ <object class="GtkLabel" id="label18">
<property name="visible">True</property>
<property name="label" translatable="yes">(0=infinite)</property>
<attributes>
@@ -332,22 +529,24 @@
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">3</property>
+ <property name="position">2</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="GtkHBox" id="hbox5">
+ <object class="GtkHBox" id="hbox8">
<property name="visible">True</property>
<property name="spacing">4</property>
<child>
- <object class="GtkLabel" id="label9">
+ <object class="GtkLabel" id="label10">
<property name="visible">True</property>
- <property name="label" translatable="yes">Download directory:</property>
+ <property name="label" translatable="yes">Seed ratio:</property>
</object>
<packing>
<property name="expand">False</property>
@@ -356,11 +555,12 @@
</packing>
</child>
<child>
- <object class="GtkFileChooserButton" id="download-dir-button">
+ <object class="GtkSpinButton" id="seed-ratio">
<property name="visible">True</property>
- <property name="action">select-folder</property>
- <property name="create_folders">False</property>
- <property name="width_chars">14</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ <property name="adjustment">adjustment-seed-ratio</property>
+ <property name="digits">2</property>
</object>
<packing>
<property name="expand">False</property>
@@ -368,91 +568,20 @@
<property name="position">1</property>
</packing>
</child>
- </object>
- <packing>
- <property name="position">2</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
- <child type="label">
- <object class="GtkLabel" id="label7">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Download Options</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- <child type="tab">
- <object class="GtkLabel" id="label1">
- <property name="visible">True</property>
- <property name="label" translatable="yes">General</property>
- </object>
- <packing>
- <property name="tab_fill">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkFrame" id="bittorrent-frame">
- <property name="visible">True</property>
- <property name="border_width">6</property>
- <property name="label_xalign">0</property>
- <property name="shadow_type">none</property>
- <child>
- <object class="GtkAlignment" id="alignment4">
- <property name="visible">True</property>
- <property name="top_padding">6</property>
- <property name="left_padding">12</property>
- <child>
- <object class="GtkVBox" id="vbox5">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkHBox" id="hbox7">
- <property name="visible">True</property>
- <property name="spacing">4</property>
- <child>
- <object class="GtkLabel" id="label12">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Maximum upload speed:</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkSpinButton" id="max-upload-speed">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">•</property>
- <property name="adjustment">adjustment-max-upload-speed</property>
- <property name="numeric">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label14">
- <property name="visible">True</property>
- <property name="label" translatable="yes">KiB/s</property>
+ <child>
+ <object class="GtkLabel" id="label21">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">(0=infinite)</property>
+ <attributes>
+ <attribute name="size" value="7500"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
@@ -461,261 +590,125 @@
</packing>
</child>
<child>
- <object class="GtkLabel" id="label19">
+ <object class="GtkHSeparator" id="hseparator1">
<property name="visible">True</property>
- <property name="label" translatable="yes">(0=infinite)</property>
- <attributes>
- <attribute name="size" value="7500"/>
- </attributes>
</object>
<packing>
<property name="expand">False</property>
- <property name="fill">False</property>
<property name="position">3</property>
</packing>
</child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkHBox" id="hbox9">
- <property name="visible">True</property>
- <property name="spacing">4</property>
<child>
- <object class="GtkLabel" id="label17">
+ <object class="GtkCheckButton" id="enable-dht">
+ <property name="label" translatable="yes">Enable DHT (Distributed Hash Table)</property>
<property name="visible">True</property>
- <property name="label" translatable="yes">Maximum number of peers:</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Distributed Hash Table allows to use torrents without a working tracker</property>
+ <property name="draw_indicator">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">0</property>
+ <property name="position">4</property>
</packing>
</child>
<child>
- <object class="GtkSpinButton" id="max-peers">
+ <object class="GtkCheckButton" id="enable-pex">
+ <property name="label" translatable="yes">Enable PEX (Peer Exchange)</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="invisible_char">•</property>
- <property name="adjustment">adjustment-max-peers</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Peer Exchange helps finding more peers through connected peers</property>
+ <property name="draw_indicator">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">1</property>
+ <property name="position">5</property>
</packing>
</child>
<child>
- <object class="GtkLabel" id="label18">
+ <object class="GtkHSeparator" id="hseparator2">
<property name="visible">True</property>
- <property name="label" translatable="yes">(0=infinite)</property>
- <attributes>
- <attribute name="size" value="7500"/>
- </attributes>
</object>
<packing>
<property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</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="GtkHBox" id="hbox8">
- <property name="visible">True</property>
- <property name="spacing">4</property>
- <child>
- <object class="GtkLabel" id="label10">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Seed ratio:</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
+ <property name="position">6</property>
</packing>
</child>
<child>
- <object class="GtkSpinButton" id="seed-ratio">
+ <object class="GtkCheckButton" id="require-encryption">
+ <property name="label" translatable="yes">Always require encryption</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="invisible_char">•</property>
- <property name="adjustment">adjustment-seed-ratio</property>
- <property name="digits">2</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="label21">
- <property name="visible">True</property>
- <property name="label" translatable="yes">(0=infinite)</property>
- <attributes>
- <attribute name="size" value="7500"/>
- </attributes>
+ <property name="receives_default">False</property>
+ <property name="draw_indicator">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">2</property>
+ <property name="position">7</property>
</packing>
</child>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
- <child>
- <object class="GtkHSeparator" id="hseparator1">
- <property name="visible">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="position">3</property>
- </packing>
- </child>
- <child>
- <object class="GtkCheckButton" id="enable-dht">
- <property name="label" translatable="yes">Enable DHT (Distributed Hash Table)</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip_text" translatable="yes">Distributed Hash Table allows to use torrents without a working tracker</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">4</property>
- </packing>
- </child>
- <child>
- <object class="GtkCheckButton" id="enable-pex">
- <property name="label" translatable="yes">Enable PEX (Peer Exchange)</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip_text" translatable="yes">Peer Exchange helps finding more peers through connected peers</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">5</property>
- </packing>
- </child>
- <child>
- <object class="GtkHSeparator" id="hseparator2">
- <property name="visible">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="position">6</property>
- </packing>
- </child>
- <child>
- <object class="GtkCheckButton" id="require-encryption">
- <property name="label" translatable="yes">Always require encryption</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">7</property>
- </packing>
</child>
</object>
</child>
+ <child type="label">
+ <object class="GtkLabel" id="label16">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">BitTorrent</property>
+ <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
</child>
- <child type="label">
- <object class="GtkLabel" id="label16">
+ <child type="tab">
+ <object class="GtkLabel" id="label15">
<property name="visible">True</property>
<property name="label" translatable="yes">BitTorrent</property>
- <property name="use_markup">True</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
</object>
+ <packing>
+ <property name="position">1</property>
+ <property name="tab_fill">False</property>
+ </packing>
</child>
- </object>
- <packing>
- <property name="position">1</property>
- </packing>
- </child>
- <child type="tab">
- <object class="GtkLabel" id="label15">
- <property name="visible">True</property>
- <property name="label" translatable="yes">BitTorrent</property>
- </object>
- <packing>
- <property name="position">1</property>
- <property name="tab_fill">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkVBox" id="advanced-vbox">
- <property name="visible">True</property>
- <property name="border_width">6</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
<child>
- <object class="GtkFrame" id="frame2">
+ <object class="GtkVBox" id="advanced-vbox">
<property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="shadow_type">none</property>
+ <property name="border_width">6</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkAlignment" id="alignment3">
+ <object class="GtkFrame" id="frame2">
<property name="visible">True</property>
- <property name="top_padding">6</property>
- <property name="left_padding">12</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkVBox" id="vbox6">
+ <object class="GtkAlignment" id="alignment3">
<property name="visible">True</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
<child>
- <object class="GtkCheckButton" id="certificates">
- <property name="label" translatable="yes">Check HTTPS certificates</property>
+ <object class="GtkVBox" id="vbox6">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkHBox" id="hbox12">
- <property name="visible">True</property>
- <property name="tooltip_text" translatable="yes">Number of connections to open for one file to download</property>
- <property name="spacing">4</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label25">
+ <object class="GtkCheckButton" id="certificates">
+ <property name="label" translatable="yes">Check HTTPS certificates</property>
<property name="visible">True</property>
- <property name="label" translatable="yes">Number of fragmentation:</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
</object>
<packing>
<property name="expand">False</property>
@@ -724,11 +717,34 @@
</packing>
</child>
<child>
- <object class="GtkSpinButton" id="split">
+ <object class="GtkHBox" id="hbox12">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">•</property>
- <property name="adjustment">adjustment-split</property>
+ <property name="tooltip_text" translatable="yes">Number of connections to open for one file to download</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label25">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Number of fragmentation:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="split">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ <property name="adjustment">adjustment-split</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
@@ -736,92 +752,105 @@
<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="GtkHBox" id="hbox13">
- <property name="visible">True</property>
- <property name="tooltip_text" translatable="yes">List of country codes separated by commas like JP,US to use for Metalink</property>
- <property name="spacing">4</property>
- <child>
- <object class="GtkLabel" id="label26">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Preferred locations:</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
<child>
- <object class="GtkEntry" id="locations">
+ <object class="GtkHBox" id="hbox13">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">•</property>
- <property name="width_chars">8</property>
+ <property name="tooltip_text" translatable="yes">List of country codes separated by commas like JP,US to use for Metalink</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label26">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Preferred locations:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="locations">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ <property name="width_chars">8</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</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>
+ <property name="position">2</property>
</packing>
</child>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
</child>
</object>
</child>
+ <child type="label">
+ <object class="GtkLabel" id="label23">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Advanced Download Options</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
</child>
- <child type="label">
- <object class="GtkLabel" id="label23">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Advanced Download Options</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkFrame" id="frame3">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="shadow_type">none</property>
<child>
- <object class="GtkAlignment" id="alignment5">
+ <object class="GtkFrame" id="frame3">
<property name="visible">True</property>
- <property name="top_padding">6</property>
- <property name="left_padding">12</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
<child>
- <object class="GtkVBox" id="vbox7">
+ <object class="GtkAlignment" id="alignment5">
<property name="visible">True</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
<child>
- <object class="GtkHBox" id="hbox10">
+ <object class="GtkVBox" id="vbox7">
<property name="visible">True</property>
- <property name="spacing">4</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkLabel" id="label24">
+ <object class="GtkHBox" id="hbox10">
<property name="visible">True</property>
- <property name="label" translatable="yes">Listen port:</property>
+ <property name="spacing">4</property>
+ <child>
+ <object class="GtkLabel" id="label24">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Listen port:</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="listen-port">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">•</property>
+ <property name="adjustment">adjustment-listen-port</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
@@ -830,11 +859,13 @@
</packing>
</child>
<child>
- <object class="GtkSpinButton" id="listen-port">
+ <object class="GtkCheckButton" id="enable-upnp">
+ <property name="label" translatable="yes">Negociate automatic port redirection with UPnP</property>
<property name="visible">True</property>
+ <property name="sensitive">False</property>
<property name="can_focus">True</property>
- <property name="invisible_char">•</property>
- <property name="adjustment">adjustment-listen-port</property>
+ <property name="receives_default">False</property>
+ <property name="draw_indicator">True</property>
</object>
<packing>
<property name="expand">False</property>
@@ -843,88 +874,170 @@
</packing>
</child>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkCheckButton" id="enable-upnp">
- <property name="label" translatable="yes">Negociate automatic port redirection with UPnP</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="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
</object>
</child>
+ <child type="label">
+ <object class="GtkLabel" id="label27">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Network</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
</child>
- <child type="label">
- <object class="GtkLabel" id="label27">
+ <child>
+ <object class="GtkHBox" id="hbox11">
<property name="visible">True</property>
- <property name="label" translatable="yes">Network</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
+ <child>
+ <object class="GtkButton" id="button-edit-configuration">
+ <property name="label" translatable="yes">Edit configuration</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">image1</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="pack_type">end</property>
+ <property name="position">1</property>
+ </packing>
</child>
</object>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
<property name="position">2</property>
</packing>
</child>
+ <child type="tab">
+ <object class="GtkLabel" id="label22">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Advanced</property>
+ </object>
+ <packing>
+ <property name="position">2</property>
+ <property name="tab_fill">False</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <child type="tab">
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkNotebook" id="notebook2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="border_width">6</property>
+ <property name="show_tabs">False</property>
<child>
- <object class="GtkHBox" id="hbox11">
+ <object class="GtkVBox" id="vbox1">
<property name="visible">True</property>
+ <property name="orientation">vertical</property>
<child>
- <object class="GtkButton" id="button3">
- <property name="label" translatable="yes">Edit configuration</property>
+ <object class="GtkScrolledWindow" id="scrolledwindow1">
<property name="visible">True</property>
- <property name="sensitive">False</property>
<property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <property name="image">image1</property>
+ <property name="hscrollbar_policy">automatic</property>
+ <property name="vscrollbar_policy">automatic</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTreeView" id="treeview-configuration">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="search_column">0</property>
+ <child>
+ <object class="GtkTreeViewColumn" id="treeviewcolumn-option">
+ <property name="resizable">True</property>
+ <property name="title">Option</property>
+ <property name="expand">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkTreeViewColumn" id="treeviewcolumn-value">
+ <property name="resizable">True</property>
+ <property name="title">Value</property>
+ <property name="expand">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkHBox" id="hbox14">
+ <property name="visible">True</property>
+ <property name="border_width">6</property>
+ <child>
+ <object class="GtkButton" id="button-back">
+ <property name="label">gtk-go-back</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="pack_type">end</property>
- <property name="position">0</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="pack_type">end</property>
- <property name="position">1</property>
- </packing>
+ </child>
+ <child type="tab">
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child type="tab">
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child type="tab">
+ <placeholder/>
</child>
</object>
<packing>
- <property name="position">2</property>
+ <property name="position">1</property>
</packing>
</child>
<child type="tab">
- <object class="GtkLabel" id="label22">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Advanced</property>
- </object>
- <packing>
- <property name="position">2</property>
- <property name="tab_fill">False</property>
- </packing>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child type="tab">
+ <placeholder/>
</child>
</object>
<packing>
@@ -1016,10 +1129,6 @@
<property name="step_increment">5</property>
<property name="page_increment">10</property>
</object>
- <object class="GtkImage" id="image1">
- <property name="visible">True</property>
- <property name="stock">gtk-edit</property>
- </object>
<object class="GtkAdjustment" id="adjustment-split">
<property name="value">5</property>
<property name="lower">1</property>
@@ -1034,4 +1143,8 @@
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
+ <object class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="stock">gtk-edit</property>
+ </object>
</interface>
More information about the Xfce4-commits
mailing list