diff options
| author | xiphon <xiphon@protonmail.com> | 2020-07-14 01:45:34 +0000 |
|---|---|---|
| committer | xiphon <xiphon@protonmail.com> | 2020-07-14 23:44:46 +0000 |
| commit | 13ee9b1f26831b208b33bb977d0fdda61bfec452 (patch) | |
| tree | 111b476735dce1cdc9fb45ec30b8c7a7d286224a /src/qt | |
| parent | c137a6ea36040aee20366933935805eff67ae3f8 (diff) | |
| download | monzero-gui-13ee9b1f26831b208b33bb977d0fdda61bfec452.tar.gz monzero-gui-13ee9b1f26831b208b33bb977d0fdda61bfec452.tar.xz monzero-gui-13ee9b1f26831b208b33bb977d0fdda61bfec452.zip | |
KeysFiles: fix WalletKeysFilesModel, should be instantiable QML type
Diffstat (limited to 'src/qt')
| -rw-r--r-- | src/qt/KeysFiles.cpp | 8 | ||||
| -rw-r--r-- | src/qt/KeysFiles.h | 10 |
2 files changed, 11 insertions, 7 deletions
diff --git a/src/qt/KeysFiles.cpp b/src/qt/KeysFiles.cpp index 15f7c6eb..dfd17c40 100644 --- a/src/qt/KeysFiles.cpp +++ b/src/qt/KeysFiles.cpp @@ -81,17 +81,15 @@ quint8 WalletKeysFiles::networkType() const WalletKeysFilesModel::WalletKeysFilesModel(QObject *parent) : QAbstractListModel(parent) { - this->m_walletKeysFilesItemModel = qobject_cast<QAbstractItemModel *>(this); - - this->m_walletKeysFilesModelProxy.setSourceModel(this->m_walletKeysFilesItemModel); + this->m_walletKeysFilesModelProxy.setSourceModel(this); this->m_walletKeysFilesModelProxy.setSortRole(WalletKeysFilesModel::ModifiedRole); this->m_walletKeysFilesModelProxy.setDynamicSortFilter(true); this->m_walletKeysFilesModelProxy.sort(0, Qt::DescendingOrder); } -QSortFilterProxyModel &WalletKeysFilesModel::proxyModel() +QSortFilterProxyModel *WalletKeysFilesModel::proxyModel() { - return m_walletKeysFilesModelProxy; + return &m_walletKeysFilesModelProxy; } void WalletKeysFilesModel::clear() diff --git a/src/qt/KeysFiles.h b/src/qt/KeysFiles.h index a8a0dbe2..610c3c3a 100644 --- a/src/qt/KeysFiles.h +++ b/src/qt/KeysFiles.h @@ -56,6 +56,8 @@ private: class WalletKeysFilesModel : public QAbstractListModel { Q_OBJECT + Q_PROPERTY(QSortFilterProxyModel *proxyModel READ proxyModel NOTIFY proxyModelChanged) + public: enum KeysFilesRoles { FileNameRole = Qt::UserRole + 1, @@ -74,16 +76,20 @@ public: void addWalletKeysFile(const WalletKeysFiles &walletKeysFile); int rowCount(const QModelIndex & parent = QModelIndex()) const; - QSortFilterProxyModel &proxyModel(); QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; QHash<int, QByteArray> roleNames() const; +private: + QSortFilterProxyModel *proxyModel(); + protected: +signals: + void proxyModelChanged() const; + private: QList<WalletKeysFiles> m_walletKeyFiles; - QAbstractItemModel *m_walletKeysFilesItemModel; QSortFilterProxyModel m_walletKeysFilesModelProxy; }; |
