parser.add_option("-p", "--proxy", dest="proxy", default=None, help="set proxy [type:]host[:port], where type is socks4,socks5 or http")
options, args = parser.parse_args()
- if options.proxy:
- options.proxy = parse_proxy_options(options.proxy)
-
+ proxy = parse_proxy_options(options.proxy) if options.proxy else simple_config.config["proxy"]
wallet = Wallet()
wallet.set_path(options.wallet_path)
wallet.read()
sys.exit("Error: Unknown GUI: " + options.gui)
gui = gui.ElectrumGui(wallet)
- interface = WalletSynchronizer(wallet, True, gui.server_list_changed, options.proxy)
+ interface = WalletSynchronizer(wallet, True, gui.server_list_changed, proxy)
interface.start()
try:
proxy_port.setFixedWidth(50)
proxy_mode.addItems(['NONE', 'SOCKS4', 'SOCKS5', 'HTTP'])
- cfg = SimpleConfig()
- proxy_config = cfg.config['proxy']
- proxy_mode.setCurrentIndex(proxy_mode.findText(str(proxy_config["mode"]).upper()))
- proxy_host.setText(proxy_config["host"])
- proxy_port.setText(proxy_config["port"])
+ proxy_config = interface.proxy if interface.proxy else { "mode":"none", "host":"localhost", "port":"8080"}
+ proxy_mode.setCurrentIndex(proxy_mode.findText(str(proxy_config.get("mode").upper())))
+ proxy_host.setText(proxy_config.get("host"))
+ proxy_port.setText(proxy_config.get("port"))
+
hbox.addWidget(QLabel(_('Proxy') + ':'))
hbox.addWidget(proxy_mode)
hbox.addWidget(proxy_host)
server = unicode( host_line.text() )
try:
- cfg.set_key("proxy", { u'mode':unicode(proxy_mode.currentText()).lower(), u'host':unicode(proxy_host.text()), u'port':unicode(proxy_port.text()) }, True)
- if cfg.config["proxy"]["mode"] != "none":
- wallet.set_server(server, cfg.config["proxy"])
+ if proxy_mode.currentText() != 'NONE':
+ proxy = { u'mode':unicode(proxy_mode.currentText()).lower(), u'host':unicode(proxy_host.text()), u'port':unicode(proxy_port.text()) }
else:
- wallet.set_server(server)
+ proxy = None
+
+ cfg = SimpleConfig()
+ cfg.set_key("proxy", proxy, True)
+ wallet.set_server(server, proxy)
except Exception as err:
QMessageBox.information(None, _('Error'), str(err), _('OK'))
class SimpleConfig:
- default_options = {"gui": "lite", "proxy": { "mode": "none", "host":"localhost", "port":"8080" },
- "winpos-qt": [100, 100, 840, 400], "winpos-lite": [4, 25, 351, 149], "history": False }
+ default_options = {
+ "gui": "lite",
+ "proxy": None,
+ "winpos-qt": [100, 100, 840, 400],
+ "winpos-lite": [4, 25, 351, 149],
+ "history": False
+ }
def __init__(self):
# Find electrum data folder