summaryrefslogtreecommitdiff
path: root/src/libs/utils/stringutils.h
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2022-11-29 15:15:12 +0100
committerhjk <hjk@qt.io>2022-11-30 06:57:02 +0000
commit4417c48e7b8f9564bb780b14b6ddfb9a209b7c87 (patch)
treeaa45a4c9805dfcf1538ad9e5ccd0ff9eae85033b /src/libs/utils/stringutils.h
parentb183efc94ac0e5df2bc1c9892eedde5e499c415e (diff)
downloadqt-creator-4417c48e7b8f9564bb780b14b6ddfb9a209b7c87.tar.gz
Utils: Remove FilePath::operator+()
This was a alias for .stringAppended(), but can be used too easily when .pathAppended() is meant. Change-Id: Ia3b64d39828d4074b43d87c923ce3a6a87038948 Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Diffstat (limited to 'src/libs/utils/stringutils.h')
-rw-r--r--src/libs/utils/stringutils.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/libs/utils/stringutils.h b/src/libs/utils/stringutils.h
index fa1d4624b1..38019bf9c7 100644
--- a/src/libs/utils/stringutils.h
+++ b/src/libs/utils/stringutils.h
@@ -16,6 +16,8 @@ QT_END_NAMESPACE
namespace Utils {
+class FilePath;
+
// Create a usable settings key from a category,
// for example Editor|C++ -> Editor_C__
QTCREATOR_UTILS_EXPORT QString settingsKey(const QString &category);
@@ -68,15 +70,18 @@ QTCREATOR_UTILS_EXPORT QString expandMacros(const QString &str, AbstractMacroExp
QTCREATOR_UTILS_EXPORT int parseUsedPortFromNetstatOutput(const QByteArray &line);
+QTCREATOR_UTILS_EXPORT QString appendHelper(const QString &base, int n);
+QTCREATOR_UTILS_EXPORT FilePath appendHelper(const FilePath &base, int n);
+
template<typename T>
T makeUniquelyNumbered(const T &preferred, const std::function<bool(const T &)> &isOk)
{
if (isOk(preferred))
return preferred;
int i = 2;
- T tryName = preferred + QString::number(i);
+ T tryName = appendHelper(preferred, i);
while (!isOk(tryName))
- tryName = preferred + QString::number(++i);
+ tryName = appendHelper(preferred, ++i);
return tryName;
}