Browse Source

change remove tabs for verify/sign

verify message is in the drop down menus and sign is in the receive tab
drop down for each address
283
Michael Wozniak 11 years ago
parent
commit
b16035c5de
  1. 75
      gui/qt/main_window.py

75
gui/qt/main_window.py

@ -1721,16 +1721,26 @@ class ElectrumWindow(QMainWindow):
except Exception as e:
self.show_message(str(e))
def sign_message(self,sign, address):
def do_verify(self, address, message, signature):
message = unicode(message.toPlainText())
message = message.encode('utf-8')
if bitcoin.verify_message(address.text(), str(signature.toPlainText()), message):
self.show_message(_("Signature verified"))
else:
self.show_message(_("Error: wrong signature"))
def sign_message(self, sign, address):
if sign and not address: return
d = QDialog(self)
d.setModal(1)
d.setWindowTitle(_('Sign Message'))
if sign:
d.setWindowTitle(_('Sign Message'))
elif not sign:
d.setWindowTitle(_('Verify Message'))
d.setMinimumSize(410, 290)
tab_widget = QTabWidget()
tab = QWidget()
layout = QGridLayout(tab)
layout = QGridLayout(d)
sign_address = QLineEdit()
@ -1748,62 +1758,23 @@ class ElectrumWindow(QMainWindow):
layout.addWidget(sign_signature, 3, 1)
layout.setRowStretch(3,1)
hbox = QHBoxLayout()
b = QPushButton(_("Sign"))
if sign:
b = QPushButton(_("Sign"))
elif not sign:
b = QPushButton(_("Verify"))
hbox.addWidget(b)
b.clicked.connect(lambda: self.do_sign(sign_address, sign_message, sign_signature))
if sign:
b.clicked.connect(lambda: self.do_sign(sign_address, sign_message, sign_signature))
elif not sign:
b.clicked.connect(lambda: self.do_verify(sign_address, sign_message, sign_signature))
b = QPushButton(_("Close"))
b.clicked.connect(d.accept)
hbox.addWidget(b)
layout.addLayout(hbox, 4, 1)
tab_widget.addTab(tab, _("Sign"))
tab = QWidget()
layout = QGridLayout(tab)
verify_address = QLineEdit()
layout.addWidget(QLabel(_('Address')), 1, 0)
layout.addWidget(verify_address, 1, 1)
verify_message = QTextEdit()
layout.addWidget(QLabel(_('Message')), 2, 0)
layout.addWidget(verify_message, 2, 1)
layout.setRowStretch(2,3)
verify_signature = QTextEdit()
layout.addWidget(QLabel(_('Signature')), 3, 0)
layout.addWidget(verify_signature, 3, 1)
layout.setRowStretch(3,1)
def do_verify():
message = unicode(verify_message.toPlainText())
message = message.encode('utf-8')
if bitcoin.verify_message(verify_address.text(), str(verify_signature.toPlainText()), message):
self.show_message(_("Signature verified"))
else:
self.show_message(_("Error: wrong signature"))
hbox = QHBoxLayout()
b = QPushButton(_("Verify"))
b.clicked.connect(do_verify)
hbox.addWidget(b)
b = QPushButton(_("Close"))
b.clicked.connect(d.accept)
hbox.addWidget(b)
layout.addLayout(hbox, 4, 1)
tab_widget.addTab(tab, _("Verify"))
if not sign:
tab_widget.setCurrentIndex(1)
vbox = QVBoxLayout()
vbox.addWidget(tab_widget)
d.setLayout(vbox)
d.exec_()
def question(self, msg):
return QMessageBox.question(self, _('Message'), msg, QMessageBox.Yes | QMessageBox.No, QMessageBox.No) == QMessageBox.Yes

Loading…
Cancel
Save