aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2024-02-01 18:24:00 +0100
committerhjk <hjk@qt.io>2024-02-02 06:21:51 +0000
commit4718dd5225b24536fe4453de25fcdda89f821662 (patch)
tree43a0ba4245b2f0a351c9a25c9b0d61daed8b41f9 /src/plugins/projectexplorer
parentc6be4fd2d47b9d59725d367bc3829228e00a4f8c (diff)
ProjectExplorer: Inline buildprogress.* into buildmanager.cpp
Change-Id: Id72467cb322110a20945adeaedd37ba4a510ae06 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Diffstat (limited to 'src/plugins/projectexplorer')
-rw-r--r--src/plugins/projectexplorer/CMakeLists.txt1
-rw-r--r--src/plugins/projectexplorer/buildmanager.cpp98
-rw-r--r--src/plugins/projectexplorer/buildprogress.cpp95
-rw-r--r--src/plugins/projectexplorer/buildprogress.h35
-rw-r--r--src/plugins/projectexplorer/projectexplorer.qbs1
5 files changed, 97 insertions, 133 deletions
diff --git a/src/plugins/projectexplorer/CMakeLists.txt b/src/plugins/projectexplorer/CMakeLists.txt
index 35f9f77632..7459eb1656 100644
--- a/src/plugins/projectexplorer/CMakeLists.txt
+++ b/src/plugins/projectexplorer/CMakeLists.txt
@@ -16,7 +16,6 @@ add_qtc_plugin(ProjectExplorer
buildconfiguration.cpp buildconfiguration.h
buildinfo.cpp buildinfo.h
buildmanager.cpp buildmanager.h
- buildprogress.cpp buildprogress.h
buildsettingspropertiespage.cpp buildsettingspropertiespage.h
buildstep.cpp buildstep.h
buildsteplist.cpp buildsteplist.h
diff --git a/src/plugins/projectexplorer/buildmanager.cpp b/src/plugins/projectexplorer/buildmanager.cpp
index 1fd27fd026..2c4b279f9d 100644
--- a/src/plugins/projectexplorer/buildmanager.cpp
+++ b/src/plugins/projectexplorer/buildmanager.cpp
@@ -3,7 +3,6 @@
#include "buildmanager.h"
-#include "buildprogress.h"
#include "buildsteplist.h"
#include "buildsystem.h"
#include "compileoutputwindow.h"
@@ -36,17 +35,25 @@
#include <utils/algorithm.h>
#include <utils/outputformatter.h>
#include <utils/stringutils.h>
+#include <utils/stylehelper.h>
+#include <utils/utilsicons.h>
#include <QApplication>
+#include <QBoxLayout>
#include <QElapsedTimer>
+#include <QFont>
#include <QFutureWatcher>
#include <QHash>
+#include <QLabel>
#include <QList>
#include <QMessageBox>
+#include <QPixmap>
#include <QPointer>
#include <QSet>
#include <QTime>
#include <QTimer>
+#include <QVBoxLayout>
+#include <QVariant>
using namespace Core;
using namespace Tasking;
@@ -55,6 +62,95 @@ using namespace Utils;
namespace ProjectExplorer {
using namespace Internal;
+class BuildProgress final : public QWidget
+{
+public:
+ explicit BuildProgress(TaskWindow *taskWindow, Qt::Orientation orientation = Qt::Vertical) :
+ m_contentWidget(new QWidget),
+ m_errorIcon(new QLabel),
+ m_warningIcon(new QLabel),
+ m_errorLabel(new QLabel),
+ m_warningLabel(new QLabel),
+ m_taskWindow(taskWindow)
+ {
+ auto contentLayout = new QHBoxLayout;
+ contentLayout->setContentsMargins(0, 0, 0, 0);
+ contentLayout->setSpacing(0);
+ setLayout(contentLayout);
+ contentLayout->addWidget(m_contentWidget);
+ QBoxLayout *layout;
+ if (orientation == Qt::Horizontal)
+ layout = new QHBoxLayout;
+ else
+ layout = new QVBoxLayout;
+ layout->setContentsMargins(8, 2, 0, 2);
+ layout->setSpacing(2);
+ m_contentWidget->setLayout(layout);
+ auto errorLayout = new QHBoxLayout;
+ errorLayout->setSpacing(2);
+ layout->addLayout(errorLayout);
+ errorLayout->addWidget(m_errorIcon);
+ errorLayout->addWidget(m_errorLabel);
+ auto warningLayout = new QHBoxLayout;
+ warningLayout->setSpacing(2);
+ layout->addLayout(warningLayout);
+ warningLayout->addWidget(m_warningIcon);
+ warningLayout->addWidget(m_warningLabel);
+
+ const QFont f = StyleHelper::uiFont(StyleHelper::UiElementCaptionStrong);
+ m_errorLabel->setFont(f);
+ m_warningLabel->setFont(f);
+ m_errorLabel->setPalette(StyleHelper::sidebarFontPalette(m_errorLabel->palette()));
+ m_warningLabel->setPalette(StyleHelper::sidebarFontPalette(m_warningLabel->palette()));
+ m_errorLabel->setProperty("_q_custom_style_disabled", QVariant(true));
+ m_warningLabel->setProperty("_q_custom_style_disabled", QVariant(true));
+
+ m_errorIcon->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+ m_warningIcon->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+ m_errorIcon->setPixmap(Icons::CRITICAL_TOOLBAR.pixmap());
+ m_warningIcon->setPixmap(Icons::WARNING_TOOLBAR.pixmap());
+
+ m_contentWidget->hide();
+
+ connect(m_taskWindow.data(), &TaskWindow::tasksChanged, this, &BuildProgress::updateState);
+ }
+
+private:
+ void updateState()
+ {
+ if (!m_taskWindow)
+ return;
+ int errors = m_taskWindow->errorTaskCount(Constants::TASK_CATEGORY_BUILDSYSTEM)
+ + m_taskWindow->errorTaskCount(Constants::TASK_CATEGORY_COMPILE)
+ + m_taskWindow->errorTaskCount(Constants::TASK_CATEGORY_DEPLOYMENT);
+ bool haveErrors = (errors > 0);
+ m_errorIcon->setEnabled(haveErrors);
+ m_errorLabel->setEnabled(haveErrors);
+ m_errorLabel->setText(QString::number(errors));
+ int warnings = m_taskWindow->warningTaskCount(Constants::TASK_CATEGORY_BUILDSYSTEM)
+ + m_taskWindow->warningTaskCount(Constants::TASK_CATEGORY_COMPILE)
+ + m_taskWindow->warningTaskCount(Constants::TASK_CATEGORY_DEPLOYMENT);
+ bool haveWarnings = (warnings > 0);
+ m_warningIcon->setEnabled(haveWarnings);
+ m_warningLabel->setEnabled(haveWarnings);
+ m_warningLabel->setText(QString::number(warnings));
+
+ // Hide warnings and errors unless you need them
+ m_warningIcon->setVisible(haveWarnings);
+ m_warningLabel->setVisible(haveWarnings);
+ m_errorIcon->setVisible(haveErrors);
+ m_errorLabel->setVisible(haveErrors);
+ m_contentWidget->setVisible(haveWarnings || haveErrors);
+ }
+
+ QWidget *m_contentWidget;
+ QLabel *m_errorIcon;
+ QLabel *m_warningIcon;
+ QLabel *m_errorLabel;
+ QLabel *m_warningLabel;
+ QPointer<TaskWindow> m_taskWindow;
+};
+
class ParserAwaiterTaskAdapter : public TaskAdapter<QSet<BuildSystem *>>
{
private:
diff --git a/src/plugins/projectexplorer/buildprogress.cpp b/src/plugins/projectexplorer/buildprogress.cpp
deleted file mode 100644
index ec4059e8c0..0000000000
--- a/src/plugins/projectexplorer/buildprogress.cpp
+++ /dev/null
@@ -1,95 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
-
-#include "buildprogress.h"
-#include "projectexplorerconstants.h"
-
-#include <utils/utilsicons.h>
-#include <utils/stylehelper.h>
-
-#include <QFont>
-#include <QLabel>
-#include <QHBoxLayout>
-#include <QPixmap>
-#include <QVariant>
-#include <QVBoxLayout>
-
-using namespace ProjectExplorer;
-using namespace ProjectExplorer::Internal;
-
-BuildProgress::BuildProgress(TaskWindow *taskWindow, Qt::Orientation orientation) :
- m_contentWidget(new QWidget),
- m_errorIcon(new QLabel),
- m_warningIcon(new QLabel),
- m_errorLabel(new QLabel),
- m_warningLabel(new QLabel),
- m_taskWindow(taskWindow)
-{
- auto contentLayout = new QHBoxLayout;
- contentLayout->setContentsMargins(0, 0, 0, 0);
- contentLayout->setSpacing(0);
- setLayout(contentLayout);
- contentLayout->addWidget(m_contentWidget);
- QBoxLayout *layout;
- if (orientation == Qt::Horizontal)
- layout = new QHBoxLayout;
- else
- layout = new QVBoxLayout;
- layout->setContentsMargins(8, 2, 0, 2);
- layout->setSpacing(2);
- m_contentWidget->setLayout(layout);
- auto errorLayout = new QHBoxLayout;
- errorLayout->setSpacing(2);
- layout->addLayout(errorLayout);
- errorLayout->addWidget(m_errorIcon);
- errorLayout->addWidget(m_errorLabel);
- auto warningLayout = new QHBoxLayout;
- warningLayout->setSpacing(2);
- layout->addLayout(warningLayout);
- warningLayout->addWidget(m_warningIcon);
- warningLayout->addWidget(m_warningLabel);
-
- const QFont f = Utils::StyleHelper::uiFont(Utils::StyleHelper::UiElementCaptionStrong);
- m_errorLabel->setFont(f);
- m_warningLabel->setFont(f);
- m_errorLabel->setPalette(Utils::StyleHelper::sidebarFontPalette(m_errorLabel->palette()));
- m_warningLabel->setPalette(Utils::StyleHelper::sidebarFontPalette(m_warningLabel->palette()));
- m_errorLabel->setProperty("_q_custom_style_disabled", QVariant(true));
- m_warningLabel->setProperty("_q_custom_style_disabled", QVariant(true));
-
- m_errorIcon->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
- m_warningIcon->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
- m_errorIcon->setPixmap(Utils::Icons::CRITICAL_TOOLBAR.pixmap());
- m_warningIcon->setPixmap(Utils::Icons::WARNING_TOOLBAR.pixmap());
-
- m_contentWidget->hide();
-
- connect(m_taskWindow.data(), &TaskWindow::tasksChanged, this, &BuildProgress::updateState);
-}
-
-void BuildProgress::updateState()
-{
- if (!m_taskWindow)
- return;
- int errors = m_taskWindow->errorTaskCount(Constants::TASK_CATEGORY_BUILDSYSTEM)
- + m_taskWindow->errorTaskCount(Constants::TASK_CATEGORY_COMPILE)
- + m_taskWindow->errorTaskCount(Constants::TASK_CATEGORY_DEPLOYMENT);
- bool haveErrors = (errors > 0);
- m_errorIcon->setEnabled(haveErrors);
- m_errorLabel->setEnabled(haveErrors);
- m_errorLabel->setText(QString::number(errors));
- int warnings = m_taskWindow->warningTaskCount(Constants::TASK_CATEGORY_BUILDSYSTEM)
- + m_taskWindow->warningTaskCount(Constants::TASK_CATEGORY_COMPILE)
- + m_taskWindow->warningTaskCount(Constants::TASK_CATEGORY_DEPLOYMENT);
- bool haveWarnings = (warnings > 0);
- m_warningIcon->setEnabled(haveWarnings);
- m_warningLabel->setEnabled(haveWarnings);
- m_warningLabel->setText(QString::number(warnings));
-
- // Hide warnings and errors unless you need them
- m_warningIcon->setVisible(haveWarnings);
- m_warningLabel->setVisible(haveWarnings);
- m_errorIcon->setVisible(haveErrors);
- m_errorLabel->setVisible(haveErrors);
- m_contentWidget->setVisible(haveWarnings || haveErrors);
-}
diff --git a/src/plugins/projectexplorer/buildprogress.h b/src/plugins/projectexplorer/buildprogress.h
deleted file mode 100644
index 1e993dc385..0000000000
--- a/src/plugins/projectexplorer/buildprogress.h
+++ /dev/null
@@ -1,35 +0,0 @@
-// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
-
-#pragma once
-
-#include "taskwindow.h"
-
-#include <QPointer>
-#include <QWidget>
-
-QT_FORWARD_DECLARE_CLASS(QLabel)
-
-namespace ProjectExplorer {
-namespace Internal {
-
-class BuildProgress : public QWidget
-{
- Q_OBJECT
-
-public:
- explicit BuildProgress(TaskWindow *taskWindow, Qt::Orientation orientation = Qt::Vertical);
-
-private:
- void updateState();
-
- QWidget *m_contentWidget;
- QLabel *m_errorIcon;
- QLabel *m_warningIcon;
- QLabel *m_errorLabel;
- QLabel *m_warningLabel;
- QPointer<TaskWindow> m_taskWindow;
-};
-
-} // namespace Internal
-} // namespace ProjectExplorer
diff --git a/src/plugins/projectexplorer/projectexplorer.qbs b/src/plugins/projectexplorer/projectexplorer.qbs
index b4b97f9cd4..5d05a9f98b 100644
--- a/src/plugins/projectexplorer/projectexplorer.qbs
+++ b/src/plugins/projectexplorer/projectexplorer.qbs
@@ -28,7 +28,6 @@ QtcPlugin {
"buildconfiguration.cpp", "buildconfiguration.h",
"buildinfo.cpp", "buildinfo.h",
"buildmanager.cpp", "buildmanager.h",
- "buildprogress.cpp", "buildprogress.h",
"buildpropertiessettings.cpp", "buildpropertiessettings.h",
"buildsettingspropertiespage.cpp", "buildsettingspropertiespage.h",
"buildstep.cpp", "buildstep.h",