aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/common/utils.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:57 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:57 -0400
commit65d5f68cc6dc81799c5a5d90400a2c1f0dd02547 (patch)
tree6f245ba901b87ef42fed69965aea22f5eea6b590 /SQLiteStudio3/coreSQLiteStudio/common/utils.cpp
parentaeb6bad01630d325a4e768e798a7a6d44e18fdaf (diff)
parent5d9314f134ddd3dc4c853e398ac90ba247fb2e4f (diff)
Merge tag 'upstream/3.1.0'
Upstream version 3.1.0 # gpg: Signature made Mon 13 Jun 2016 06:42:54 PM EDT using RSA key ID EBE9BD91 # gpg: Good signature from "Unit 193 <unit193@gmail.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.org>" # gpg: aka "Unit 193 <unit193@ubuntu.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.com>"
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/common/utils.cpp')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/common/utils.cpp43
1 files changed, 40 insertions, 3 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/common/utils.cpp b/SQLiteStudio3/coreSQLiteStudio/common/utils.cpp
index f2b3d1c..6cf1892 100644
--- a/SQLiteStudio3/coreSQLiteStudio/common/utils.cpp
+++ b/SQLiteStudio3/coreSQLiteStudio/common/utils.cpp
@@ -11,6 +11,8 @@
#include <QDebug>
#include <QRegularExpression>
#include <QDir>
+#include <QByteArray>
+#include <QDataStream>
#ifdef Q_OS_LINUX
#include <sys/utsname.h>
@@ -214,12 +216,12 @@ qint64 Range::length() const
return to - from + 1;
}
-QString generateUniqueName(const QString &baseName, const QStringList &existingNames)
+QString generateUniqueName(const QString& baseName, const QStringList& existingNames, Qt::CaseSensitivity cs)
{
QString name = baseName;
int i = 0;
- while (existingNames.contains(name))
- name = baseName+QString::number(i++);
+ while (existingNames.contains(name, cs))
+ name = baseName + QString::number(i++);
return name;
}
@@ -887,3 +889,38 @@ QString decryptRsa(const QString& input, const QString& modulus, const QString&
std::string result = RSA::Decrypt(inputStdStr, key);
return QString::fromStdString(result);
}
+
+QStringList concat(const QList<QStringList>& list)
+{
+ QStringList result;
+ for (const QStringList& item : list)
+ result.append(item);
+
+ return result;
+}
+
+QString doubleToString(double val)
+{
+ return QString::number(val, 'g', 16);
+}
+
+void sortWithReferenceList(QList<QString>& listToSort, const QList<QString>& referenceList, Qt::CaseSensitivity cs)
+{
+ qSort(listToSort.begin(), listToSort.end(), [referenceList, cs](const QString& s1, const QString& s2) -> bool
+ {
+ int idx1 = indexOf(referenceList, s1, cs);
+ int idx2 = indexOf(referenceList, s2, cs);
+ if (idx1 == -1 || idx2 == -1)
+ {
+ if (idx1 == -1 && idx2 == -1)
+ return false;
+
+ return (idx1 == -1);
+ }
+
+ if (idx1 == idx2)
+ return false;
+
+ return (idx1 > idx2);
+ });
+}