From 74e35d68a86636c51e55470602fa88776a96c3ea Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 16 Jun 2022 13:53:26 +0200 Subject: [PATCH] Utils: Add a convenience function to fill clipboard and selection Relieves the user code side from repeated code which then tends to get forgotten. Change-Id: I079f97a658b55f3c79111df1946b8d72863ce513 Reviewed-by: Eike Ziller --- src/libs/utils/stringutils.cpp | 17 +++++++++++++++++ src/libs/utils/stringutils.h | 8 ++++++++ 2 files changed, 25 insertions(+) diff --git a/src/libs/utils/stringutils.cpp b/src/libs/utils/stringutils.cpp index 75c37bd49f9..30f5c805aa8 100644 --- a/src/libs/utils/stringutils.cpp +++ b/src/libs/utils/stringutils.cpp @@ -29,6 +29,11 @@ #include "hostosinfo.h" #include "qtcassert.h" +#ifdef QT_WIDGETS_LIB +#include +#include +#endif + #include #include #include @@ -469,4 +474,16 @@ QTCREATOR_UTILS_EXPORT QString languageNameFromLanguageCode(const QString &langu return languageName; } +#ifdef QT_WIDGETS_LIB + +QTCREATOR_UTILS_EXPORT void setClipboardAndSelection(const QString &text) +{ + QClipboard *clipboard = QApplication::clipboard(); + clipboard->setText(text); + if (clipboard->supportsSelection()) + clipboard->setText(text, QClipboard::Selection); +} + +#endif + } // namespace Utils diff --git a/src/libs/utils/stringutils.h b/src/libs/utils/stringutils.h index 70cf6738950..fd29223967b 100644 --- a/src/libs/utils/stringutils.h +++ b/src/libs/utils/stringutils.h @@ -122,4 +122,12 @@ QTCREATOR_UTILS_EXPORT QString wildcardToRegularExpression(const QString &origin QTCREATOR_UTILS_EXPORT QString languageNameFromLanguageCode(const QString &languageCode); + +#ifdef QT_WIDGETS_LIB + +// Feeds the global clipboard and, when present, the primary selection +QTCREATOR_UTILS_EXPORT void setClipboardAndSelection(const QString &text); + +#endif + } // namespace Utils