diff --git a/src/tiled/id.cpp b/src/tiled/id.cpp index 5caa93438b..44ca626cf5 100644 --- a/src/tiled/id.cpp +++ b/src/tiled/id.cpp @@ -41,7 +41,11 @@ class StringHash {} QByteArray string; +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) uint hash; +#else + size_t hash; +#endif }; static bool operator==(const StringHash &sh1, const StringHash &sh2) @@ -49,13 +53,17 @@ static bool operator==(const StringHash &sh1, const StringHash &sh2) return sh1.string == sh2.string; } +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) static uint qHash(const StringHash &sh) +#else +static size_t qHash(const StringHash &sh) +#endif { return sh.hash; } -static QHash stringFromId; -static QHash idFromString; +static QHash stringFromId; +static QHash idFromString; Id::Id(const char *name) diff --git a/src/tiled/id.h b/src/tiled/id.h index 3a54711e2c..c6b19ff056 100644 --- a/src/tiled/id.h +++ b/src/tiled/id.h @@ -20,6 +20,7 @@ #pragma once +#include #include #include @@ -45,13 +46,16 @@ class Id private: uint mId; - friend uint qHash(Id id) Q_DECL_NOTHROW; + friend auto qHash(Id id) Q_DECL_NOTHROW + { + return qHash(id.mId, 0); + } }; -inline uint qHash(Id id) Q_DECL_NOTHROW +inline QDebug operator<<(QDebug debug, Id id) { - return id.mId; + return debug << id.name(); } QStringList idsToNames(const QList &ids);