URI: 
       tsettings dialog - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit a10455f6857bd7c8d57e160cecf72d60f99465a7
   DIR parent c5747484b2ca54a4360e7226b1174b9df7229010
  HTML Author: ecdsa <ecdsa@github>
       Date:   Sun, 17 Mar 2013 11:52:58 +0100
       
       settings dialog
       
       Diffstat:
         M gui/gui_classic.py                  |       2 +-
         M gui/plugins.py                      |       4 +++-
         M plugins/labels.py                   |      24 +++++++++++++-----------
       
       3 files changed, 17 insertions(+), 13 deletions(-)
       ---
   DIR diff --git a/gui/gui_classic.py b/gui/gui_classic.py
       t@@ -2015,7 +2015,7 @@ class ElectrumWindow(QMainWindow):
                            cb.setChecked(p.is_enabled())
                            cb.clicked.connect(mk_toggle(cb,p))
                            grid_plugins.addWidget(cb, i, 0)
       -                    if p.requires_settings:
       +                    if p.requires_settings():
                                grid_plugins.addWidget(EnterButton(_('Settings'), p.settings_dialog), i, 1)
                            grid_plugins.addWidget(HelpButton(description), i, 2)
                        except:
   DIR diff --git a/gui/plugins.py b/gui/plugins.py
       t@@ -11,7 +11,9 @@ class BasePlugin:
                self.description = description
                self.gui = gui
                self.config = gui.config
       -        self.requires_settings = False
       +
       +    def requires_settings(self):
       +        return False
        
            def toggle(self):
                enabled = not self.is_enabled()
   DIR diff --git a/plugins/labels.py b/plugins/labels.py
       t@@ -65,15 +65,13 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
                    return
                response = json.loads(response.read())
        
       -    def close_settings_dialog(self):
       -        # When you enable the plugin for the first time this won't exist.
       -        if self.is_enabled():
       -            if hasattr(self, 'auth_token_edit'):
       -                self.config.set_key("plugin_label_api_key", str(self.auth_token_edit.text()))
       -            else:
       -                QMessageBox.information(None, _("Label sync loaded"), _("Please open the settings again to configure the label sync plugin."))
        
       -    def create_settings_tab(self, tabs):
       +    def requires_settings(self):
       +        return True
       +
       +    def settings_dialog(self):
       +        dialog = QDialog(self.gui)
       +
                def check_for_api_key(api_key):
                    if api_key and len(api_key) > 12:
                      self.config.set_key("plugin_label_api_key", str(self.auth_token_edit.text()))
       t@@ -83,8 +81,7 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
                      self.upload.setEnabled(False)
                      self.download.setEnabled(False)
        
       -        cloud_tab = QWidget()
       -        layout = QGridLayout(cloud_tab)
       +        layout = QGridLayout()
                layout.addWidget(QLabel("API Key: "),0,0)
        
                self.auth_token_edit = QLineEdit(self.auth_token())
       t@@ -103,7 +100,12 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
        
                check_for_api_key(self.auth_token())
        
       -        tabs.addTab(cloud_tab, "Label sync")
       +        dialog.setLayout(layout)
       +
       +        dialog.exec_()
       +        self.config.set_key("plugin_label_api_key", str(self.auth_token_edit.text()))
       +
       +
        
            def full_push(self):
                if self.do_full_push():