aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer/targetsetupwidget.cpp
diff options
context:
space:
mode:
authorDavid Schulz <david.schulz@qt.io>2023-11-22 12:50:57 +0100
committerDavid Schulz <david.schulz@qt.io>2023-12-01 12:22:52 +0000
commit5d14e580ea7bea3782247ea438e9660d2b9c99eb (patch)
tree24eca6ece104cfa9b65ae1ad3db2c7090a70a6f4 /src/plugins/projectexplorer/targetsetupwidget.cpp
parenta006c6150705ea5c748a3c36cb0409a8725717da (diff)
ProjectExplorer: show kit warning in the wizard target setup page
Change-Id: I9aac268b902ed0a2dfd544811028affb480ed4d5 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/projectexplorer/targetsetupwidget.cpp')
-rw-r--r--src/plugins/projectexplorer/targetsetupwidget.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/plugins/projectexplorer/targetsetupwidget.cpp b/src/plugins/projectexplorer/targetsetupwidget.cpp
index f851958b82..48a380f9be 100644
--- a/src/plugins/projectexplorer/targetsetupwidget.cpp
+++ b/src/plugins/projectexplorer/targetsetupwidget.cpp
@@ -208,7 +208,14 @@ void TargetSetupWidget::update(const TasksGenerator &generator)
const Tasks tasks = generator(kit());
m_detailsWidget->setSummaryText(kit()->displayName());
- m_detailsWidget->setIcon(kit()->isValid() ? kit()->icon() : Icons::CRITICAL.icon());
+ if (!kit()->isValid())
+ m_detailsWidget->setIcon(Icons::CRITICAL.icon());
+ else if (kit()->hasWarning() || Utils::anyOf(tasks, Utils::equal(&Task::type, Task::Warning)))
+ m_detailsWidget->setIcon(Icons::WARNING.icon());
+ else
+ m_detailsWidget->setIcon(kit()->icon());
+
+ m_detailsWidget->setToolTip(kit()->toHtml(tasks, ""));
const Task errorTask = Utils::findOrDefault(tasks, Utils::equal(&Task::type, Task::Error));
@@ -216,7 +223,6 @@ void TargetSetupWidget::update(const TasksGenerator &generator)
// guarantee that we can handle the project sensibly (e.g. qmake project without Qt).
if (!errorTask.isNull()) {
toggleEnabled(false);
- m_detailsWidget->setToolTip(kit()->toHtml(tasks, ""));
m_infoStore.clear();
return;
}