diff options
author | Cristian Adam <cristian.adam@qt.io> | 2024-02-08 18:50:57 +0100 |
---|---|---|
committer | Cristian Adam <cristian.adam@qt.io> | 2024-02-12 09:55:20 +0000 |
commit | c553d63a32f9df7fdc999421e353647c20b0fd91 (patch) | |
tree | 8dc9bf8f7cb9c8e9005c6df1879cba172f7bb3fe /src/plugins/projectexplorer | |
parent | 354f50f258bf42cf1289fc98514fcb1841d89aa1 (diff) |
PE: Allow ProjectImporter to filter kits in TargetSetupPage
Amends b9f546cf1bb7d867bb5f0a31ada0c5c670c52f6e
Change-Id: Icf64f3cd751480c9fe2ae740f47954a62c252cc4
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Diffstat (limited to 'src/plugins/projectexplorer')
-rw-r--r-- | src/plugins/projectexplorer/projectimporter.h | 2 | ||||
-rw-r--r-- | src/plugins/projectexplorer/targetsetuppage.cpp | 6 |
2 files changed, 3 insertions, 5 deletions
diff --git a/src/plugins/projectexplorer/projectimporter.h b/src/plugins/projectexplorer/projectimporter.h index 2cca307d5b..6946054ca9 100644 --- a/src/plugins/projectexplorer/projectimporter.h +++ b/src/plugins/projectexplorer/projectimporter.h @@ -36,7 +36,7 @@ public: virtual const QList<BuildInfo> import(const Utils::FilePath &importPath, bool silent = false); virtual Utils::FilePaths importCandidates() = 0; virtual Target *preferredTarget(const QList<Target *> &possibleTargets); - virtual QString kitFilterText() { return QString(); } + virtual bool filter(Kit *) const { return true; } bool isUpdating() const { return m_isUpdating; } diff --git a/src/plugins/projectexplorer/targetsetuppage.cpp b/src/plugins/projectexplorer/targetsetuppage.cpp index a4af51996a..72e77fd664 100644 --- a/src/plugins/projectexplorer/targetsetuppage.cpp +++ b/src/plugins/projectexplorer/targetsetuppage.cpp @@ -304,6 +304,8 @@ void TargetSetupPagePrivate::setupWidgets(const QString &filterText) for (Kit *k : KitManager::sortedKits()) { if (!filterText.isEmpty() && !k->displayName().contains(filterText, Qt::CaseInsensitive)) continue; + if (m_importer && !m_importer->filter(k)) + continue; const auto widget = new TargetSetupWidget(k, m_projectPath); connect(widget, &TargetSetupWidget::selectedToggled, this, &TargetSetupPagePrivate::kitSelectionChanged); @@ -569,10 +571,6 @@ void TargetSetupPagePrivate::doInitializePage() setupWidgets(); setupImports(); - const QString filterText = m_importer ? m_importer->kitFilterText() : QString{}; - kitFilterLineEdit->setText(filterText); - kitFilterLineEdit->filterChanged(filterText); - selectAtLeastOneEnabledKit(); updateVisibility(); } |