QmlDesigner: Disable FlowTags for MCU

Change-Id: I708dad46d92c48991a603819313ce148eccc3b54
Reviewed-by: Aleksei German <aleksei.german@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
Thomas Hartmann
2020-09-02 09:34:18 +02:00
parent de38744bba
commit 8259c1e0e7
2 changed files with 13 additions and 9 deletions

View File

@@ -99,15 +99,15 @@ void ImportsWidget::setPossibleImports(QList<Import> possibleImports)
QList<Import> filteredImports;
const QStringList mcuWhiteList = {"QtQuick", "QtQuick.Controls", "QtQuick.Timeline"};
const QStringList mcuBlackList = {"FlowView"};
const QStringList mcuPostiveList = {"QtQuick", "QtQuick.Controls", "QtQuick.Timeline"};
const QStringList mcuNegativeList = {"FlowView"};
if (isQtForMCUs) {
filteredImports = Utils::filtered(possibleImports,
[mcuWhiteList, mcuBlackList](const Import &import) {
return (mcuWhiteList.contains(import.url())
[mcuPostiveList, mcuNegativeList](const Import &import) {
return (mcuPostiveList.contains(import.url())
|| !import.url().startsWith("Qt"))
&& !mcuBlackList.contains(import.url());
&& !mcuNegativeList.contains(import.url());
});
} else {
filteredImports = possibleImports;

View File

@@ -351,6 +351,8 @@ void ItemLibraryWidget::reloadQmlSource()
void ItemLibraryWidget::setupImportTagWidget()
{
QTC_ASSERT(m_model, return);
const DesignDocument *designDocument = QmlDesignerPlugin::instance()->currentDesignDocument();
const bool isQtForMCUs = designDocument && designDocument->isQtForMCUsProject();
const QStringList imports = m_model->metaInfo().itemLibraryInfo()->showTagsForImports();
@@ -373,11 +375,13 @@ void ItemLibraryWidget::setupImportTagWidget()
return button;
};
for (const QString &importPath : imports) {
const Import import = Import::createLibraryImport(importPath);
if (!m_model->hasImport(import, true, true)
if (!isQtForMCUs) {
for (const QString &importPath : imports) {
const Import import = Import::createLibraryImport(importPath);
if (!m_model->hasImport(import, true, true)
&& m_model->isImportPossible(import, true, true))
flowLayout->addWidget(createButton(importPath));
flowLayout->addWidget(createButton(importPath));
}
}
}