summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner/components/assetslibrary/assetslibraryiconprovider.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmldesigner/components/assetslibrary/assetslibraryiconprovider.cpp')
-rw-r--r--src/plugins/qmldesigner/components/assetslibrary/assetslibraryiconprovider.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/plugins/qmldesigner/components/assetslibrary/assetslibraryiconprovider.cpp b/src/plugins/qmldesigner/components/assetslibrary/assetslibraryiconprovider.cpp
index 0dc73120f1..d3a0d0a72b 100644
--- a/src/plugins/qmldesigner/components/assetslibrary/assetslibraryiconprovider.cpp
+++ b/src/plugins/qmldesigner/components/assetslibrary/assetslibraryiconprovider.cpp
@@ -7,6 +7,7 @@
#include <theme.h>
#include <utils/hdrimage.h>
+#include <utils/ktximage.h>
#include <utils/stylehelper.h>
namespace QmlDesigner {
@@ -43,13 +44,16 @@ Thumbnail AssetsLibraryIconProvider::createThumbnail(const QString &id, const QS
{
auto [pixmap, fileSize] = fetchPixmap(id, requestedSize);
QSize originalSize = pixmap.size();
- Asset::Type assetType = Asset(id).type();
+ Asset asset(id);
+ Asset::Type assetType = asset.type();
if (pixmap.isNull()) {
pixmap = Utils::StyleHelper::dpiSpecificImageFile(":/AssetsLibrary/images/assets_default.png");
if (assetType == Asset::Image)
assetType = Asset::MissingImage;
+ else if (asset.isKtxFile())
+ originalSize = KtxImage(id).dimensions();
}
if (requestedSize.isValid())
@@ -86,6 +90,10 @@ QPair<QPixmap, qint64> AssetsLibraryIconProvider::fetchPixmap(const QString &id,
qint64 size = QFileInfo(id).size();
QPixmap pixmap = HdrImage{id}.toPixmap();
return {pixmap, size};
+ } else if (asset.isKtxFile()) {
+ qint64 size = QFileInfo(id).size();
+ // TODO: Return ktx specific default image once available (QDS-9140)
+ return {{}, size};
} else {
QString type;
if (asset.isShader())
@@ -129,12 +137,5 @@ qint64 AssetsLibraryIconProvider::fileSize(const QString &id)
return m_thumbnails.contains(id) ? m_thumbnails[id].fileSize : 0;
}
-bool AssetsLibraryIconProvider::assetIsImage(const QString &id)
-{
- return m_thumbnails.contains(id)
- ? (m_thumbnails[id].assetType == Asset::Type::Image || Asset(id).isHdrFile())
- : false;
-}
-
} // namespace QmlDesigner