URI: 
       tsetFrozen generic method - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 10e5ec56a1ab7ffb6eee78b9fe7a0470bc373988
   DIR parent 0d02e9fd74031df0c04489462da36b439592a648
  HTML Author: ThomasV <thomasv@gitorious>
       Date:   Thu,  5 Jun 2014 14:49:32 +0200
       
       setFrozen generic method
       
       Diffstat:
         M gui/qt/amountedit.py                |       8 +++++++-
         M gui/qt/main_window.py               |      25 +++++--------------------
         M gui/qt/paytoedit.py                 |      19 ++++++++-----------
       
       3 files changed, 20 insertions(+), 32 deletions(-)
       ---
   DIR diff --git a/gui/qt/amountedit.py b/gui/qt/amountedit.py
       t@@ -5,7 +5,13 @@ from PyQt4.QtGui import *
        
        from decimal import Decimal
        
       -class AmountEdit(QLineEdit):
       +class MyLineEdit(QLineEdit):
       +
       +    def setFrozen(self, b):
       +        self.setReadOnly(b)
       +        self.setFrame(not b)
       +
       +class AmountEdit(MyLineEdit):
        
            def __init__(self, decimal_point, is_int = False, parent=None):
                QLineEdit.__init__(self, parent)
   DIR diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py
       t@@ -44,7 +44,7 @@ from electrum import SimpleConfig, Wallet, WalletStorage
        
        from electrum import bmp, pyqrnative
        
       -from amountedit import AmountEdit
       +from amountedit import AmountEdit, MyLineEdit
        from network_dialog import NetworkDialog
        from qrcodewidget import QRCodeWidget
        
       t@@ -656,7 +656,7 @@ class ElectrumWindow(QMainWindow):
                self.payto_e.setCompleter(completer)
                completer.setModel(self.completions)
        
       -        self.message_e = QLineEdit()
       +        self.message_e = MyLineEdit()
                self.message_help = HelpButton(_('Description of the transaction (not mandatory).') + '\n\n' + _('The description is not sent to the recipient of the funds. It is stored in your wallet file, and displayed in the \'History\' tab.'))
                grid.addWidget(QLabel(_('Description')), 2, 0)
                grid.addWidget(self.message_e, 2, 1, 1, 3)
       t@@ -882,11 +882,9 @@ class ElectrumWindow(QMainWindow):
        
        
            def prepare_for_payment_request(self):
       -        style = "QWidget { background-color:none;border:none;}"
                self.tabs.setCurrentIndex(1)
                for e in [self.payto_e, self.amount_e, self.message_e]:
       -            e.setReadOnly(True)
       -            e.setStyleSheet(style)
       +            e.setFrozen(True)
                for h in [self.payto_help, self.amount_help, self.message_help]:
                    h.hide()
                self.payto_e.setText(_("please wait..."))
       t@@ -924,27 +922,14 @@ class ElectrumWindow(QMainWindow):
                self.payto_sig.setVisible(False)
                for e in [self.payto_e, self.message_e, self.amount_e, self.fee_e]:
                    e.setText('')
       -            self.set_frozen(e,False)
       -            e.setStyleSheet("")
       +            e.setFrozen(False)
       +
                for h in [self.payto_help, self.amount_help, self.message_help]:
                    h.show()
        
                self.set_pay_from([])
                self.update_status()
        
       -    def set_frozen(self,entry,frozen):
       -        if frozen:
       -            entry.setReadOnly(True)
       -            entry.setFrame(False)
       -            palette = QPalette()
       -            palette.setColor(entry.backgroundRole(), QColor('lightgray'))
       -            entry.setPalette(palette)
       -        else:
       -            entry.setReadOnly(False)
       -            entry.setFrame(True)
       -            palette = QPalette()
       -            palette.setColor(entry.backgroundRole(), QColor('white'))
       -            entry.setPalette(palette)
        
        
            def set_addrs_frozen(self,addrs,freeze):
   DIR diff --git a/gui/qt/paytoedit.py b/gui/qt/paytoedit.py
       t@@ -26,6 +26,9 @@ from electrum import bitcoin
        RE_ADDRESS = '[1-9A-HJ-NP-Za-km-z]{26,}'
        RE_ALIAS = '(.*?)\s*\<([1-9A-HJ-NP-Za-km-z]{26,})\>'
        
       +frozen_style = "QWidget { background-color:none; border:none;}"
       +normal_style = "QTextEdit { }"
       +
        class PayToEdit(QTextEdit):
        
            def __init__(self, amount_edit):
       t@@ -36,23 +39,18 @@ class PayToEdit(QTextEdit):
                self.heightMax = 150
                self.setMinimumHeight(27)
                self.setMaximumHeight(27)
       -        #self.setStyleSheet("QTextEdit { border-style:solid; border-width: 1px;}")
                self.c = None
        
        
            def lock_amount(self):
       -        e = self.amount_edit
       -        e.setReadOnly(True)
       -        e.setFrame(False)
       +        self.amount_edit.setFrozen(True)
        
            def unlock_amount(self):
       -        e = self.amount_edit
       -        e.setReadOnly(False)
       -        e.setFrame(True)
       -
       +        self.amount_edit.setFrozen(False)
        
       -    def setFrame(self, b):
       -        pass
       +    def setFrozen(self, b):
       +        self.setReadOnly(b)
       +        self.setStyleSheet(frozen_style if b else normal_style)
        
        
            def parse_address_and_amount(self, line):
       t@@ -88,7 +86,6 @@ class PayToEdit(QTextEdit):
                        self.payto_address = None
        
                    if self.payto_address:
       -                print "unlock", self.payto_address
                        self.unlock_amount()
                        return