Sort labels in RSS Downloader dialog, closes #3140.

This commit is contained in:
Chocobo1
2015-06-20 15:06:49 +08:00
parent 65d3ca8c3f
commit cf91685f6f
3 changed files with 101 additions and 6 deletions

View File

@@ -31,6 +31,10 @@
#define UTILS_STRING_H
#include <string>
#include <QtGlobal>
#if (QT_VERSION >= QT_VERSION_CHECK(5, 2, 0))
#include <QCollator>
#endif
class QString;
class QByteArray;
@@ -41,12 +45,25 @@ namespace Utils
{
QString fromStdString(const std::string &str);
std::string toStdString(const QString &str);
bool naturalSort(QString left, QString right, bool &result);
QString fromDouble(double n, int precision);
// Implements constant-time comparison to protect against timing attacks
// Taken from https://crackstation.net/hashing-security.htm
bool slowEquals(const QByteArray &a, const QByteArray &b);
bool naturalSort(const QString &left, const QString &right, bool &result);
class NaturalCompare
{
public:
NaturalCompare();
bool operator()(const QString &l, const QString &r);
bool lessThan(const QString &left, const QString &right);
#if (QT_VERSION >= QT_VERSION_CHECK(5, 2, 0))
private:
QCollator m_collator;
#endif
};
}
}