URI: 
       tset label - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit a9b05ad1884752181c45f17126fcb85dbc82bc4b
   DIR parent ec141ebb67dd3c36e5675799c89ded7794e50f0e
  HTML Author: ThomasV <thomasv@gitorious>
       Date:   Sun, 29 Sep 2013 12:14:01 +0200
       
       set label
       
       Diffstat:
         M gui/qt/main_window.py               |      28 ++++++----------------------
         M lib/wallet.py                       |      21 ++++++++++++++++++---
         M plugins/labels.py                   |       5 ++++-
       
       3 files changed, 28 insertions(+), 26 deletions(-)
       ---
   DIR diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py
       t@@ -489,22 +489,6 @@ class ElectrumWindow(QMainWindow):
        
        
        
       -    def set_label(self, name, text = None):
       -        changed = False
       -        old_text = self.wallet.labels.get(name)
       -        if text:
       -            if old_text != text:
       -                self.wallet.labels[name] = text
       -                self.wallet.storage.put('labels', self.wallet.labels)
       -                changed = True
       -        else:
       -            if old_text:
       -                self.wallet.labels.pop(name)
       -                changed = True
       -        run_hook('set_label', name, text, changed)
       -        return changed
       -
       -
            # custom wrappers for getOpenFileName and getSaveFileName, that remember the path selected by the user
            def getOpenFileName(self, title, filter = ""):
                directory = self.config.get('io_dir', os.path.expanduser('~'))
       t@@ -629,7 +613,7 @@ class ElectrumWindow(QMainWindow):
                tx_hash = str(item.data(0, Qt.UserRole).toString())
                tx = self.wallet.transactions.get(tx_hash)
                text = unicode( item.text(2) )
       -        self.set_label(tx_hash, text) 
       +        self.wallet.set_label(tx_hash, text) 
                if text: 
                    item.setForeground(2, QBrush(QColor('black')))
                else:
       t@@ -668,7 +652,7 @@ class ElectrumWindow(QMainWindow):
                    if not is_editable:
                        return
        
       -            changed = self.set_label(addr, text)
       +            changed = self.wallet.set_label(addr, text)
                    if changed:
                        self.update_history_tab()
                        self.update_completions()
       t@@ -905,7 +889,7 @@ class ElectrumWindow(QMainWindow):
                    return
        
                if label: 
       -            self.set_label(tx.hash(), label)
       +            self.wallet.set_label(tx.hash(), label)
        
                if tx.is_complete:
                    h = self.wallet.send_tx(tx)
       t@@ -946,7 +930,7 @@ class ElectrumWindow(QMainWindow):
                    if self.question('Give label "%s" to address %s ?'%(label,address)):
                        if address not in self.wallet.addressbook and not self.wallet.is_mine(address):
                            self.wallet.addressbook.append(address)
       -                self.set_label(address, label)
       +                self.wallet.set_label(address, label)
        
                run_hook('set_url', url, self.show_message, self.question)
        
       t@@ -1095,7 +1079,7 @@ class ElectrumWindow(QMainWindow):
                text, ok = QInputDialog.getText(self, _('Rename account'), _('Name') + ':')
                if ok:
                    label = unicode(text)
       -            self.set_label(k,label)
       +            self.wallet.set_label(k,label)
                    self.update_receive_tab()
        
            def create_account_menu(self, position, k, item):
       t@@ -1156,7 +1140,7 @@ class ElectrumWindow(QMainWindow):
            def delete_contact(self, x):
                if self.question(_("Do you want to remove")+" %s "%x +_("from your list of contacts?")):
                    self.wallet.delete_contact(x)
       -            self.set_label(x, None)
       +            self.wallet.set_label(x, None)
                    self.update_history_tab()
                    self.update_contacts_tab()
                    self.update_completions()
   DIR diff --git a/lib/wallet.py b/lib/wallet.py
       t@@ -396,9 +396,24 @@ class Wallet:
                return account_id, account
        
        
       -    def set_label(self, key, value):
       -        self.labels[key] = value
       -        self.storage.put('labels', self.labels, True)
       +    def set_label(self, name, text = None):
       +        changed = False
       +        old_text = self.labels.get(name)
       +        if text:
       +            if old_text != text:
       +                self.labels[name] = text
       +                changed = True
       +        else:
       +            if old_text:
       +                self.labels.pop(name)
       +                changed = True
       +
       +        if changed:
       +            self.storage.put('labels', self.labels, True)
       +
       +        run_hook('set_label', name, text, changed)
       +        return changed
       +
        
        
            def create_account(self, account_type = '1', name = None):
   DIR diff --git a/plugins/labels.py b/plugins/labels.py
       t@@ -153,7 +153,10 @@ class Plugin(BasePlugin):
                    else:
                        self.set_enabled(False)
                        return False
       -        return enabled
       +
       +        self.set_enabled(True)
       +        return True
       +
        
            def full_push(self):
                if self.do_full_push():