diff options
author | Nicolas Werner <nicolas.werner@hotmail.de> | 2022-06-16 00:49:12 +0200 |
---|---|---|
committer | Nicolas Werner <nicolas.werner@hotmail.de> | 2022-06-16 00:49:12 +0200 |
commit | f8e6c9c53cfeeb422b70e476671fd1c30d4a9798 (patch) | |
tree | ec71d941cbba1d1d12a13328439c247a26dc6a7a | |
parent | Fix settings groups not being terminated properly on logout (diff) | |
download | nheko-f8e6c9c53cfeeb422b70e476671fd1c30d4a9798.tar.xz |
Speedup provider compilation
-rwxr-xr-x | scripts/emoji_codegen.py | 2 | ||||
-rw-r--r-- | src/emoji/EmojiModel.cpp | 2 | ||||
-rw-r--r-- | src/emoji/Provider.cpp | 2 | ||||
-rw-r--r-- | src/emoji/Provider.h | 7 |
4 files changed, 5 insertions, 8 deletions
diff --git a/scripts/emoji_codegen.py b/scripts/emoji_codegen.py index f54b03d0..a0758454 100755 --- a/scripts/emoji_codegen.py +++ b/scripts/emoji_codegen.py @@ -14,7 +14,7 @@ class Emoji(object): def generate_qml_list(**kwargs): tmpl = Template(''' -const QVector<Emoji> emoji::Provider::emoji = { +const std::array<Emoji, {{ sum([len(c[1]) for c in kwargs.items()]) }}> emoji::Provider::emoji = { {%- for c in kwargs.items() %} // {{ c[0].capitalize() }} {%- for e in c[1] %} diff --git a/src/emoji/EmojiModel.cpp b/src/emoji/EmojiModel.cpp index 6f9ea9db..3381f767 100644 --- a/src/emoji/EmojiModel.cpp +++ b/src/emoji/EmojiModel.cpp @@ -45,7 +45,7 @@ EmojiModel::roleNames() const int EmojiModel::rowCount(const QModelIndex &parent) const { - return parent == QModelIndex() ? Provider::emoji.count() : 0; + return parent == QModelIndex() ? Provider::emoji.size() : 0; } QVariant diff --git a/src/emoji/Provider.cpp b/src/emoji/Provider.cpp index f5e7c0e8..f98e5d34 100644 --- a/src/emoji/Provider.cpp +++ b/src/emoji/Provider.cpp @@ -7,7 +7,7 @@ using namespace emoji; -const QVector<Emoji> emoji::Provider::emoji = { +const std::array<Emoji, 3650> emoji::Provider::emoji = { // People Emoji{QStringLiteral(u"\U0001F600"), QStringLiteral(u"grinning"), diff --git a/src/emoji/Provider.h b/src/emoji/Provider.h index 07a513ae..566c53a0 100644 --- a/src/emoji/Provider.h +++ b/src/emoji/Provider.h @@ -7,10 +7,7 @@ #pragma once #include <QObject> -#include <QSet> -#include <QString> -#include <QVector> -#include <vector> +#include <array> namespace emoji { Q_NAMESPACE @@ -49,7 +46,7 @@ class Provider { public: // all emoji for QML purposes - static const QVector<Emoji> emoji; + static const std::array<Emoji, 3650> emoji; }; } // namespace emoji |