electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit 18bcf5b206664e3a9d2392ba54c349423eb9456b
parent c5047d4168c6cbd498f7bf557447251ac787ac56
Author: Maran <maran.hidskes@gmail.com>
Date:   Sun, 10 Mar 2013 12:52:39 +0100

Add 'create transaction' from deseeded wallet to Lite gui

Diffstat:
Mgui/gui_lite.py | 49+++++++++++++++++++++++++++++++------------------
1 file changed, 31 insertions(+), 18 deletions(-)

diff --git a/gui/gui_lite.py b/gui/gui_lite.py @@ -17,6 +17,7 @@ from electrum.bitcoin import is_valid from i18n import _ import decimal import exchange_rate +import json import os.path import random import re @@ -293,7 +294,11 @@ class MiniWindow(QDialog): self.amount_input.setAttribute(Qt.WA_MacShowFocusRect, 0) self.amount_input.textChanged.connect(self.amount_input_changed) - self.send_button = QPushButton(_("&Send")) + if self.actuator.wallet.seed: + self.send_button = QPushButton(_("&Send")) + else: + self.send_button = QPushButton(_("&Create")) + self.send_button.setObjectName("send_button") self.send_button.setDisabled(True); self.send_button.clicked.connect(self.send) @@ -856,24 +861,32 @@ class MiniActuator: QMessageBox.warning(parent_window, _('Error'), str(error), _('OK')) return False - h = self.wallet.send_tx(tx) - - self.waiting_dialog(lambda: False if self.wallet.tx_event.isSet() else _("Sending transaction, please wait...")) + if tx.is_complete: + h = self.wallet.send_tx(tx) + + self.waiting_dialog(lambda: False if self.wallet.tx_event.isSet() else _("Sending transaction, please wait...")) + + status, message = self.wallet.receive_tx(h) + + if not status: + import tempfile + dumpf = tempfile.NamedTemporaryFile(delete=False) + dumpf.write(tx) + dumpf.close() + print "Dumped error tx to", dumpf.name + QMessageBox.warning(parent_window, _('Error'), message, _('OK')) + return False - status, message = self.wallet.receive_tx(h) - - if not status: - import tempfile - dumpf = tempfile.NamedTemporaryFile(delete=False) - dumpf.write(tx) - dumpf.close() - print "Dumped error tx to", dumpf.name - QMessageBox.warning(parent_window, _('Error'), message, _('OK')) - return False - - TransactionWindow(message, self) -# QMessageBox.information(parent_window, '', -# _('Your transaction has been sent.') + '\n' + message, _('OK')) + TransactionWindow(message, self) + else: + filename = 'unsigned_tx_%s' % (time.mktime(time.gmtime())) + try: + fileName = QFileDialog.getSaveFileName(QWidget(), _("Select a transaction filename"), os.path.expanduser('~/%s' % (filename))) + with open(fileName,'w') as f: + f.write(json.dumps(tx.as_dict(),indent=4) + '\n') + QMessageBox.information(QWidget(), _('Unsigned transaction created'), _("Unsigned transaction was saved to file:") + " " +fileName, _('OK')) + except BaseException as e: + QMessageBox.warning(QWidget(), _('Error'), _('Could not write transaction to file: %s' % e), _('OK')) return True def fetch_destination(self, address):