Skip to content

Commit 0d707e0

Browse files
committed
Electrum plugin: allow specifying additional custom CLI arguments using the GUI
1 parent cf8a08d commit 0d707e0

3 files changed

Lines changed: 14 additions & 1 deletion

File tree

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
- Electrum plugin: Restore the previous `oneserver` setting when the plugin is disabled,
66
to prevent users from inadvertently connecting to public Electrum servers with this setting still on.
77

8+
- Electrum plugin: allow specifying additional custom CLI arguments using the GUI
9+
810
## 0.1.1 - 2020-05-27
911

1012
- Make bwt available as an Electrum plugin! 💥

contrib/electrum-plugin/bwt.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ def __init__(self, parent, config, name):
3232
self.bitcoind_wallet = config.get('bwt_bitcoind_wallet')
3333
self.bitcoind_cred = config.get('bwt_bitcoind_cred')
3434
self.rescan_since = config.get('bwt_rescan_since', 'all')
35+
self.custom_opt = config.get('bwt_custom_opt')
3536
self.socket_path = config.get('bwt_socket_path', default_socket_path())
36-
self.poll_interval = config.get('bwt_poll_interval', 5)
3737
self.verbose = config.get('bwt_verbose', 0)
3838

3939
if config.get('bwt_was_oneserver') is None:
@@ -70,6 +70,10 @@ def start(self):
7070
for i in range(self.verbose):
7171
args.append('-v')
7272

73+
if self.custom_opt:
74+
# XXX this doesn't support arguments with spaces. thankfully bwt doesn't currently have any.
75+
args.extend(self.custom_opt.split(' '))
76+
7377
self.stop()
7478
_logger.info('Starting bwt daemon')
7579
_logger.debug('bwt options: %s' % ' '.join(args))

contrib/electrum-plugin/qt.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,11 @@ def settings_dialog(self, window):
8585
form.addRow(_('Scan:'), rescan_l)
8686
form.addRow('', helptext(_('Set to the wallet creation date to reduce scanning time.'), False))
8787

88+
custom_opt_e = input(self.custom_opt)
89+
custom_opt_e.setPlaceholderText('e.g. --gap-limit 50 --poll-interval 1')
90+
form.addRow('Options', custom_opt_e)
91+
form.addRow('', helptext(_('Additional custom options. Optional.'), False))
92+
8893
verbose_c = QComboBox()
8994
verbose_c.addItems([ _('info'), _('debug'), _('trace') ])
9095
verbose_c.setCurrentIndex(self.verbose)
@@ -111,6 +116,7 @@ def save_config_and_run():
111116
self.bitcoind_cred = str(cred_e.text())
112117
self.bitcoind_wallet = str(wallet_e.text())
113118
self.rescan_since = get_rescan_value(rescan_c, rescan_e)
119+
self.custom_opt = str(custom_opt_e.text())
114120
self.verbose = verbose_c.currentIndex()
115121

116122
self.config.set_key('bwt_enabled', self.enabled)
@@ -119,6 +125,7 @@ def save_config_and_run():
119125
self.config.set_key('bwt_bitcoind_cred', self.bitcoind_cred)
120126
self.config.set_key('bwt_bitcoind_wallet', self.bitcoind_wallet)
121127
self.config.set_key('bwt_rescan_since', self.rescan_since)
128+
self.config.set_key('bwt_custom_opt', self.custom_opt)
122129
self.config.set_key('bwt_verbose', self.verbose)
123130

124131
log_t.clear()

0 commit comments

Comments
 (0)