URI: 
       tdo not show plugins that register a custom wallet type in the plugins toggle dialog - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit e18ddd0096250d6ebcda2bc16a9ea49335d0e7c7
   DIR parent aadffa0c8f438ace747489e77978c247c9cb2602
  HTML Author: ThomasV <thomasv@gitorious>
       Date:   Thu,  6 Aug 2015 11:12:15 +0200
       
       do not show plugins that register a custom wallet type in the plugins toggle dialog
       
       Diffstat:
         M gui/qt/main_window.py               |       2 ++
         M plugins/trezor.py                   |      16 +++++++---------
         M plugins/trustedcoin.py              |       6 ------
       
       3 files changed, 9 insertions(+), 15 deletions(-)
       ---
   DIR diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py
       t@@ -2835,6 +2835,8 @@ class ElectrumWindow(QMainWindow):
                for i, descr in enumerate(descriptions):
                    name = descr['name']
                    p = plugins.get(name)
       +            if descr.get('registers_wallet_type'):
       +                continue
                    try:
                        cb = QCheckBox(descr['fullname'])
                        cb.setEnabled(is_available(name, self.wallet))
   DIR diff --git a/plugins/trezor.py b/plugins/trezor.py
       t@@ -22,6 +22,7 @@ from electrum.util import print_error, print_msg
        from electrum.wallet import pw_decode, bip32_private_derivation, bip32_root
        
        from electrum_gui.qt.util import *
       +from electrum_gui.qt.main_window import StatusBarButton
        
        try:
            from trezorlib.client import types
       t@@ -49,7 +50,6 @@ class Plugin(BasePlugin):
            def __init__(self, config, name):
                BasePlugin.__init__(self, config, name)
                self._is_available = self._init()
       -        self._requires_settings = True
                self.wallet = None
                self.handler = None
                self.client = None
       t@@ -70,9 +70,6 @@ class Plugin(BasePlugin):
                    return False
                return True
        
       -    def requires_settings(self):
       -        return self._requires_settings
       -
            def set_enabled(self, enabled):
                self.wallet.storage.put('use_' + self.name, enabled)
        
       t@@ -132,22 +129,25 @@ class Plugin(BasePlugin):
                self.wallet = wallet
                self.window = window
                self.wallet.plugin = self
       -
       +        self.trezor_button = StatusBarButton( QIcon(":icons/trustedcoin.png"), _("Network"), self.settings_dialog)
       +        self.window.statusBar().addPermanentWidget(self.trezor_button)
                if self.handler is None:
                    self.handler = TrezorQtHandler(self.window.app)
       -
                try:
                    self.get_client().ping('t')
                except BaseException as e:
                    QMessageBox.information(self.window, _('Error'), _("Trezor device not detected.\nContinuing in watching-only mode." + '\n\nReason:\n' + str(e)), _('OK'))
                    self.wallet.force_watching_only = True
                    return
       -
                if self.wallet.addresses() and not self.wallet.check_proper_device():
                    QMessageBox.information(self.window, _('Error'), _("This wallet does not match your Trezor device"), _('OK'))
                    self.wallet.force_watching_only = True
        
            @hook
       +    def close_wallet(self):
       +        self.window.statusBar().removeWidget(self.trezor_button)
       +
       +    @hook
            def installwizard_load_wallet(self, wallet, window):
                self.load_wallet(wallet, window)
        
       t@@ -192,8 +192,6 @@ class Plugin(BasePlugin):
                finally:
                    self.handler.stop()
        
       -    def settings_widget(self, window):
       -        return EnterButton(_('Settings'), self.settings_dialog)
        
            def settings_dialog(self):
                get_label = lambda: self.get_client().features.label
   DIR diff --git a/plugins/trustedcoin.py b/plugins/trustedcoin.py
       t@@ -228,9 +228,6 @@ class Plugin(BasePlugin):
                    return True
                return False
        
       -    def requires_settings(self):
       -        return True
       -
            def set_enabled(self, enabled):
                self.wallet.storage.put('use_' + self.name, enabled)
        
       t@@ -538,9 +535,6 @@ class Plugin(BasePlugin):
                    return
                return pw.get_amount()
        
       -    def settings_widget(self, window):
       -        return EnterButton(_('Settings'), self.settings_dialog)
       -
            def settings_dialog(self):
                self.waiting_dialog = WaitingDialog(self.window, 'please wait...', self.request_billing_info, self.show_settings_dialog)
                self.waiting_dialog.start()