URI: 
       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)