qml: add new 'removed_transaction' callback in wallet.py, hook up callback in qewallet and
emit balanceChanged events for add_transaction and remove_transaction
This commit is contained in:
@@ -261,10 +261,6 @@ class QEInvoiceParser(QEInvoice, QtEventListener):
|
||||
def expiration(self):
|
||||
return self._effectiveInvoice.exp if self._effectiveInvoice else 0
|
||||
|
||||
@pyqtProperty('quint64', notify=invoiceChanged)
|
||||
def time(self):
|
||||
return self._effectiveInvoice.time if self._effectiveInvoice else 0
|
||||
|
||||
statusChanged = pyqtSignal()
|
||||
@pyqtProperty(int, notify=statusChanged)
|
||||
def status(self):
|
||||
|
||||
@@ -365,6 +365,7 @@ class QETxDetails(QObject, QtEventListener):
|
||||
@pyqtSlot()
|
||||
@pyqtSlot(bool)
|
||||
def removeLocalTx(self, confirm = False):
|
||||
assert self._can_remove
|
||||
txid = self._txid
|
||||
|
||||
if not confirm:
|
||||
@@ -379,7 +380,6 @@ class QETxDetails(QObject, QtEventListener):
|
||||
|
||||
self._wallet.wallet.adb.remove_transaction(txid)
|
||||
self._wallet.wallet.save_db()
|
||||
self._wallet.historyModel.init_model(True)
|
||||
|
||||
@pyqtSlot()
|
||||
def save(self):
|
||||
|
||||
@@ -183,6 +183,15 @@ class QEWallet(AuthMixin, QObject, QtEventListener):
|
||||
self.add_tx_notification(tx)
|
||||
self.addressModel.setDirty()
|
||||
self.historyModel.setDirty() # assuming wallet.is_up_to_date triggers after
|
||||
self.balanceChanged.emit()
|
||||
|
||||
@qt_event_listener
|
||||
def on_event_removed_transaction(self, wallet, tx):
|
||||
if wallet == self.wallet:
|
||||
self._logger.info(f'removed transaction {tx.txid()}')
|
||||
self.addressModel.setDirty()
|
||||
self.historyModel.init_model(True) #setDirty()
|
||||
self.balanceChanged.emit()
|
||||
|
||||
@qt_event_listener
|
||||
def on_event_wallet_updated(self, wallet):
|
||||
|
||||
@@ -510,6 +510,7 @@ class Abstract_Wallet(ABC, Logger, EventListener):
|
||||
if not self.tx_is_related(tx):
|
||||
return
|
||||
self.clear_tx_parents_cache()
|
||||
util.trigger_callback('removed_transaction', self, tx)
|
||||
|
||||
@event_listener
|
||||
def on_event_adb_added_verified_tx(self, adb, tx_hash):
|
||||
|
||||
Reference in New Issue
Block a user