From 71202abcbc9173daa92b816978b0c9830cb728d5 Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Mon, 31 Aug 2020 20:03:34 +0200 Subject: QmlDesigner: Do not show items not available fot QtForMCU Change-Id: Ia61634a5108db51b49241fd58b73ab71e9e5e2e8 Reviewed-by: Thomas Hartmann --- .../components/itemlibrary/itemlibrarymodel.cpp | 47 ++++++++++++++++++++-- 1 file changed, 43 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/plugins/qmldesigner/components/itemlibrary/itemlibrarymodel.cpp b/src/plugins/qmldesigner/components/itemlibrary/itemlibrarymodel.cpp index 32db815236..273d4adf5a 100644 --- a/src/plugins/qmldesigner/components/itemlibrary/itemlibrarymodel.cpp +++ b/src/plugins/qmldesigner/components/itemlibrary/itemlibrarymodel.cpp @@ -33,6 +33,9 @@ #include #include +#include +#include + #include #include @@ -197,11 +200,47 @@ void ItemLibraryModel::update(ItemLibraryInfo *itemLibraryInfo, Model *model) forceVisiblity = isItem; } + DesignDocument *designDocument = QmlDesignerPlugin::instance() + ->documentManager() + .currentDesignDocument(); + + if (designDocument && designDocument->isQtForMCUsProject()) { + const QList blockTypes = {"QtQuick.AnimatedImage", + "QtQuick.BorderImage", + "QtQuick.FocusScope", + "QtQuick.TextInput", + "QtQuick.TextEdit", + "QtQuick.Flow", + "QtQuick.Grid", + "QtQuick.GridView", + "QtQuick.Controls.ButtonGroup", + "QtQuick.Controls", + "QtQuick.Controls.Container", + "QtQuick.Controls.DelayButton", + "QtQuick.Controls.ComboBox", + "QtQuick.Controls.Frame", + "QtQuick.Controls.GroupBox", + "QtQuick.Controls.ItemDelegate", + "QtQuick.Controls.SpinBox", + "QtQuick.Controls.RadioDelegate", + "QtQuick.Controls.RoundButton", + "QtQuick.Controls.ScrollView", + "QtQuick.Controls.RangeSlider", + "QtQuick.Controls.ToolBar", + "QtQuick.Controls.TooButton", + "QtQuick.Controls.TabBar", + "QtQuick.Controls.TabButton", + "QtQuick.Controls.SwitchDelegate", + "QtQuick.Controls.TextArea", + "QtQuick.Controls.TextField"}; + + if (blockTypes.contains(entry.typeName())) + valid = false; + } - if (valid - && (isItem || forceVisiblity) //We can change if the navigator does support pure QObjects - && (entry.requiredImport().isEmpty() - || model->hasImport(entryToImport(entry), true, true))) { + if (valid && (isItem || forceVisiblity) //We can change if the navigator does support pure QObjects + && (entry.requiredImport().isEmpty() + || model->hasImport(entryToImport(entry), true, true))) { QString itemSectionName = entry.category(); qCInfo(itemlibraryPopulate) << "Adding:" << entry.typeName() << "to:" << entry.category(); ItemLibrarySection *sectionModel = sectionByName(itemSectionName); -- cgit v1.2.3