add prioritize and freeze console commands. fix choose_inputs

This commit is contained in:
ThomasV 2012-06-06 19:26:05 +02:00
parent 4e876fcfcf
commit e1b3b5892b
3 changed files with 68 additions and 6 deletions

View File

@ -39,8 +39,35 @@ from optparse import OptionParser
from decimal import Decimal
from electrum import Wallet, WalletSynchronizer, format_satoshis
known_commands = ['help', 'validateaddress', 'balance', 'contacts', 'create', 'restore', 'payto', 'sendtx', 'password', 'addresses', 'history', 'label', 'mktx','seed','import','signmessage','verifymessage','eval','deseed','reseed']
offline_commands = ['password', 'mktx', 'label', 'contacts', 'help', 'validateaddress', 'signmessage', 'verifymessage', 'eval', 'create', 'addresses', 'import', 'seed','deseed','reseed']
known_commands = [
'help',
'validateaddress',
'balance',
'contacts',
'create',
'restore',
'payto',
'sendtx',
'password',
'addresses',
'history',
'label',
'mktx',
'seed',
'import',
'signmessage',
'verifymessage',
'eval',
'deseed',
'reseed',
'freeze',
'unfreeze',
'prioritize',
'unprioritize',
]
offline_commands = [ 'password', 'mktx', 'label', 'contacts', 'help', 'validateaddress', 'signmessage', 'verifymessage', 'eval', 'create', 'addresses', 'import', 'seed','deseed','reseed','freeze','unfreeze','prioritize','unprioritize']
protected_commands = ['payto', 'password', 'mktx', 'seed', 'import','signmessage' ]
if __name__ == '__main__':
@ -480,5 +507,40 @@ if __name__ == '__main__':
print True
except:
print False
elif cmd == 'freeze':
addr = args[1]
if addr in self.wallet.all_addresses() and addr not in self.wallet.frozen_addresses:
self.wallet.frozen_addresses.append(addr)
self.wallet.save()
print True
else:
print False
elif cmd == 'unfreeze':
addr = args[1]
if addr in self.wallet.all_addresses() and addr in self.wallet.frozen_addresses:
self.wallet.frozen_addresses.remove(addr)
self.wallet.save()
print True
else:
print False
elif cmd == 'prioritize':
addr = args[1]
if addr in self.wallet.all_addresses() and addr not in self.wallet.frozen_addresses:
self.wallet.prioritized_addresses.append(addr)
self.wallet.save()
print True
else:
print False
elif cmd == 'unprioritize':
addr = args[1]
if addr in self.wallet.all_addresses() and addr in self.wallet.frozen_addresses:
self.wallet.prioritized_addresses.remove(addr)
self.wallet.save()
print True
else:
print False

View File

@ -566,7 +566,7 @@ class ElectrumWindow(QMainWindow):
self.wallet.save()
self.update_receive_tab()
self.prioritizeButton = b = EnterButton(_("Set priority"), toggle_priority)
self.prioritizeButton = b = EnterButton(_("Prioritize"), toggle_priority)
hbox.addWidget(b)
hbox.addStretch(1)
@ -592,7 +592,7 @@ class ElectrumWindow(QMainWindow):
t = _("Unfreeze") if addr in self.wallet.frozen_addresses else _("Freeze")
self.freezeButton.setText(t)
t = _("Remove priority") if addr in self.wallet.prioritized_addresses else _("Set priority")
t = _("Unprioritize") if addr in self.wallet.prioritized_addresses else _("Prioritize")
self.prioritizeButton.setText(t)

View File

@ -669,7 +669,7 @@ class Wallet:
coins = sorted( coins, key = lambda x: x[1]['timestamp'] )
for addr in prioritized_addresses:
for addr in self.prioritized_addresses:
h = self.history.get(addr)
if h is None: continue
for item in h: