diff options
author | Andre Hartmann <aha_1980@gmx.de> | 2022-02-22 08:24:34 +0100 |
---|---|---|
committer | André Hartmann <aha_1980@gmx.de> | 2022-02-22 08:32:18 +0000 |
commit | a8e44df68143bfd43e5c9b52a8d3a0a703caaffd (patch) | |
tree | e57dd064d9e37b2d53854af9c1abff5b481fef3c /src/plugins/cppcheck/cppchecktextmark.cpp | |
parent | d502f78c4f25f75b5f7f8512b5ed51c50560388b (diff) | |
download | qt-creator-a8e44df68143bfd43e5c9b52a8d3a0a703caaffd.tar.gz |
CppCheck: Add copy to clipboard action to tooltip
Fixes: QTCREATORBUG-27092
Change-Id: Ie5b504b0b23c54fd72d56df8ff72971864475ee8
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src/plugins/cppcheck/cppchecktextmark.cpp')
-rw-r--r-- | src/plugins/cppcheck/cppchecktextmark.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/cppcheck/cppchecktextmark.cpp b/src/plugins/cppcheck/cppchecktextmark.cpp index 55d5b43f4c..d4882e7f05 100644 --- a/src/plugins/cppcheck/cppchecktextmark.cpp +++ b/src/plugins/cppcheck/cppchecktextmark.cpp @@ -29,6 +29,9 @@ #include <utils/utilsicons.h> +#include <QAction> +#include <QApplication> +#include <QClipboard> #include <QMap> namespace Cppcheck { @@ -77,6 +80,19 @@ CppcheckTextMark::CppcheckTextMark (const Diagnostic &diagnostic) setToolTip(toolTipText(diagnostic.severityText)); setLineAnnotation(diagnostic.message); setSettingsPage(Constants::OPTIONS_PAGE_ID); + + // Copy to clipboard action + QAction *action = new QAction(); + action->setIcon(QIcon::fromTheme("edit-copy", Utils::Icons::COPY.icon())); + action->setToolTip(tr("Copy to Clipboard")); + QObject::connect(action, &QAction::triggered, [diagnostic]() { + const QString text = QString("%1:%2: %3") + .arg(diagnostic.fileName.toUserOutput()) + .arg(diagnostic.lineNumber) + .arg(diagnostic.message); + QApplication::clipboard()->setText(text); + }); + setActions({action}); } QString CppcheckTextMark::toolTipText(const QString &severityText) const |