diff --git a/src/plugins/axivion/axivion.qrc b/src/plugins/axivion/axivion.qrc index 3b730d38c34..d033d711acf 100644 --- a/src/plugins/axivion/axivion.qrc +++ b/src/plugins/axivion/axivion.qrc @@ -16,6 +16,8 @@ images/button-SV@2x.png images/error.png images/error@2x.png + images/marker.png + images/marker@2x.png images/nodata.png images/nodata@2x.png images/sortAsc.png diff --git a/src/plugins/axivion/axivionperspective.cpp b/src/plugins/axivion/axivionperspective.cpp index 336c672accb..5133ee6e8db 100644 --- a/src/plugins/axivion/axivionperspective.cpp +++ b/src/plugins/axivion/axivionperspective.cpp @@ -60,6 +60,8 @@ using namespace Utils; namespace Axivion::Internal { +static const Icon MARKER_ICON({{":/axivion/images/marker.png", Theme::IconsBaseColor}}); + static QPixmap trendIcon(qint64 added, qint64 removed) { static const QPixmap unchanged = Utils::Icons::NEXT.pixmap(); @@ -844,13 +846,13 @@ void AxivionPerspective::initPerspective() reinitDashboardList({}); }); - auto disableInlineIssuesAct = new QAction(this); - disableInlineIssuesAct->setIcon(ProjectExplorer::Icons::BUILDSTEP_DISABLE_TOOLBAR.icon()); - disableInlineIssuesAct->setToolTip(Tr::tr("Disable inline issues")); - disableInlineIssuesAct->setCheckable(true); - disableInlineIssuesAct->setChecked(false); - connect(disableInlineIssuesAct, &QAction::toggled, - this, [](bool checked) { disableInlineIssues(checked); }); + auto showIssuesAct = new QAction(this); + showIssuesAct->setIcon(MARKER_ICON.icon()); + showIssuesAct->setToolTip(Tr::tr("Show inline issues")); + showIssuesAct->setCheckable(true); + showIssuesAct->setChecked(true); + connect(showIssuesAct, &QAction::toggled, + this, [](bool checked) { enableInlineIssues(checked); }); auto toggleIssuesAct = new QAction(this); toggleIssuesAct->setIcon(Utils::Icons::WARNING_TOOLBAR.icon()); toggleIssuesAct->setToolTip(Tr::tr("Show issue annotations inline")); @@ -871,7 +873,7 @@ void AxivionPerspective::initPerspective() addToolBarAction(reloadDataAct); addToolbarSeparator(); - addToolBarAction(disableInlineIssuesAct); + addToolBarAction(showIssuesAct); addToolBarAction(toggleIssuesAct); addToolbarSeparator(); addToolBarAction(m_showFilterHelp); // FIXME move to IssuesWidget when named filters are added diff --git a/src/plugins/axivion/axivionplugin.cpp b/src/plugins/axivion/axivionplugin.cpp index a42ef16ad28..c419a5d8b9e 100644 --- a/src/plugins/axivion/axivionplugin.cpp +++ b/src/plugins/axivion/axivionplugin.cpp @@ -214,7 +214,7 @@ public: void clearAllMarks(); void updateExistingMarks(); void handleIssuesForFile(const Dto::FileViewDto &fileView); - void disableInlineIssues(bool disable); + void enableInlineIssues(bool enable); void fetchIssueInfo(const QString &id); void onSessionLoaded(const QString &sessionName); @@ -1015,16 +1015,16 @@ void AxivionPluginPrivate::handleIssuesForFile(const Dto::FileViewDto &fileView) } } -void AxivionPluginPrivate::disableInlineIssues(bool disable) +void AxivionPluginPrivate::enableInlineIssues(bool enable) { - if (m_inlineIssuesEnabled != disable) + if (m_inlineIssuesEnabled == enable) return; - m_inlineIssuesEnabled = !disable; + m_inlineIssuesEnabled = enable; - if (disable) - clearAllMarks(); - else + if (enable) handleOpenedDocs(); + else + clearAllMarks(); } static constexpr char SV_PROJECTNAME[] = "Axivion.ProjectName"; @@ -1124,10 +1124,10 @@ void setAnalysisVersion(const QString &version) dd->handleOpenedDocs(); } -void disableInlineIssues(bool disable) +void enableInlineIssues(bool enable) { QTC_ASSERT(dd, return); - dd->disableInlineIssues(disable); + dd->enableInlineIssues(enable); } Utils::FilePath findFileForIssuePath(const Utils::FilePath &issuePath) diff --git a/src/plugins/axivion/axivionplugin.h b/src/plugins/axivion/axivionplugin.h index 950b3b47dd0..a3f26652fb7 100644 --- a/src/plugins/axivion/axivionplugin.h +++ b/src/plugins/axivion/axivionplugin.h @@ -92,7 +92,7 @@ void switchActiveDashboardId(const Utils::Id &toDashboardId); const Utils::Id activeDashboardId(); const std::optional currentDashboardInfo(); void setAnalysisVersion(const QString &version); -void disableInlineIssues(bool disable); +void enableInlineIssues(bool enable); Utils::FilePath findFileForIssuePath(const Utils::FilePath &issuePath); diff --git a/src/plugins/axivion/images/marker.png b/src/plugins/axivion/images/marker.png new file mode 100644 index 00000000000..d6ca3e907df Binary files /dev/null and b/src/plugins/axivion/images/marker.png differ diff --git a/src/plugins/axivion/images/marker@2x.png b/src/plugins/axivion/images/marker@2x.png new file mode 100644 index 00000000000..f8ba58d7dcf Binary files /dev/null and b/src/plugins/axivion/images/marker@2x.png differ