diff options
author | Janrupf <werbung.janrupf@t-online.de> | 2018-04-01 20:24:28 +0200 |
---|---|---|
committer | Janrupf <werbung.janrupf@t-online.de> | 2018-04-02 23:02:33 +0200 |
commit | bbd523acb8bf846d27a7859d1d79f28ea92de245 (patch) | |
tree | b8cb693f9558b99e27f730840ca1764da08495d2 /application/FtbListModel.h | |
parent | 67d2f283da3bf9538e6a31de3759cd959010b36c (diff) | |
download | PrismLauncher-bbd523acb8bf846d27a7859d1d79f28ea92de245.tar.gz PrismLauncher-bbd523acb8bf846d27a7859d1d79f28ea92de245.tar.bz2 PrismLauncher-bbd523acb8bf846d27a7859d1d79f28ea92de245.zip |
NOISSUE Added FTB Pack logos to chooser and fixed some missing includes
Diffstat (limited to 'application/FtbListModel.h')
-rw-r--r-- | application/FtbListModel.h | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/application/FtbListModel.h b/application/FtbListModel.h index 41fc3ccd..747c65bd 100644 --- a/application/FtbListModel.h +++ b/application/FtbListModel.h @@ -3,6 +3,13 @@ #include <QAbstractListModel> #include <QSortFilterProxyModel> #include <modplatform/ftb/PackHelpers.h> +#include <QThreadPool> + +#include <RWStorage.h> + +#include <QPixmap> + +typedef QMap<QString, QPixmap> FtbLogoMap; class FtbFilterModel : public QSortFilterProxyModel { @@ -13,8 +20,9 @@ public: ByGameVersion }; const QMap<QString, Sorting> getAvailableSortings(); - Sorting getCurrentSorting(); + QString translateCurrentSorting(); void setSorting(Sorting sorting); + Sorting getCurrentSorting(); protected: bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const override; @@ -31,9 +39,22 @@ class FtbListModel : public QAbstractListModel Q_OBJECT private: FtbModpackList modpacks; + QThreadPool *m_logoPool; + QStringList m_failedLogos; + QStringList m_loadingLogos; + FtbLogoMap m_logoMap; + + void requestLogo(QString file); + QString translatePackType(FtbPackType type) const; + + +private slots: + void logoFailed(QString logo); + void logoLoaded(QString logo, QPixmap out); public: FtbListModel(QObject *parent); + ~FtbListModel(); int rowCount(const QModelIndex &parent) const override; int columnCount(const QModelIndex &parent) const override; QVariant data(const QModelIndex &index, int role) const override; |