diff options
author | Sergey Morozov <dev@gres.biz> | 2019-11-03 23:00:16 +0300 |
---|---|---|
committer | Sergey Morozov <dev@gres.biz> | 2019-12-04 18:15:41 +0000 |
commit | 0aa95576c282b59fa05a23d1f40da0d270547ae7 (patch) | |
tree | a7dceb2dc9ae5f989a8a35a418c88e95b2cf4eb0 /src/plugins/cppcheck/cppchecktool.cpp | |
parent | 07490e76de2ee74df342849978ecafee18c53527 (diff) | |
download | qt-creator-0aa95576c282b59fa05a23d1f40da0d270547ae7.tar.gz |
Cppcheck: Add ability to manually run cppcheck
Run cppcheck on selected files from current project via "Analyze"->"Cppcheck...."
Show results in a separate view in the same manner as ClangTools plugin.
Fixes: QTCREATORBUG-21673
Change-Id: Ibcaf4057a387a990f1da59025f15ba58f996953f
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Diffstat (limited to 'src/plugins/cppcheck/cppchecktool.cpp')
-rw-r--r-- | src/plugins/cppcheck/cppchecktool.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/plugins/cppcheck/cppchecktool.cpp b/src/plugins/cppcheck/cppchecktool.cpp index 02cb1d68de..ded937c61e 100644 --- a/src/plugins/cppcheck/cppchecktool.cpp +++ b/src/plugins/cppcheck/cppchecktool.cpp @@ -23,7 +23,6 @@ ** ****************************************************************************/ -#include "cppcheckconstants.h" #include "cppcheckdiagnostic.h" #include "cppcheckoptions.h" #include "cppcheckrunner.h" @@ -45,10 +44,12 @@ namespace Cppcheck { namespace Internal { -CppcheckTool::CppcheckTool(CppcheckTextMarkManager &marks) : - m_marks(marks), +CppcheckTool::CppcheckTool(CppcheckDiagnosticManager &manager, + const Core::Id &progressId) : + m_manager(manager), m_progressRegexp("^.* checked (\\d+)% done$"), - m_messageRegexp("^(.+),(\\d+),(\\w+),(\\w+),(.*)$") + m_messageRegexp("^(.+),(\\d+),(\\w+),(\\w+),(.*)$"), + m_progressId(progressId) { m_runner = std::make_unique<CppcheckRunner>(*this); QTC_ASSERT(m_progressRegexp.isValid(), return); @@ -246,8 +247,7 @@ void CppcheckTool::startParsing() m_progress = std::make_unique<QFutureInterface<void>>(); const Core::FutureProgress *progress = Core::ProgressManager::addTask( - m_progress->future(), QObject::tr("Cppcheck"), - Constants::CHECK_PROGRESS_ID); + m_progress->future(), QObject::tr("Cppcheck"), m_progressId); QObject::connect(progress, &Core::FutureProgress::canceled, this, [this]{stop({});}); m_progress->setProgressRange(0, 100); @@ -310,7 +310,7 @@ void CppcheckTool::parseErrorLine(const QString &line) diagnostic.checkId = match.captured(Id); diagnostic.message = match.captured(Message); if (diagnostic.isValid()) - m_marks.add(diagnostic); + m_manager.add(diagnostic); } void CppcheckTool::finishParsing() |