self.history_list.clear()
for item in self.wallet.get_tx_history(self.current_account):
tx_hash, conf, is_mine, value, fee, balance, timestamp = item
- if conf:
+ if conf > 0:
try:
time_str = datetime.datetime.fromtimestamp( timestamp).isoformat(' ')[:-3]
except:
time_str = "unknown"
- if conf == -1:
- icon = None
- if conf == 0:
- icon = QIcon(":icons/unconfirmed.png")
- elif conf < 6:
- icon = QIcon(":icons/clock%d.png"%conf)
- else:
- icon = QIcon(":icons/confirmed.png")
- else:
+
+ if conf == -1:
+ time_str = 'unverified'
+ icon = None
+ elif conf == 0:
time_str = 'pending'
icon = QIcon(":icons/unconfirmed.png")
+ elif conf < 6:
+ icon = QIcon(":icons/clock%d.png"%conf)
+ else:
+ icon = QIcon(":icons/confirmed.png")
if value is not None:
v_str = self.format_amount(value, True)
for item in self.wallet.get_tx_history():
tx_hash, conf, is_mine, value, fee, balance, timestamp = item
- if conf:
+ if conf > 0:
try:
time_str = datetime.datetime.fromtimestamp( timestamp).isoformat(' ')[:-3]
except:
time_str = "------"
conf_icon = gtk.STOCK_APPLY
+ elif conf == -1:
+ time_str = 'unverified'
+ conf_icon = None
else:
time_str = 'pending'
conf_icon = gtk.STOCK_EXECUTE
if tx in self.verified_tx:
height, timestamp, pos = self.verified_tx[tx]
conf = (self.local_height - height + 1)
+ if conf <= 0: timestamp = None
+
+ elif tx in self.transactions:
+ conf = -1
+ timestamp = None
+
else:
conf = 0
-
- if conf <= 0:
timestamp = None
return conf, timestamp
+ def get_txpos(self, tx_hash):
+ "return position, even if the tx is unverified"
+ with self.lock:
+ x = self.verified_tx.get(tx_hash)
+ y = self.transactions.get(tx_hash)
+ if x:
+ height, timestamp, pos = x
+ return height, pos
+ elif y:
+ return y, 0
+ else:
+ return 1e12, 0
+
+
def get_height(self, tx_hash):
with self.lock:
v = self.verified_tx.get(tx_hash)
def get_tx_history(self, account=None):
with self.transaction_lock:
history = self.transactions.items()
- history.sort(key = lambda x: self.verifier.verified_tx.get(x[0]) if self.verifier.verified_tx.get(x[0]) else (1e12,0,0))
+ history.sort(key = lambda x: self.verifier.get_txpos(x[0]))
result = []
balance = 0