diff --git a/gui/qt/__init__.py b/gui/qt/__init__.py index 025b7e1b2..03f221990 100644 --- a/gui/qt/__init__.py +++ b/gui/qt/__init__.py @@ -160,7 +160,7 @@ class ElectrumGui: import installwizard wizard = installwizard.InstallWizard(self.config, self.network, storage) wallet = wizard.run(action) - if not wallet: + if not wallet: return else: wallet.start_threads(self.network) @@ -203,7 +203,7 @@ class ElectrumGui: s.start() self.windows.append(w) - if url: + if url: self.set_url(url) w.app = self.app @@ -221,5 +221,3 @@ class ElectrumGui: self.app.sendEvent(self.app.clipboard(), event) w.close_wallet() - - diff --git a/gui/qt/amountedit.py b/gui/qt/amountedit.py index 368d41d90..f9e939b02 100644 --- a/gui/qt/amountedit.py +++ b/gui/qt/amountedit.py @@ -96,4 +96,3 @@ class BTCAmountEdit(AmountEdit): p = pow(10, self.decimal_point()) x = amount / Decimal(p) self.setText(str(x)) - diff --git a/gui/qt/console.py b/gui/qt/console.py index e7d05e9bb..f198550fb 100644 --- a/gui/qt/console.py +++ b/gui/qt/console.py @@ -35,7 +35,7 @@ class Console(QtGui.QPlainTextEdit): def set_json(self, b): self.is_json = b - + def run_script(self, filename): with open(filename) as f: script = f.read() @@ -106,7 +106,7 @@ class Console(QtGui.QPlainTextEdit): self.moveCursor(QtGui.QTextCursor.End) self.completions_visible = True - + def hide_completions(self): if not self.completions_visible: @@ -146,7 +146,7 @@ class Console(QtGui.QPlainTextEdit): def addToHistory(self, command): if command.find("importprivkey") > -1: return - + if command and (not self.history or self.history[-1] != command): self.history.append(command) self.history_index = len(self.history) @@ -177,7 +177,7 @@ class Console(QtGui.QPlainTextEdit): def register_command(self, c, func): methods = { c: func} self.updateNamespace(methods) - + def runCommand(self): command = self.getCommand() @@ -232,7 +232,7 @@ class Console(QtGui.QPlainTextEdit): sys.stdout = tmp_stdout self.newPrompt() self.set_json(False) - + def keyPressEvent(self, event): if event.key() == QtCore.Qt.Key_Tab: @@ -280,7 +280,7 @@ class Console(QtGui.QPlainTextEdit): obj = self.namespace.get(path[0]) prefix = path[0] + '.' ns = dir(obj) - + completions = [] for x in ns: @@ -289,7 +289,7 @@ class Console(QtGui.QPlainTextEdit): if xx.startswith(lastword): completions.append(xx) completions.sort() - + if not completions: self.hide_completions() elif len(completions) == 1: diff --git a/gui/qt/history_widget.py b/gui/qt/history_widget.py index c218c3a41..a08f8d1c7 100644 --- a/gui/qt/history_widget.py +++ b/gui/qt/history_widget.py @@ -14,13 +14,12 @@ class HistoryWidget(QTreeWidget): def append(self, address, amount, date): if address is None: - address = _("Unknown") - if amount is None: - amount = _("Unknown") + address = _("Unknown") + if amount is None: + amount = _("Unknown") if date is None: - date = _("Unknown") + date = _("Unknown") item = QTreeWidgetItem([amount, address, date]) if float(amount) < 0: - item.setForeground(0, QBrush(QColor("#BC1E1E"))) + item.setForeground(0, QBrush(QColor("#BC1E1E"))) self.insertTopLevelItem(0, item) - diff --git a/gui/qt/installwizard.py b/gui/qt/installwizard.py index 8c6cdc075..34eeb367d 100644 --- a/gui/qt/installwizard.py +++ b/gui/qt/installwizard.py @@ -97,7 +97,7 @@ class InstallWizard(QDialog): if not self.exec_(): return None, None - + action = 'create' if b1.isChecked() else 'restore' wallet_type = self.wallet_types[group2.checkedId()][0] return action, wallet_type @@ -184,7 +184,7 @@ class InstallWizard(QDialog): self.set_layout(vbox) if not self.exec_(): - return + return return map(lambda e: self.get_seed_text(e), entries) @@ -211,7 +211,7 @@ class InstallWizard(QDialog): # skip this if config already exists if self.config.get('server') is not None: return - + grid = QGridLayout() grid.setSpacing(5) @@ -245,14 +245,14 @@ class InstallWizard(QDialog): self.set_layout(vbox) if not self.exec_(): return - + if b2.isChecked(): return NetworkDialog(self.network, self.config, None).do_exec() else: self.config.set_key('auto_cycle', True, True) return - + def show_message(self, msg, icon=None): vbox = QVBoxLayout() self.set_layout(vbox) @@ -263,7 +263,7 @@ class InstallWizard(QDialog): vbox.addWidget(QLabel(msg)) vbox.addStretch(1) vbox.addLayout(close_button(self, _('Next'))) - if not self.exec_(): + if not self.exec_(): return None @@ -302,7 +302,7 @@ class InstallWizard(QDialog): vbox.addWidget(label) vbox.addStretch(1) vbox.addLayout(ok_cancel_buttons(self, yes_label, no_label)) - if not self.exec_(): + if not self.exec_(): return None return True @@ -400,7 +400,7 @@ class InstallWizard(QDialog): else: f = run_hook('get_wizard_action', self, wallet, action) - if not f: + if not f: raise BaseException('unknown wizard action', action) r = f(wallet, self) if not r: @@ -461,7 +461,7 @@ class InstallWizard(QDialog): elif t in ['2of2']: r = self.multi_seed_dialog(1) - if not r: + if not r: return text1, text2 = r wallet = Wallet_2of2(self.storage) @@ -491,7 +491,7 @@ class InstallWizard(QDialog): elif t in ['2of3']: r = self.multi_seed_dialog(2) - if not r: + if not r: return text1, text2, text3 = r wallet = Wallet_2of3(self.storage) @@ -536,5 +536,5 @@ class InstallWizard(QDialog): # create first keys offline self.waiting_dialog(wallet.synchronize) - + return wallet diff --git a/gui/qt/lite_window.py b/gui/qt/lite_window.py index 402d67865..03359feb4 100644 --- a/gui/qt/lite_window.py +++ b/gui/qt/lite_window.py @@ -88,7 +88,7 @@ class TransactionWindow(QDialog): label = unicode(self.label_edit.text()) self.parent.wallet.labels[self.tx_id] = label - super(TransactionWindow, self).accept() + super(TransactionWindow, self).accept() def __init__(self, transaction_id, parent): super(TransactionWindow, self).__init__() @@ -210,7 +210,7 @@ class MiniWindow(QDialog): self.receiving = receiving_widget.ReceivingWidget(self) self.receiving.setObjectName("receiving") - # Add to the right side + # Add to the right side self.receiving_box = QGroupBox(_("Select a receiving address")) extra_layout = QGridLayout() @@ -250,7 +250,7 @@ class MiniWindow(QDialog): self.show_history(show_hist) show_hist = self.config.get("gui_show_receiving",False) self.toggle_receiving_layout(show_hist) - + self.setWindowIcon(QIcon(":icons/electrum.png")) self.setWindowTitle("Electrum") self.setWindowFlags(Qt.Window|Qt.MSWindowsFixedSizeDialogHint) @@ -384,7 +384,7 @@ class MiniWindow(QDialog): self.balance_label.show_balance() def create_quote_text(self, btc_balance): - """Return a string copy of the amount fiat currency the + """Return a string copy of the amount fiat currency the user has in bitcoins.""" from electrum.plugins import run_hook r = {} @@ -443,7 +443,7 @@ class MiniWindow(QDialog): def update_completions(self, completions): self.address_completions.setStringList(completions) - + def update_history(self, tx_history): @@ -499,7 +499,7 @@ class BalanceLabel(QLabel): position = event.globalPos() menu = self.parent.context_menu() menu.exec_(position) - + def set_balance_text(self, amount, unit, quote_text): """Set the amount of bitcoins in the gui.""" @@ -560,7 +560,7 @@ class PasswordDialog(QDialog): main_layout.addLayout(grid) main_layout.addLayout(ok_cancel_buttons(self)) - self.setLayout(main_layout) + self.setLayout(main_layout) def run(self): if not self.exec_(): @@ -599,10 +599,10 @@ class ReceivePopup(QDialog): self.show() class MiniActuator: - """Initialize the definitions relating to themes and + """Initialize the definitions relating to themes and sending/receiving bitcoins.""" - - + + def __init__(self, main_window): """Retrieve the gui theme used in previous session.""" self.g = main_window @@ -624,7 +624,7 @@ class MiniActuator: def theme_names(self): """Sort themes.""" return sorted(self.themes.keys()) - + def selected_theme(self): """Select theme.""" return self.theme_name @@ -634,14 +634,14 @@ class MiniActuator: self.theme_name = theme_name self.g.config.set_key('litegui_theme',theme_name) self.load_theme() - + def set_configured_exchange(self, set_exchange): use_exchange = self.g.config.get('use_exchange') if use_exchange is not None: set_exchange(use_exchange) - + def set_configured_currency(self, set_quote_currency): - """Set the inital fiat currency conversion country (USD/EUR/GBP) in + """Set the inital fiat currency conversion country (USD/EUR/GBP) in the GUI to what it was set to in the wallet.""" currency = self.g.config.get('currency') # currency can be none when Electrum is used for the first @@ -694,7 +694,7 @@ class MiniActuator: dest_address = self.fetch_destination(address) if dest_address is None or not is_valid(dest_address): - QMessageBox.warning(parent_window, _('Error'), + QMessageBox.warning(parent_window, _('Error'), _('Invalid Bitcoin Address') + ':\n' + address, _('OK')) return False @@ -726,7 +726,7 @@ class MiniActuator: h = self.g.wallet.send_tx(tx) self.waiting_dialog(lambda: False if self.g.wallet.tx_event.isSet() else _("Sending transaction, please wait...")) - + status, message = self.g.wallet.receive_tx(h, tx) if not status: @@ -737,7 +737,7 @@ class MiniActuator: print "Dumped error tx to", dumpf.name QMessageBox.warning(parent_window, _('Error'), message, _('OK')) return False - + TransactionWindow(message, self) else: filename = 'unsigned_tx_%s' % (time.mktime(time.gmtime())) @@ -760,10 +760,10 @@ class MiniActuator: # label or alias, with address in brackets match2 = re.match("(.*?)\s*\<([1-9A-HJ-NP-Za-km-z]{26,})\>", recipient) - + if match1: dest_address = \ - self.g.wallet.get_alias(recipient, True, + self.g.wallet.get_alias(recipient, True, self.show_message, self.question) return dest_address elif match2: @@ -772,7 +772,7 @@ class MiniActuator: return recipient - + class MiniDriver(QObject): @@ -872,4 +872,3 @@ if __name__ == "__main__": app.setStyleSheet(style_file.read()) mini = MiniWindow() sys.exit(app.exec_()) - diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py index 9be2a7ad7..118a07127 100644 --- a/gui/qt/main_window.py +++ b/gui/qt/main_window.py @@ -762,7 +762,7 @@ class ElectrumWindow(QMainWindow): if not message and not amount: QMessageBox.warning(self, _('Error'), _('No message or amount'), _('OK')) return - self.receive_requests = self.wallet.storage.get('receive_requests',{}) + self.receive_requests = self.wallet.storage.get('receive_requests',{}) self.receive_requests[addr] = (amount, message) self.wallet.storage.put('receive_requests', self.receive_requests) self.update_receive_tab() @@ -784,7 +784,7 @@ class ElectrumWindow(QMainWindow): self.receive_amount_e.setAmount(None) def clear_receive_tab(self): - self.receive_requests = self.wallet.storage.get('receive_requests',{}) + self.receive_requests = self.wallet.storage.get('receive_requests',{}) domain = self.wallet.get_account_addresses(self.current_account, include_change=False) for addr in domain: if not self.wallet.history.get(addr) and addr not in self.receive_requests.keys(): @@ -818,7 +818,7 @@ class ElectrumWindow(QMainWindow): self.receive_address_e.setText(addr) def update_receive_tab(self): - self.receive_requests = self.wallet.storage.get('receive_requests',{}) + self.receive_requests = self.wallet.storage.get('receive_requests',{}) b = len(self.receive_requests) > 0 self.receive_list.setVisible(b) self.receive_requests_label.setVisible(b) @@ -1566,7 +1566,7 @@ class ElectrumWindow(QMainWindow): self.payment_request_ok() else: self.payment_request_error() - + def create_invoice_menu(self, position): item = self.invoices_list.itemAt(position) @@ -1616,11 +1616,11 @@ class ElectrumWindow(QMainWindow): name = _("Receiving") if not is_change else _("Change") seq_item = QTreeWidgetItem( [ name, '', '', '', ''] ) account_item.addChild(seq_item) - if not is_change: + if not is_change: seq_item.setExpanded(True) else: seq_item = account_item - + used_item = QTreeWidgetItem( [ _("Used"), '', '', '', ''] ) used_flag = False @@ -1874,7 +1874,7 @@ class ElectrumWindow(QMainWindow): def show_qrcode(self, data, title = _("QR code")): - if not data: + if not data: return d = QRDialog(data, self, title) d.exec_() @@ -2267,8 +2267,8 @@ class ElectrumWindow(QMainWindow): d.setMinimumSize(850, 300) vbox = QVBoxLayout(d) - msg = "%s\n%s\n%s" % (_("WARNING: ALL your private keys are secret."), - _("Exposing a single private key can compromise your entire wallet!"), + msg = "%s\n%s\n%s" % (_("WARNING: ALL your private keys are secret."), + _("Exposing a single private key can compromise your entire wallet!"), _("In particular, DO NOT use 'redeem private key' services proposed by third parties.")) vbox.addWidget(QLabel(msg)) @@ -2291,7 +2291,7 @@ class ElectrumWindow(QMainWindow): def privkeys_thread(): for addr in addresses: time.sleep(0.1) - if done: + if done: break private_keys[addr] = "\n".join(self.wallet.get_private_key(addr, password)) d.emit(SIGNAL('computing_privkeys')) @@ -2641,7 +2641,7 @@ class ElectrumWindow(QMainWindow): on_video_device = lambda x: self.config.set_key("video_device", str(qr_combo.itemData(x).toString()), True) qr_combo.currentIndexChanged.connect(on_video_device) widgets.append((qr_label, qr_combo, qr_help)) - + usechange_cb = QCheckBox(_('Use change addresses')) usechange_cb.setChecked(self.wallet.use_change) usechange_help = HelpButton(_('Using change addresses makes it more difficult for other people to track your transactions.')) @@ -2671,7 +2671,7 @@ class ElectrumWindow(QMainWindow): for a,b,c in widgets: i = grid.rowCount() - if b: + if b: grid.addWidget(a, i, 0) grid.addWidget(b, i, 1) else: diff --git a/gui/qt/network_dialog.py b/gui/qt/network_dialog.py index 436c6e2e8..b777db29c 100644 --- a/gui/qt/network_dialog.py +++ b/gui/qt/network_dialog.py @@ -56,7 +56,7 @@ class NetworkDialog(QDialog): else: status = _("Not connected") if network.is_connected(): - status += "\n" + _("Server") + ": %s"%(host) + status += "\n" + _("Server") + ": %s"%(host) else: status += "\n" + _("Disconnected from server") else: @@ -117,14 +117,14 @@ class NetworkDialog(QDialog): self.change_server(host, protocol) self.set_protocol(protocol) - self.servers_list_widget.connect(self.servers_list_widget, - SIGNAL('currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*)'), + self.servers_list_widget.connect(self.servers_list_widget, + SIGNAL('currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*)'), lambda x,y: self.server_changed(x)) grid.addWidget(self.servers_list_widget, 1, 1, 1, 3) if not config.is_modifiable('server'): for w in [self.server_host, self.server_port, self.server_protocol, self.servers_list_widget]: w.setEnabled(False) - + def enable_set_server(): enabled = not self.autocycle_cb.isChecked() self.server_host.setEnabled(enabled) @@ -167,7 +167,7 @@ class NetworkDialog(QDialog): # buttons vbox.addLayout(ok_cancel_buttons(self)) - self.setLayout(vbox) + self.setLayout(vbox) def init_servers_list(self): @@ -182,7 +182,7 @@ class NetworkDialog(QDialog): if protocol != self.protocol: self.protocol = protocol self.init_servers_list() - + def change_protocol(self, index): p = protocol_letters[index] host = unicode(self.server_host.text()) @@ -195,7 +195,7 @@ class NetworkDialog(QDialog): self.set_protocol(p) def server_changed(self, x): - if x: + if x: self.change_server(str(x.text(0)), self.protocol) def change_server(self, host, protocol): @@ -204,7 +204,7 @@ class NetworkDialog(QDialog): if protocol: port = pp.get(protocol) if not port: protocol = None - + if not protocol: if 's' in pp.keys(): protocol = 's' @@ -212,7 +212,7 @@ class NetworkDialog(QDialog): else: protocol = pp.keys()[0] port = pp.get(protocol) - + self.server_host.setText( host ) self.server_port.setText( port ) self.server_protocol.setCurrentIndex(protocol_letters.index(protocol)) @@ -237,8 +237,8 @@ class NetworkDialog(QDialog): protocol = protocol_letters[self.server_protocol.currentIndex()] if self.proxy_mode.currentText() != 'NONE': - proxy = { 'mode':str(self.proxy_mode.currentText()).lower(), - 'host':str(self.proxy_host.text()), + proxy = { 'mode':str(self.proxy_mode.currentText()).lower(), + 'host':str(self.proxy_host.text()), 'port':str(self.proxy_port.text()) } else: proxy = None diff --git a/gui/qt/password_dialog.py b/gui/qt/password_dialog.py index dac76d91a..d7010a187 100644 --- a/gui/qt/password_dialog.py +++ b/gui/qt/password_dialog.py @@ -33,7 +33,7 @@ def make_password_dialog(self, wallet, msg, new_pass=True): self.new_pw.setEchoMode(2) self.conf_pw = QLineEdit() self.conf_pw.setEchoMode(2) - + vbox = QVBoxLayout() label = QLabel(msg) label.setWordWrap(True) @@ -56,7 +56,7 @@ def make_password_dialog(self, wallet, msg, new_pass=True): grid.setSpacing(8) grid.setColumnMinimumWidth(0, 250) grid.setColumnStretch(1,1) - + if wallet and wallet.use_encryption: grid.addWidget(QLabel(_('Password')), 0, 0) grid.addWidget(self.pw, 0, 1) @@ -79,7 +79,7 @@ def make_password_dialog(self, wallet, msg, new_pass=True): def run_password_dialog(self, wallet, parent): - + if wallet and wallet.is_watching_only(): QMessageBox.information(parent, _('Error'), _('This is a watching-only wallet'), _('OK')) return False, None, None @@ -173,7 +173,3 @@ class PasswordDialog(QDialog): QMessageBox.information(self.parent, _('Success'), _('Password was updated successfully'), _('OK')) else: QMessageBox.information(self.parent, _('Success'), _('This wallet is not encrypted'), _('OK')) - - - - diff --git a/gui/qt/paytoedit.py b/gui/qt/paytoedit.py index 4fd961755..472bad175 100644 --- a/gui/qt/paytoedit.py +++ b/gui/qt/paytoedit.py @@ -122,7 +122,7 @@ class PayToEdit(QRTextEdit): except: self.errors.append((i, line.strip())) continue - + outputs.append((type, to_address, amount)) total += amount @@ -189,7 +189,7 @@ class PayToEdit(QRTextEdit): tc.movePosition(QTextCursor.EndOfWord) tc.insertText(completion.right(extra)) self.setTextCursor(tc) - + def textUnderCursor(self): tc = self.textCursor() @@ -235,4 +235,3 @@ class PayToEdit(QRTextEdit): cr = self.cursorRect() cr.setWidth(self.c.popup().sizeHintForColumn(0) + self.c.popup().verticalScrollBar().sizeHint().width()) self.c.complete(cr) - diff --git a/gui/qt/qrcodewidget.py b/gui/qt/qrcodewidget.py index 6d1330608..cc47b0535 100644 --- a/gui/qt/qrcodewidget.py +++ b/gui/qt/qrcodewidget.py @@ -36,7 +36,7 @@ class QRCodeWidget(QWidget): self.qr = None self.update() - + def paintEvent(self, e): if not self.data: @@ -83,7 +83,7 @@ class QRCodeWidget(QWidget): qp.setPen(white) qp.drawRect(left+c*boxsize, top+r*boxsize, boxsize, boxsize) qp.end() - + class QRDialog(QDialog): @@ -132,4 +132,3 @@ class QRDialog(QDialog): vbox.addLayout(hbox) d.setLayout(vbox) - diff --git a/gui/qt/qrwindow.py b/gui/qt/qrwindow.py index cff205304..d081e3d2e 100644 --- a/gui/qt/qrwindow.py +++ b/gui/qt/qrwindow.py @@ -51,7 +51,7 @@ class QR_Window(QWidget): self.setFocusPolicy(QtCore.Qt.NoFocus) main_box = QHBoxLayout() - + self.qrw = QRCodeWidget() main_box.addWidget(self.qrw, 1) @@ -84,7 +84,3 @@ class QR_Window(QWidget): label_text = "%s" % message if message else "" self.label_label.setText(label_text) self.qrw.setData(url) - - - - diff --git a/gui/qt/receiving_widget.py b/gui/qt/receiving_widget.py index c35fc51af..54b4b5152 100644 --- a/gui/qt/receiving_widget.py +++ b/gui/qt/receiving_widget.py @@ -22,7 +22,7 @@ class ReceivingWidget(QTreeWidget): self.editing = False def update_label(self, item, column): - if self.editing: + if self.editing: return else: address = str(item.text(0)) @@ -32,7 +32,7 @@ class ReceivingWidget(QTreeWidget): def copy_address(self): address = self.currentItem().text(0) qApp.clipboard().setText(address) - + def update_list(self): return diff --git a/gui/qt/seed_dialog.py b/gui/qt/seed_dialog.py index b99ae59d5..4483d1b61 100644 --- a/gui/qt/seed_dialog.py +++ b/gui/qt/seed_dialog.py @@ -40,18 +40,18 @@ class SeedDialog(QDialog): def icon_filename(sid): if sid == 'cold': - return ":icons/cold_seed.png" + return ":icons/cold_seed.png" elif sid == 'hot': - return ":icons/hot_seed.png" + return ":icons/hot_seed.png" else: - return ":icons/seed.png" - + return ":icons/seed.png" + def show_seed_box(seed, sid=None): - save_msg = _("Please save these %d words on paper (order is important).")%len(seed.split()) + " " + save_msg = _("Please save these %d words on paper (order is important).")%len(seed.split()) + " " qr_msg = _("Your seed is also displayed as QR code, in case you want to transfer it to a mobile phone.") + "
" warning_msg = ""+_("WARNING")+": " + _("Never disclose your seed. Never type it on a website.") + "
"
@@ -60,12 +60,12 @@ def show_seed_box(seed, sid=None):
msg2 = save_msg + " " \
+ _("This seed will allow you to recover your wallet in case of computer failure.") + "
" \
+ warning_msg
-
+
elif sid == 'cold':
msg = _("Your cold storage seed is")
msg2 = save_msg + " " \
+ _("This seed will be permanently deleted from your wallet file. Make sure you have saved it before you press 'next'") + " " \
-
+
elif sid == 'hot':
msg = _("Your hot seed is")
msg2 = save_msg + " " \
@@ -92,7 +92,7 @@ def show_seed_box(seed, sid=None):
vbox.addLayout(grid)
vbox.addWidget(label2)
vbox.addStretch(1)
-
+
return vbox
diff --git a/gui/qt/transaction_dialog.py b/gui/qt/transaction_dialog.py
index c3179f561..bb941f046 100644
--- a/gui/qt/transaction_dialog.py
+++ b/gui/qt/transaction_dialog.py
@@ -45,7 +45,7 @@ class TxDialog(QDialog):
tx_dict = tx.as_dict()
self.parent = parent
self.wallet = parent.wallet
-
+
QDialog.__init__(self)
self.setMinimumWidth(600)
self.setWindowTitle(_("Transaction"))
@@ -102,7 +102,7 @@ class TxDialog(QDialog):
buttons.insertWidget(1,b)
run_hook('transaction_dialog', self)
-
+
self.update()
@@ -175,9 +175,9 @@ class TxDialog(QDialog):
if not self.wallet.up_to_date:
return
- if is_relevant:
+ if is_relevant:
if is_mine:
- if fee is not None:
+ if fee is not None:
self.amount_label.setText(_("Amount sent:")+' %s'% self.parent.format_amount(v-fee) + ' ' + self.parent.base_unit())
self.fee_label.setText(_("Transaction fee")+': %s'% self.parent.format_amount(fee) + ' ' + self.parent.base_unit())
else:
@@ -219,11 +219,7 @@ class TxDialog(QDialog):
o_text.setMaximumHeight(100)
vbox.addWidget(o_text)
-
+
def show_message(self, msg):
QMessageBox.information(self, _('Message'), msg, _('OK'))
-
-
-
-
diff --git a/gui/qt/util.py b/gui/qt/util.py
index d49edaa7a..73a739ec0 100644
--- a/gui/qt/util.py
+++ b/gui/qt/util.py
@@ -182,7 +182,7 @@ def filename_field(parent, config, defaultname, select_msg):
b2.setText(_("json"))
vbox.addWidget(b1)
vbox.addWidget(b2)
-
+
hbox = QHBoxLayout()
directory = config.get('io_dir', unicode(os.path.expanduser('~')))
diff --git a/gui/qt/version_getter.py b/gui/qt/version_getter.py
index 855f2795c..f60a60919 100644
--- a/gui/qt/version_getter.py
+++ b/gui/qt/version_getter.py
@@ -30,7 +30,7 @@ class VersionGetter(threading.Thread):
def __init__(self, label):
threading.Thread.__init__(self)
self.label = label
-
+
def run(self):
try:
con = httplib.HTTPConnection('electrum.org', 80, timeout=5)
@@ -39,7 +39,7 @@ class VersionGetter(threading.Thread):
except socket.error as msg:
print_error("Could not retrieve version information")
return
-
+
if res.status == 200:
latest_version = res.read()
latest_version = latest_version.replace("\n","")
@@ -88,7 +88,7 @@ class UpdateLabel(QLabel):
self.config.set_key("last_seen_version", "9.9.9", True)
QMessageBox.information(self, _("Preference saved"), _("No more notifications about version updates will be shown."))
self.dialog.done(0)
-
+
def open_website(self):
webbrowser.open("http://electrum.org/download.html")
self.dialog.done(0)
@@ -100,7 +100,7 @@ class UpdateLabel(QLabel):
main_layout = QGridLayout()
main_layout.addWidget(QLabel(_("A new version of Electrum is available:")+" " + self.latest_version), 0,0,1,3)
-
+
ignore_version = QPushButton(_("Ignore this version"))
ignore_version.clicked.connect(self.ignore_this_version)
@@ -117,7 +117,5 @@ class UpdateLabel(QLabel):
dialog.setLayout(main_layout)
self.dialog = dialog
-
- if not dialog.exec_(): return
-
+ if not dialog.exec_(): return
diff --git a/lib/account.py b/lib/account.py
index 69a79ee65..8ad36057b 100644
--- a/lib/account.py
+++ b/lib/account.py
@@ -224,7 +224,7 @@ class OldAccount(Account):
pk = number_to_string( secexp, generator_secp256k1.order() )
compressed = False
return SecretToASecret( pk, compressed )
-
+
def get_private_key(self, sequence, wallet, password):
seed = wallet.get_seed(password)
@@ -417,7 +417,3 @@ class BIP32_Account_2of3(BIP32_Account_2of2):
def get_type(self):
return _('Multisig 2 of 3')
-
-
-
-
diff --git a/lib/blockchain.py b/lib/blockchain.py
index b2468d053..6a66c10da 100644
--- a/lib/blockchain.py
+++ b/lib/blockchain.py
@@ -36,7 +36,7 @@ class Blockchain(threading.Thread):
self.set_local_height()
self.queue = Queue.Queue()
-
+
def height(self):
return self.local_height
@@ -68,7 +68,7 @@ class Blockchain(threading.Thread):
i, header = result
if not header: continue
-
+
height = header.get('block_height')
if height <= self.local_height:
@@ -83,10 +83,10 @@ class Blockchain(threading.Thread):
chain = self.get_chain( i, header )
# skip that server if the result is not consistent
- if not chain:
+ if not chain:
print_error('e')
continue
-
+
# verify the chain
if self.verify_chain( chain ):
print_error("height:", height, i.server)
@@ -101,13 +101,13 @@ class Blockchain(threading.Thread):
self.network.new_blockchain_height(height, i)
-
-
+
+
def verify_chain(self, chain):
first_header = chain[0]
prev_header = self.read_header(first_header.get('block_height') -1)
-
+
for header in chain:
height = header.get('block_height')
@@ -133,7 +133,7 @@ class Blockchain(threading.Thread):
height = index*2016
num = len(data)/80
- if index == 0:
+ if index == 0:
previous_hash = ("0"*64)
else:
prev_header = self.read_header(index*2016-1)
@@ -152,12 +152,12 @@ class Blockchain(threading.Thread):
assert int('0x'+_hash,16) < target
previous_header = header
- previous_hash = _hash
+ previous_hash = _hash
self.save_chunk(index, data)
print_error("validated chunk %d"%height)
-
+
def header_to_string(self, res):
s = int_to_hex(res.get('version'),4) \
@@ -190,7 +190,7 @@ class Blockchain(threading.Thread):
filename = self.path()
if os.path.exists(filename):
return
-
+
try:
import urllib, socket
socket.setdefaulttimeout(30)
@@ -238,7 +238,7 @@ class Blockchain(threading.Thread):
f.close()
if len(h) == 80:
h = self.header_from_string(h)
- return h
+ return h
def get_target(self, index, chain=None):
@@ -254,13 +254,13 @@ class Blockchain(threading.Thread):
for h in chain:
if h.get('block_height') == index*2016-1:
last = h
-
+
nActualTimespan = last.get('timestamp') - first.get('timestamp')
nTargetTimespan = 14*24*60*60
nActualTimespan = max(nActualTimespan, nTargetTimespan/4)
nActualTimespan = min(nActualTimespan, nTargetTimespan*4)
- bits = last.get('bits')
+ bits = last.get('bits')
# convert to bignum
MM = 256*256*256
a = bits%MM
@@ -270,7 +270,7 @@ class Blockchain(threading.Thread):
# new target
new_target = min( max_target, (target * nActualTimespan)/nTargetTimespan )
-
+
# convert it to bits
c = ("%064X"%new_target)[2:]
i = 31
@@ -279,7 +279,7 @@ class Blockchain(threading.Thread):
i -= 1
c = int('0x'+c[0:6],16)
- if c >= 0x800000:
+ if c >= 0x800000:
c /= 256
i += 1
@@ -357,4 +357,3 @@ class Blockchain(threading.Thread):
return False
return True
-
diff --git a/lib/bmp.py b/lib/bmp.py
index 8191c1bd2..e8302ec06 100644
--- a/lib/bmp.py
+++ b/lib/bmp.py
@@ -23,7 +23,7 @@ bmp.py - module for constructing simple BMP graphics files
"""
__version__ = "0.3"
-__about = "bmp module, version %s, written by Paul McGuire, October, 2003, updated by Margus Laak, September, 2009" % __version__
+__about = "bmp module, version %s, written by Paul McGuire, October, 2003, updated by Margus Laak, September, 2009" % __version__
from math import ceil, hypot
@@ -51,7 +51,7 @@ class Color(object):
"""class for specifying colors while drawing BitMap elements"""
__slots__ = [ 'red', 'grn', 'blu' ]
__shade = 32
-
+
def __init__( self, r=0, g=0, b=0 ):
self.red = r
self.grn = g
@@ -65,32 +65,32 @@ class Color(object):
def __str__( self ):
return "R:%d G:%d B:%d" % (self.red, self.grn, self.blu )
-
+
def __hash__( self ):
- return ( ( long(self.blu) ) +
- ( long(self.grn) << 8 ) +
+ return ( ( long(self.blu) ) +
+ ( long(self.grn) << 8 ) +
( long(self.red) << 16 ) )
-
+
def __eq__( self, other ):
return (self is other) or (self.toLong == other.toLong)
def lighten( self ):
- return Color(
- min( self.red + Color.__shade, 255),
- min( self.grn + Color.__shade, 255),
- min( self.blu + Color.__shade, 255)
+ return Color(
+ min( self.red + Color.__shade, 255),
+ min( self.grn + Color.__shade, 255),
+ min( self.blu + Color.__shade, 255)
)
-
+
def darken( self ):
- return Color(
- max( self.red - Color.__shade, 0),
- max( self.grn - Color.__shade, 0),
- max( self.blu - Color.__shade, 0)
+ return Color(
+ max( self.red - Color.__shade, 0),
+ max( self.grn - Color.__shade, 0),
+ max( self.blu - Color.__shade, 0)
)
-
+
def toLong( self ):
return self.__hash__()
-
+
def fromLong( l ):
b = l & 0xff
l = l >> 8
@@ -120,7 +120,7 @@ Color.GRAY = Color( 128, 128, 128 )
class BitMap(object):
"""class for drawing and saving simple Windows bitmap files"""
-
+
LINE_SOLID = 0
LINE_DASHED = 1
LINE_DOTTED = 2
@@ -128,8 +128,8 @@ class BitMap(object):
_DASH_LEN = 12.0
_DOT_LEN = 6.0
_DOT_DASH_LEN = _DOT_LEN + _DASH_LEN
-
- def __init__( self, width, height,
+
+ def __init__( self, width, height,
bkgd = Color.WHITE, frgd = Color.BLACK ):
self.wd = int( ceil(width) )
self.ht = int( ceil(height) )
@@ -143,18 +143,18 @@ class BitMap(object):
tmparray = [ self.bgcolor ] * self.wd
self.bitarray = [ tmparray[:] for i in range( self.ht ) ]
self.currentPen = 1
-
+
def plotPoint( self, x, y ):
if ( 0 <= x < self.wd and 0 <= y < self.ht ):
x = int(x)
y = int(y)
self.bitarray[y][x] = self.currentPen
-
+
def _saveBitMapNoCompression( self ):
line_padding = (4 - (self.wd % 4)) % 4
-
+
# write bitmap header
_bitmap = "BM"
_bitmap += longToString( 54 + self.ht*(self.wd*3 + line_padding) ) # DWORD size in bytes of the file
@@ -183,15 +183,15 @@ class BitMap(object):
return _bitmap
-
-
+
+
def saveFile( self, filename):
_b = self._saveBitMapNoCompression( )
-
+
f = file(filename, 'wb')
f.write(_b)
f.close()
-
+
def save_qrcode(qr, filename):
matrix = qr.get_matrix()
@@ -211,12 +211,11 @@ def save_qrcode(qr, filename):
bitmap.saveFile( filename )
-
-
+
+
if __name__ == "__main__":
-
+
bmp = BitMap( 10, 10 )
bmp.plotPoint( 5, 5 )
bmp.plotPoint( 0, 0 )
bmp.saveFile( "test.bmp" )
-
diff --git a/lib/i18n.py b/lib/i18n.py
index 25104f8e3..a8ae68255 100644
--- a/lib/i18n.py
+++ b/lib/i18n.py
@@ -33,8 +33,8 @@ def _(x):
def set_language(x):
global language
if x: language = gettext.translation('electrum', LOCALE_DIR, fallback = True, languages=[x])
-
-
+
+
languages = {
'':_('Default'),
'pt_PT':_('Portuguese'),
diff --git a/lib/interface.py b/lib/interface.py
index 01f4e5a27..17bdd2d30 100644
--- a/lib/interface.py
+++ b/lib/interface.py
@@ -252,7 +252,7 @@ class TcpInterface(threading.Thread):
os.rename(temporary_path, cert_path)
return s
-
+
def send_request(self, request, queue=None):
_id = request.get('id')
@@ -273,7 +273,7 @@ class TcpInterface(threading.Thread):
def parse_proxy_options(self, s):
if type(s) == type({}): return s # fixme: type should be fixed
- if type(s) != type(""): return None
+ if type(s) != type(""): return None
if s.lower() == 'none': return None
proxy = { "mode":"socks5", "host":"localhost" }
args = s.split(':')
@@ -355,7 +355,7 @@ class HttpInterface(TcpInterface):
def send_request(self, request, queue=None):
import urllib2, json, time, cookielib
print_error( "send_http", messages )
-
+
if self.proxy:
socks.setdefaultproxy(self.proxy_mode, self.proxy["host"], int(self.proxy["port"]) )
socks.wrapmodule(urllib2)
@@ -380,9 +380,9 @@ class HttpInterface(TcpInterface):
data_json = json.dumps(data)
else:
# poll with GET
- data_json = None
+ data_json = None
+
-
headers = {'content-type': 'application/json'}
if self.session_id:
headers['cookie'] = 'SESSION=%s'%self.session_id
@@ -399,17 +399,17 @@ class HttpInterface(TcpInterface):
response = response_stream.read()
self.bytes_received += len(response)
- if response:
+ if response:
response = json.loads( response )
if type(response) is not type([]):
self.process_response(response)
else:
for item in response:
self.process_response(item)
- if response:
+ if response:
self.poll_interval = 1
else:
- if self.poll_interval < 15:
+ if self.poll_interval < 15:
self.poll_interval += 1
#print self.poll_interval, response
self.rtime = time.time() - t1
@@ -454,7 +454,7 @@ class HttpInterface(TcpInterface):
except Exception:
traceback.print_exc(file=sys.stdout)
break
-
+
self.is_connected = False
diff --git a/lib/msqr.py b/lib/msqr.py
index da3c6fdef..f582ec260 100644
--- a/lib/msqr.py
+++ b/lib/msqr.py
@@ -3,14 +3,14 @@
def modular_sqrt(a, p):
""" Find a quadratic residue (mod p) of 'a'. p
must be an odd prime.
-
+
Solve the congruence of the form:
x^2 = a (mod p)
And returns x. Note that p - x is also a root.
-
+
0 is returned is no square root exists for
these a and p.
-
+
The Tonelli-Shanks algorithm is used (except
for some simple cases in which the solution
is known from an identity). This algorithm
@@ -27,7 +27,7 @@ def modular_sqrt(a, p):
return p
elif p % 4 == 3:
return pow(a, (p + 1) / 4, p)
-
+
# Partition p-1 to s * 2^e for an odd s (i.e.
# reduce all the powers of 2 from p-1)
#
@@ -36,20 +36,20 @@ def modular_sqrt(a, p):
while s % 2 == 0:
s /= 2
e += 1
-
+
# Find some 'n' with a legendre symbol n|p = -1.
# Shouldn't take long.
#
n = 2
while legendre_symbol(n, p) != -1:
n += 1
-
+
# Here be dragons!
# Read the paper "Square roots from 1; 24, 51,
# 10 to Dan Shanks" by Ezra Brown for more
# information
#
-
+
# x is a guess of the square root that gets better
# with each iteration.
# b is the "fudge factor" - by how much we're off
@@ -63,7 +63,7 @@ def modular_sqrt(a, p):
b = pow(a, s, p)
g = pow(n, s, p)
r = e
-
+
while True:
t = b
m = 0
@@ -71,22 +71,22 @@ def modular_sqrt(a, p):
if t == 1:
break
t = pow(t, 2, p)
-
+
if m == 0:
return x
-
+
gs = pow(g, 2 ** (r - m - 1), p)
g = (gs * gs) % p
x = (x * gs) % p
b = (b * g) % p
r = m
-
+
def legendre_symbol(a, p):
""" Compute the Legendre symbol a|p using
Euler's criterion. p is a prime, a is
relatively prime to p (if p divides
a, then a|p = 0)
-
+
Returns 1 if a has a square root modulo
p, -1 otherwise.
"""
diff --git a/lib/network.py b/lib/network.py
index ee4830500..c1b88ba9b 100644
--- a/lib/network.py
+++ b/lib/network.py
@@ -46,7 +46,7 @@ def parse_servers(result):
elif re.match("p\d*", v):
pruning_level = v[1:]
if pruning_level == '': pruning_level = '0'
- try:
+ try:
is_recent = float(version)>=float(PROTOCOL_VERSION)
except Exception:
is_recent = False
@@ -65,7 +65,7 @@ def filter_protocol(servers, p):
if p in protocols:
l.append( ':'.join([k, protocols[p], p]) )
return l
-
+
def pick_random_server(p='s'):
return random.choice( filter_protocol(DEFAULT_SERVERS,p) )
@@ -115,7 +115,7 @@ class Network(threading.Thread):
os.mkdir(dir_path)
# address subscriptions and cached results
- self.addresses = {}
+ self.addresses = {}
self.connection_status = 'connecting'
self.requests_queue = Queue.Queue()
@@ -169,10 +169,10 @@ class Network(threading.Thread):
continue
else:
choice_list.append(s)
-
- if not choice_list:
+
+ if not choice_list:
return
-
+
server = random.choice( choice_list )
return server
@@ -187,7 +187,7 @@ class Network(threading.Thread):
def get_servers(self):
if self.irc_servers:
- out = self.irc_servers
+ out = self.irc_servers
else:
out = DEFAULT_SERVERS
for s in self.recent_servers:
@@ -213,7 +213,7 @@ class Network(threading.Thread):
self.interface = self.start_interface(self.default_server)
for i in range(self.num_server):
self.start_random_interface()
-
+
def start(self, response_queue):
self.running = True
self.response_queue = response_queue
@@ -269,7 +269,7 @@ class Network(threading.Thread):
def stop_interface(self):
- self.interface.stop()
+ self.interface.stop()
def set_server(self, server):
@@ -293,7 +293,7 @@ class Network(threading.Thread):
self.switch_to_interface( self.interfaces[server] )
else:
self.interface = self.start_interface(server)
-
+
def add_recent_server(self, i):
# list is ordered
@@ -366,7 +366,7 @@ class Network(threading.Thread):
if method == 'blockchain.address.subscribe':
addr = params[0]
if addr in self.addresses:
- self.response_queue.put({'id':_id, 'result':self.addresses[addr]})
+ self.response_queue.put({'id':_id, 'result':self.addresses[addr]})
return
self.interface.send_request(request)
@@ -393,7 +393,7 @@ class Network(threading.Thread):
self.disconnected_time = time.time()
continue
-
+
if response is not None:
self.process_response(i, response)
continue
@@ -484,5 +484,3 @@ class Network(threading.Thread):
def get_local_height(self):
return self.blockchain.height()
-
-
diff --git a/lib/network_proxy.py b/lib/network_proxy.py
index ab0bead63..3711454bb 100644
--- a/lib/network_proxy.py
+++ b/lib/network_proxy.py
@@ -89,7 +89,7 @@ class NetworkProxy(threading.Thread):
print_error("NetworkProxy: terminating")
def process(self, response):
- if self.debug:
+ if self.debug:
print_error("<--", response)
if response.get('method') == 'network.status':
@@ -125,7 +125,7 @@ class NetworkProxy(threading.Thread):
print_error( "received unexpected notification", method, params)
return
-
+
r = {'method':method, 'params':params, 'result':result, 'id':msg_id, 'error':error}
callback(r)
@@ -141,7 +141,7 @@ class NetworkProxy(threading.Thread):
sub.append(message)
if sub:
with self.lock:
- if self.subscriptions.get(callback) is None:
+ if self.subscriptions.get(callback) is None:
self.subscriptions[callback] = []
for message in sub:
if message not in self.subscriptions[callback]:
@@ -151,12 +151,12 @@ class NetworkProxy(threading.Thread):
requests = []
ids = []
for m in messages:
- method, params = m
+ method, params = m
request = { 'id':self.message_id, 'method':method, 'params':params }
self.unanswered_requests[self.message_id] = method, params, callback
ids.append(self.message_id)
requests.append(request)
- if self.debug:
+ if self.debug:
print_error("-->", request)
self.message_id += 1
@@ -230,4 +230,3 @@ class NetworkProxy(threading.Thread):
callbacks = self.callbacks.get(event,[])[:]
if callbacks:
[callback() for callback in callbacks]
-
diff --git a/lib/paymentrequest.py b/lib/paymentrequest.py
index 51d71cd84..6d2c09c04 100644
--- a/lib/paymentrequest.py
+++ b/lib/paymentrequest.py
@@ -157,7 +157,7 @@ class PaymentRequest:
paymntreq = self.data
if not paymntreq.signature:
self.error = "No signature"
- return
+ return
cert = paymentrequest_pb2.X509Certificates()
cert.ParseFromString(paymntreq.pki_data)
@@ -199,7 +199,7 @@ class PaymentRequest:
prefixBytes = bytearray([0x30,0x31,0x30,0x0d,0x06,0x09,0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x02,0x01,0x05,0x00,0x04,0x20])
verify = pubkey.verify(sig, prefixBytes + hashBytes)
else:
- self.error = "Algorithm not supported"
+ self.error = "Algorithm not supported"
util.print_error(self.error, algo.getComponentByName('algorithm'))
return
@@ -352,4 +352,3 @@ if __name__ == "__main__":
tx = "blah"
pr.send_ack(tx, refund_addr = "1vXAXUnGitimzinpXrqDWVU4tyAAQ34RA")
-
diff --git a/lib/paymentrequest_pb2.py b/lib/paymentrequest_pb2.py
index 3d9c43825..e80e352aa 100644
--- a/lib/paymentrequest_pb2.py
+++ b/lib/paymentrequest_pb2.py
@@ -301,37 +301,37 @@ DESCRIPTOR.message_types_by_name['PaymentACK'] = _PAYMENTACK
class Output(message.Message):
__metaclass__ = reflection.GeneratedProtocolMessageType
DESCRIPTOR = _OUTPUT
-
+
# @@protoc_insertion_point(class_scope:payments.Output)
class PaymentDetails(message.Message):
__metaclass__ = reflection.GeneratedProtocolMessageType
DESCRIPTOR = _PAYMENTDETAILS
-
+
# @@protoc_insertion_point(class_scope:payments.PaymentDetails)
class PaymentRequest(message.Message):
__metaclass__ = reflection.GeneratedProtocolMessageType
DESCRIPTOR = _PAYMENTREQUEST
-
+
# @@protoc_insertion_point(class_scope:payments.PaymentRequest)
class X509Certificates(message.Message):
__metaclass__ = reflection.GeneratedProtocolMessageType
DESCRIPTOR = _X509CERTIFICATES
-
+
# @@protoc_insertion_point(class_scope:payments.X509Certificates)
class Payment(message.Message):
__metaclass__ = reflection.GeneratedProtocolMessageType
DESCRIPTOR = _PAYMENT
-
+
# @@protoc_insertion_point(class_scope:payments.Payment)
class PaymentACK(message.Message):
__metaclass__ = reflection.GeneratedProtocolMessageType
DESCRIPTOR = _PAYMENTACK
-
+
# @@protoc_insertion_point(class_scope:payments.PaymentACK)
# @@protoc_insertion_point(module_scope)
diff --git a/lib/plugins.py b/lib/plugins.py
index fdcab0cd0..d3dba3500 100644
--- a/lib/plugins.py
+++ b/lib/plugins.py
@@ -81,7 +81,7 @@ class BasePlugin:
def requires_settings(self):
return False
-
+
def enable(self):
self.set_enabled(True)
return True
@@ -109,4 +109,3 @@ class BasePlugin:
def settings_dialog(self):
pass
-
diff --git a/lib/qrscanner.py b/lib/qrscanner.py
index 12c0bcb6a..736947df1 100644
--- a/lib/qrscanner.py
+++ b/lib/qrscanner.py
@@ -26,7 +26,7 @@ def scan_qr(config):
if str(r.type) != 'QRCODE':
continue
return r.data
-
+
def _find_system_cameras():
device_root = "/sys/class/video4linux"
diff --git a/lib/ripemd.py b/lib/ripemd.py
index a9d652c50..cc7a38f95 100644
--- a/lib/ripemd.py
+++ b/lib/ripemd.py
@@ -51,27 +51,27 @@ class RIPEMD160:
"""Return a new RIPEMD160 object. An optional string argument
may be provided; if present, this string will be automatically
hashed."""
-
+
def __init__(self, arg=None):
self.ctx = RMDContext()
if arg:
self.update(arg)
self.dig = None
-
+
def update(self, arg):
- """update(arg)"""
+ """update(arg)"""
RMD160Update(self.ctx, arg, len(arg))
self.dig = None
-
+
def digest(self):
- """digest()"""
+ """digest()"""
if self.dig:
return self.dig
ctx = self.ctx.copy()
self.dig = RMD160Final(self.ctx)
self.ctx = ctx
return self.dig
-
+
def hexdigest(self):
"""hexdigest()"""
dig = self.digest()
@@ -79,9 +79,9 @@ class RIPEMD160:
for d in dig:
hex_digest += '%02x' % ord(d)
return hex_digest
-
+
def copy(self):
- """copy()"""
+ """copy()"""
import copy
return copy.deepcopy(self)
@@ -90,7 +90,7 @@ class RIPEMD160:
def new(arg=None):
"""Return a new RIPEMD160 object. An optional string argument
may be provided; if present, this string will be automatically
- hashed."""
+ hashed."""
return RIPEMD160(arg)
@@ -260,7 +260,7 @@ def RMD160Transform(state, block): #uint32 state[5], uchar block[64]
b = state[1]
c = state[2]
d = state[3]
- e = state[4]
+ e = state[4]
#/* Parallel round 1 */
a, c = R(a, b, c, d, e, F4, KK0, 8, 5, x)
@@ -361,7 +361,7 @@ def RMD160Transform(state, block): #uint32 state[5], uchar block[64]
def RMD160Update(ctx, inp, inplen):
if type(inp) == str:
inp = [ord(i)&0xff for i in inp]
-
+
have = (ctx.count / 8) % 64
need = 64 - have
ctx.count += 8 * inplen
diff --git a/lib/synchronizer.py b/lib/synchronizer.py
index 37d9841fa..e9b546b91 100644
--- a/lib/synchronizer.py
+++ b/lib/synchronizer.py
@@ -166,11 +166,11 @@ class WalletSynchronizer(threading.Thread):
rs = requested_histories.pop(addr)
if self.wallet.get_status(hist) != rs:
raise Exception("error: status mismatch: %s"%addr)
-
+
# store received history
self.wallet.receive_history_callback(addr, hist)
- # request transactions that we don't have
+ # request transactions that we don't have
for tx_hash, tx_height in hist:
if self.wallet.transactions.get(tx_hash) is None:
if (tx_hash, tx_height) not in requested_tx and (tx_hash, tx_height) not in missing_tx:
@@ -192,6 +192,5 @@ class WalletSynchronizer(threading.Thread):
if self.was_updated and not requested_tx:
self.network.trigger_callback('updated')
# Updated gets called too many times from other places as well; if we use that signal we get the notification three times
- self.network.trigger_callback("new_transaction")
+ self.network.trigger_callback("new_transaction")
self.was_updated = False
-
diff --git a/lib/transaction.py b/lib/transaction.py
index 4a9cab2a0..f738028bc 100644
--- a/lib/transaction.py
+++ b/lib/transaction.py
@@ -60,7 +60,7 @@ class BCDataStream(object):
def seek_file(self, position):
self.read_cursor = position
-
+
def close_file(self):
self.input.close()
@@ -319,7 +319,7 @@ def x_to_xpub(x_pubkey):
xpub, s = BIP32_Account.parse_xpubkey(x_pubkey)
return xpub
-
+
def parse_xpub(x_pubkey):
if x_pubkey[0:2] == 'ff':
@@ -439,7 +439,7 @@ def get_address_from_output_script(bytes):
-
+
def parse_input(vds):
d = {}
@@ -506,7 +506,7 @@ class Transaction:
self.outputs = outputs
self.locktime = locktime
self.raw = None
-
+
@classmethod
def deserialize(klass, raw):
self = klass([],[])
@@ -520,7 +520,7 @@ class Transaction:
self.outputs = map(lambda x: (x['type'], x['address'], x['value']), d['outputs'])
self.locktime = d['lockTime']
- @classmethod
+ @classmethod
def sweep(klass, privkeys, network, to_address, fee):
inputs = []
for privkey in privkeys:
@@ -555,14 +555,14 @@ class Transaction:
if num is None: num = n
# supports only "2 of 2", and "2 of 3" transactions
assert num <= n and n in [2,3]
-
+
if num==2:
s = '52'
elif num == 3:
s = '53'
else:
raise
-
+
for k in public_keys:
s += op_push(len(k)/2)
s += k
@@ -811,7 +811,7 @@ class Transaction:
def has_address(self, addr):
found = False
for txin in self.inputs:
- if addr == txin.get('address'):
+ if addr == txin.get('address'):
found = True
break
if addr in self.get_output_addresses():
@@ -843,7 +843,7 @@ class Transaction:
is_partial = True
if not is_send: is_partial = False
-
+
for addr, value in self.get_outputs():
v_out += value
if addr in addresses:
@@ -899,7 +899,4 @@ class Transaction:
sum += i["value"] * age
priority = sum / size
print_error(priority, threshold)
- return priority < threshold
-
-
-
+ return priority < threshold
diff --git a/lib/util.py b/lib/util.py
index 696bacb31..31b7ca0ae 100644
--- a/lib/util.py
+++ b/lib/util.py
@@ -182,7 +182,7 @@ def parse_URI(uri):
valid_address = bitcoin.is_address(address)
pq = urlparse.parse_qs(u.query)
-
+
for k, v in pq.items():
if len(v)!=1:
raise Exception('Duplicate Key', k)
@@ -202,7 +202,7 @@ def parse_URI(uri):
label = pq['label'][0]
if 'r' in pq:
request_url = pq['r'][0]
-
+
if request_url != '':
return address, amount, label, message, request_url
@@ -225,7 +225,7 @@ __builtin__.raw_input = raw_input
def parse_json(message):
n = message.find('\n')
- if n==-1:
+ if n==-1:
return None, message
try:
j = json.loads( message[0:n] )
@@ -352,4 +352,3 @@ class QueuePipe:
def send_all(self, requests):
for request in requests:
self.send(request)
-
diff --git a/lib/wallet.py b/lib/wallet.py
index d02908937..9a75169c6 100644
--- a/lib/wallet.py
+++ b/lib/wallet.py
@@ -216,7 +216,7 @@ class Abstract_Wallet(object):
# inputs
tx.add_pubkey_addresses(self.transactions)
- # outputs of tx: inputs of tx2
+ # outputs of tx: inputs of tx2
for type, x, v in tx.outputs:
if type == 'pubkey':
for tx2 in self.transactions.values():
@@ -1444,7 +1444,7 @@ class NewWallet(BIP32_HD_Wallet, Mnemonic):
class Wallet_2of2(BIP32_Wallet, Mnemonic):
- # Wallet with multisig addresses.
+ # Wallet with multisig addresses.
# Cannot create accounts
root_name = "x1/"
root_derivation = "m/44'/0'"
@@ -1590,7 +1590,7 @@ class OldWallet(Deterministic_Wallet):
-wallet_types = [
+wallet_types = [
# category type description constructor
('standard', 'old', ("Old wallet"), OldWallet),
('standard', 'xpub', ("BIP32 Import"), BIP32_Simple_Wallet),
diff --git a/lib/x509.py b/lib/x509.py
index 836ad23d5..bebe2d72e 100644
--- a/lib/x509.py
+++ b/lib/x509.py
@@ -81,16 +81,16 @@ class X509(tlslite.X509):
'DNS': set(),
'SRV': set(),
'URI': set(),
- 'XMPPAddr': set(),
+ 'XMPPAddr': set(),
'OU': None,}
-
+
# Extract the CommonName(s) from the cert.
for rdnss in self.subject:
for rdns in rdnss:
for name in rdns:
oid = name.getComponentByName('type')
value = name.getComponentByName('value')
-
+
if oid == COMMON_NAME:
value = decoder.decode(value, asn1Spec=DirectoryString())[0]
value = decode_str(value.getComponent())
@@ -106,7 +106,7 @@ class X509(tlslite.X509):
oid = extension.getComponentByName('extnID')
if oid != SUBJECT_ALT_NAME:
continue
-
+
value = decoder.decode(extension.getComponentByName('extnValue'),
asn1Spec=OctetString())[0]
sa_names = decoder.decode(value, asn1Spec=SubjectAltName())[0]
@@ -120,10 +120,10 @@ class X509(tlslite.X509):
results['URI'].add(value[5:])
elif name_type == 'otherName':
name = name.getComponent()
-
+
oid = name.getComponentByName('type-id')
value = name.getComponentByName('value')
-
+
if oid == XMPP_ADDR:
value = decoder.decode(value, asn1Spec=UTF8String())[0]
results['XMPPAddr'].add(decode_str(value))