1
0

sweep privkeys in gui

This commit is contained in:
ThomasV
2014-05-01 17:35:01 +02:00
parent b21cfc2746
commit 46c0dda3b9
3 changed files with 54 additions and 13 deletions

View File

@@ -293,6 +293,7 @@ class ElectrumWindow(QMainWindow):
labels_menu.addAction(_("&Export"), self.do_export_labels)
self.private_keys_menu = wallet_menu.addMenu(_("&Private keys"))
self.private_keys_menu.addAction(_("&Sweep"), self.sweep_key_dialog)
self.private_keys_menu.addAction(_("&Import"), self.do_import_privkey)
self.private_keys_menu.addAction(_("&Export"), self.export_privkeys_dialog)
@@ -2044,6 +2045,32 @@ class ElectrumWindow(QMainWindow):
QMessageBox.critical(None,_("Unable to create csv"), export_error_label + "\n" + str(reason))
def sweep_key_dialog(self):
d = QDialog(self)
d.setWindowTitle(_('Sweep private keys'))
vbox = QVBoxLayout(d)
vbox.addWidget(QLabel(_("Enter private keys")))
keys_e = QTextEdit()
keys_e.setTabChangesFocus(True)
vbox.addWidget(keys_e)
vbox.addStretch(1)
hbox, button = ok_cancel_buttons2(d, _('Sweep'))
vbox.addLayout(hbox)
button.setEnabled(False)
keys_e.textChanged.connect(lambda: button.setEnabled(Wallet.is_private_key(str(keys_e.toPlainText()).strip())))
if not d.exec_():
return
text = str(keys_e.toPlainText()).strip()
privkeys = text.split()
to_address = self.wallet.addresses()[0]
fee = self.wallet.fee
tx = Transaction.sweep(privkeys, self.network, to_address, fee)
self.show_transaction(tx)
@protected
def do_import_privkey(self, password):