tqt console: accept kwargs for commands.py methods - electrum - Electrum Bitcoin wallet
HTML git clone https://git.parazyd.org/electrum
DIR Log
DIR Files
DIR Refs
DIR Submodules
---
DIR commit 9547fb7b06b8c1ef03c04bae0a87411f5a58af2f
DIR parent 3a35ab2574fc59d8385f0218569b741fab82482e
HTML Author: SomberNight <somber.night@protonmail.com>
Date: Tue, 6 Aug 2019 05:20:53 +0200
qt console: accept kwargs for commands.py methods
e.g. make_seed(nbits=264, segwit=True)
also allow setting "password" as a kwarg
Diffstat:
M electrum/commands.py | 15 +++++++--------
M electrum/gui/qt/main_window.py | 2 +-
2 files changed, 8 insertions(+), 9 deletions(-)
---
DIR diff --git a/electrum/commands.py b/electrum/commands.py
t@@ -107,21 +107,20 @@ class Commands:
self.network = network
self._callback = callback
- def _run(self, method, args, password_getter):
- # this wrapper is called from the python console
+ def _run(self, method, args, password_getter, **kwargs):
+ """This wrapper is called from the Qt python console."""
cmd = known_commands[method]
- if cmd.requires_password and self.wallet.has_password():
+ password = kwargs.get('password', None)
+ if (cmd.requires_password and self.wallet.has_password()
+ and password is None):
password = password_getter()
if password is None:
return
- else:
- password = None
f = getattr(self, method)
if cmd.requires_password:
- result = f(*args, **{'password':password})
- else:
- result = f(*args)
+ kwargs['password'] = password
+ result = f(*args, **kwargs)
if self._callback:
self._callback()
DIR diff --git a/electrum/gui/qt/main_window.py b/electrum/gui/qt/main_window.py
t@@ -2087,7 +2087,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger):
c = commands.Commands(self.config, self.wallet, self.network, lambda: self.console.set_json(True))
methods = {}
def mkfunc(f, method):
- return lambda *args: f(method, args, self.password_dialog)
+ return lambda *args, **kwargs: f(method, args, self.password_dialog, **kwargs)
for m in dir(c):
if m[0]=='_' or m in ['network','wallet','config']: continue
methods[m] = mkfunc(c._run, m)