diff --git a/src/cutecoin/models/identities.py b/src/cutecoin/models/identities.py index 54567a0f45d38660bfb175cef6cbb91507467ab0..9a361b0728ce99825d266acd37e6f0af345fb82f 100644 --- a/src/cutecoin/models/identities.py +++ b/src/cutecoin/models/identities.py @@ -129,11 +129,10 @@ class IdentitiesTableModel(QAbstractTableModel): logging.debug("Refresh {0} identities".format(len(identities))) self.beginResetModel() self.identities_data = [] - self.endResetModel() - self.beginResetModel() + identities_data = [] for identity in identities: data = yield from self.identity_data(identity) - self.identities_data.append(data) + identities_data.append(data) if len(identities) > 0: try: parameters = yield from self.community.parameters() @@ -141,6 +140,7 @@ class IdentitiesTableModel(QAbstractTableModel): except NoPeerAvailable as e: logging.debug(str(e)) self._sig_validity = 0 + self.identities_data = identities_data self.endResetModel() def rowCount(self, parent): diff --git a/src/cutecoin/models/network.py b/src/cutecoin/models/network.py index af360c5a089154ec817edca8abb1932e5eafb83e..8c33d71b139e3e38bdaad76c0dc6bbf6d6b5c47b 100644 --- a/src/cutecoin/models/network.py +++ b/src/cutecoin/models/network.py @@ -11,7 +11,7 @@ from PyQt5.QtCore import QAbstractTableModel, Qt, QVariant, QSortFilterProxyMode from PyQt5.QtGui import QColor, QFont from ..tools.exceptions import NoPeerAvailable -from ..tools.decorators import asyncify +from ..tools.decorators import asyncify, once_at_a_time from cutecoin.core.net.node import Node @@ -178,12 +178,12 @@ class NetworkTableModel(QAbstractTableModel): def refresh_nodes(self): self.beginResetModel() self.nodes_data = [] - self.endResetModel() - self.beginResetModel() + nodes_data = [] if self.community: for node in self.community.network.nodes: data = yield from self.data_node(node) - self.nodes_data.append(data) + nodes_data.append(data) + self.nodes_data = nodes_data self.endResetModel() def rowCount(self, parent): diff --git a/src/cutecoin/models/txhistory.py b/src/cutecoin/models/txhistory.py index 4d9dfe64a1bea1ca788a4fbb175c2f250a5c6d98..ac0af80427fa55fc54cfa20893d321173da551dd 100644 --- a/src/cutecoin/models/txhistory.py +++ b/src/cutecoin/models/txhistory.py @@ -289,6 +289,7 @@ class HistoryTableModel(QAbstractTableModel): def refresh_transfers(self): self.beginResetModel() self.transfers_data = [] + transfers_data = [] if self.community: for transfer in self.transfers(): data = None @@ -300,13 +301,14 @@ class HistoryTableModel(QAbstractTableModel): elif type(transfer) is dict: data = yield from self.data_dividend(transfer) if data: - self.transfers_data.append(data) + transfers_data.append(data) try: members_pubkeys = yield from self.community.members_pubkeys() self._max_validations = self.community.network.fork_window(members_pubkeys) + 1 except NoPeerAvailable as e: logging.debug(str(e)) self._max_validations = 0 + self.transfers_data = transfers_data self.endResetModel() def max_validations(self):