diff --git a/src/sakia/gui/navigation/txhistory/model.py b/src/sakia/gui/navigation/txhistory/model.py index f856c80690968df1ae3a320354210420f6819602..3909f7434235bdb5065861a0919c3c9d8822138b 100644 --- a/src/sakia/gui/navigation/txhistory/model.py +++ b/src/sakia/gui/navigation/txhistory/model.py @@ -68,8 +68,7 @@ class TxHistoryModel(QObject): pubkey = self.table_model.sourceModel().data(pubkey_index, Qt.DisplayRole) identity = self.identities_service.get_identity(pubkey) - - transfer = self.table_model.sourceModel().transfers()[source_index.row()] + transfer = self._model.transfers_data[source_index.row()][self._model.columns_types.index('raw_data')] return True, identity, transfer return False, None, None diff --git a/src/sakia/gui/navigation/txhistory/table_model.py b/src/sakia/gui/navigation/txhistory/table_model.py index 6c68f8c6a131c3b4ef88751535ba5c6701bb20fa..61009dc4a3fa4ac9817549f8e125680dcb5524e7 100644 --- a/src/sakia/gui/navigation/txhistory/table_model.py +++ b/src/sakia/gui/navigation/txhistory/table_model.py @@ -49,7 +49,7 @@ class TxFilterProxyModel(QSortFilterProxyModel): return in_period(date) def columnCount(self, parent): - return self.sourceModel().columnCount(None) - 5 + return self.sourceModel().columnCount(None) - 6 def setSourceModel(self, source_model): self.app = source_model.app @@ -186,7 +186,8 @@ class HistoryTableModel(QAbstractTableModel): 'txid', 'pubkey', 'block_number', - 'txhash' + 'txhash', + 'raw_data' ) self.column_headers = ( @@ -259,7 +260,7 @@ class HistoryTableModel(QAbstractTableModel): return (date_ts, sender, amount, transfer.comment, transfer.state, txid, - transfer.issuer, block_number, transfer.sha_hash) + transfer.issuer, block_number, transfer.sha_hash, transfer) def data_sent(self, transfer): """ @@ -279,7 +280,7 @@ class HistoryTableModel(QAbstractTableModel): date_ts = transfer.timestamp txid = transfer.txid return (date_ts, receiver, amount, transfer.comment, transfer.state, txid, - transfer.receiver, block_number, transfer.sha_hash) + transfer.receiver, block_number, transfer.sha_hash, transfer) def data_dividend(self, dividend): """ @@ -298,7 +299,7 @@ class HistoryTableModel(QAbstractTableModel): date_ts = dividend.timestamp return (date_ts, receiver, amount, "", HistoryTableModel.DIVIDEND, 0, - receiver, block_number, "") + dividend.pubkey, block_number, "", dividend) def init_transfers(self): self.beginResetModel() diff --git a/src/sakia/gui/widgets/context_menu.py b/src/sakia/gui/widgets/context_menu.py index 9a869bcf824345a04a08607a98c4e270822e0304..90d8fffcd32423e65c84df20fdf00f7470261302 100644 --- a/src/sakia/gui/widgets/context_menu.py +++ b/src/sakia/gui/widgets/context_menu.py @@ -3,8 +3,7 @@ import logging from PyQt5.QtCore import QObject, pyqtSignal from PyQt5.QtWidgets import QMenu, QAction, QApplication, QMessageBox -from duniterpy.documents import Block -from sakia.data.entities import Identity, Transaction +from sakia.data.entities import Identity, Transaction, Dividend from sakia.data.processors import BlockchainProcessor, TransactionsProcessor from sakia.decorators import asyncify from sakia.gui.dialogs.certification.controller import CertificationController @@ -105,6 +104,7 @@ class ContextMenu(QObject): build_actions = { Identity: ContextMenu._add_identity_actions, Transaction: ContextMenu._add_transfers_actions, + Dividend: lambda m, d: None, dict: lambda m, d: None, type(None): lambda m, d: None }