aboutsummaryrefslogtreecommitdiff
path: root/src/qt
diff options
context:
space:
mode:
authorxiphon <xiphon@protonmail.com>2020-07-14 01:45:34 +0000
committerxiphon <xiphon@protonmail.com>2020-07-14 23:44:46 +0000
commit13ee9b1f26831b208b33bb977d0fdda61bfec452 (patch)
tree111b476735dce1cdc9fb45ec30b8c7a7d286224a /src/qt
parentc137a6ea36040aee20366933935805eff67ae3f8 (diff)
downloadmonzero-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.cpp8
-rw-r--r--src/qt/KeysFiles.h10
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;
};