From 3817b7cf273157dc45d0f3a159442ebeb277af8a Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Wed, 11 Sep 2024 10:05:02 +0200 Subject: [PATCH] Axivion: Remove one intermediate widget Dashboard overview has been removed, so there is no need for keeping the stacked widget. Minor preparation for moving the issues widget to a perspective. Change-Id: I3e4661ff39e432352f8e8a8e622aff157cb0b349 Reviewed-by: Jarek Kobus --- src/plugins/axivion/axivionoutputpane.cpp | 48 ++++++++--------------- 1 file changed, 17 insertions(+), 31 deletions(-) diff --git a/src/plugins/axivion/axivionoutputpane.cpp b/src/plugins/axivion/axivionoutputpane.cpp index 560f80bfa46..4c23b62e367 100644 --- a/src/plugins/axivion/axivionoutputpane.cpp +++ b/src/plugins/axivion/axivionoutputpane.cpp @@ -42,7 +42,6 @@ #include #include #include -#include #include #include @@ -766,22 +765,20 @@ public: setDisplayName(Tr::tr("Axivion")); setPriorityInStatusBar(-50); - m_outputWidget = new QStackedWidget; - IssuesWidget *issuesWidget = new IssuesWidget(m_outputWidget); - m_outputWidget->addWidget(issuesWidget); + m_issuesWidget = new IssuesWidget; - QPalette pal = m_outputWidget->palette(); + QPalette pal = m_issuesWidget->palette(); pal.setColor(QPalette::Window, creatorColor(Theme::Color::BackgroundColorNormal)); - m_outputWidget->setPalette(pal); + m_issuesWidget->setPalette(pal); - m_disableInlineIssues = new QToolButton(m_outputWidget); + m_disableInlineIssues = new QToolButton(m_issuesWidget); m_disableInlineIssues->setIcon(ProjectExplorer::Icons::BUILDSTEP_DISABLE.icon()); m_disableInlineIssues->setToolTip(Tr::tr("Disable inline issues")); m_disableInlineIssues->setCheckable(true); m_disableInlineIssues->setChecked(false); connect(m_disableInlineIssues, &QToolButton::toggled, this, [](bool checked) { disableInlineIssues(checked); }); - m_toggleIssues = new QToolButton(m_outputWidget); + m_toggleIssues = new QToolButton(m_issuesWidget); m_toggleIssues->setIcon(Utils::Icons::WARNING_TOOLBAR.icon()); m_toggleIssues->setToolTip(Tr::tr("Show issue annotations inline")); m_toggleIssues->setCheckable(true); @@ -796,17 +793,17 @@ public: ~AxivionOutputPane() { - if (!m_outputWidget->parent()) - delete m_outputWidget; + if (!m_issuesWidget->parent()) + delete m_issuesWidget; } QWidget *outputWidget(QWidget *parent) final { - if (m_outputWidget) - m_outputWidget->setParent(parent); + if (m_issuesWidget) + m_issuesWidget->setParent(parent); else QTC_CHECK(false); - return m_outputWidget; + return m_issuesWidget; } QList toolBarWidgets() const final @@ -826,38 +823,27 @@ public: void handleShowIssues(const QString &kind) { - QTC_ASSERT(m_outputWidget, return); - m_outputWidget->setCurrentIndex(0); - if (auto issues = static_cast(m_outputWidget->widget(0))) - issues->updateUi(kind); + m_issuesWidget->updateUi(kind); } void handleShowFilterException(const QString &errorMessage) { - QTC_ASSERT(m_outputWidget, return); - if (auto issues = static_cast(m_outputWidget->widget(0))) - issues->showOverlay(errorMessage); + m_issuesWidget->showOverlay(errorMessage); } void reinitDashboardList(const QString &preferredProject) { - QTC_ASSERT(m_outputWidget, return); - if (auto issues = static_cast(m_outputWidget->widget(0))) - issues->initDashboardList(preferredProject); + m_issuesWidget->initDashboardList(preferredProject); } void resetDashboard() { - QTC_ASSERT(m_outputWidget, return); - if (auto issues = static_cast(m_outputWidget->widget(0))) - issues->resetDashboard(); + m_issuesWidget->resetDashboard(); } bool handleContextMenu(const QString &issue, const ItemViewEvent &e) { - auto issues = static_cast(m_outputWidget->widget(0)); - std::optional tableInfoOpt = issues ? issues->currentTableInfo() - : std::nullopt; + std::optional tableInfoOpt = m_issuesWidget->currentTableInfo(); if (!tableInfoOpt) return false; const QString baseUri = tableInfoOpt->issueBaseViewUri.value_or(QString()); @@ -869,7 +855,7 @@ public: QUrl issueBaseUrl = info->source.resolved(baseUri).resolved(issue); QUrl dashboardUrl = info->source.resolved(baseUri); - const IssueListSearch search = issues->searchFromUi(); + const IssueListSearch search = m_issuesWidget->searchFromUi(); issueBaseUrl.setQuery(search.toUrlQuery(QueryMode::SimpleQuery)); dashboardUrl.setQuery(search.toUrlQuery(QueryMode::FilterQuery)); @@ -896,7 +882,7 @@ public: } private: - QStackedWidget *m_outputWidget = nullptr; + IssuesWidget *m_issuesWidget = nullptr; QToolButton *m_toggleIssues = nullptr; QToolButton *m_disableInlineIssues = nullptr; };