Make Content Library Materials downloadable

Task-number: QDS-9267
Change-Id: Ib4da1871cd1d9f0bf52323793b7d8d1b028ae170
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
This commit is contained in:
Samuel Ghinet
2023-03-02 14:50:06 +02:00
parent 46b0aaeebe
commit 98be6d289f
20 changed files with 698 additions and 92 deletions

View File

@@ -3,6 +3,8 @@
#include "contentlibrarymaterial.h"
#include <QFileInfo>
namespace QmlDesigner {
ContentLibraryMaterial::ContentLibraryMaterial(QObject *parent,
@@ -10,8 +12,15 @@ ContentLibraryMaterial::ContentLibraryMaterial(QObject *parent,
const QString &qml,
const TypeName &type,
const QUrl &icon,
const QStringList &files)
: QObject(parent), m_name(name), m_qml(qml), m_type(type), m_icon(icon), m_files(files) {}
const QStringList &files,
const QString &downloadPath,
const QString &baseWebUrl)
: QObject(parent), m_name(name), m_qml(qml), m_type(type), m_icon(icon), m_files(files)
, m_downloadPath(downloadPath), m_baseWebUrl(baseWebUrl)
{
m_allFiles = m_files;
m_allFiles.push_back(m_qml);
}
bool ContentLibraryMaterial::filter(const QString &searchText)
{
@@ -64,4 +73,25 @@ bool ContentLibraryMaterial::imported() const
return m_imported;
}
bool ContentLibraryMaterial::isDownloaded() const
{
QString fullPath = qmlFilePath();
return QFileInfo(fullPath).isFile();
}
QString ContentLibraryMaterial::qmlFilePath() const
{
return m_downloadPath + "/" + m_qml;
}
QString ContentLibraryMaterial::parentDirPath() const
{
return m_downloadPath;
}
QStringList ContentLibraryMaterial::allFiles() const
{
return m_allFiles;
}
} // namespace QmlDesigner