#ifndef MIXXX_STRING_H #define MIXXX_STRING_H #include #include #include #include // The default comparison of strings for sorting. class StringCollator { public: explicit StringCollator(QLocale locale = QLocale()) : m_collator(std::move(locale)) { m_collator.setCaseSensitivity(Qt::CaseInsensitive); } int compare(const QString& s1, const QString& s2) const { return m_collator.compare(s1, s2); } int compare(const QStringRef& s1, const QStringRef& s2) const { return m_collator.compare(s1, s2); } private: QCollator m_collator; }; #endif // MIXXX_STRING_H