/
s5z6
/
telegraf
Обзор
Документация
Войти
/
s5z6
/
telegraf
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/data/groupsmodel.h
54 строки
1 KB
mbarashkov
Упрощен код верификации групп после изменений с серверной стороны
26 июн 2025, 11:29
26 июн 2025, 11:29
c3e6f4c
Код
Авторство
О чём код?
#pragma once #include <QObject> #include "groupmodel.h" class GroupsModel : public QObject { Q_OBJECT public: static QObject* getSingleton(QQmlEngine*, QJSEngine*) { return instance; } enum class GroupType { Basic, Supergroup }; explicit GroupsModel(QObject *parent = nullptr); ~GroupsModel(); void reset() { _basicGroups.clear(); _superGroups.clear(); } void updateGroup(qlonglong groupId, const QVariantMap &groupInfo, const GroupType groupType); Q_INVOKABLE QVariantMap getBasicGroup(qlonglong groupId) const; Q_INVOKABLE QVariantMap getSuperGroup(qlonglong groupId) const; const GroupModel *getGroup(qlonglong groupId) const; Q_INVOKABLE bool isVerified(qlonglong groupId) const { auto group = _superGroups.value(groupId); if(group != Q_NULLPTR) { return group->isVerified(); } return false; } Q_INVOKABLE bool isRKNVerified(qlonglong groupId) const { auto group = _superGroups.value(groupId); if(group != Q_NULLPTR) { return group->isRKNVerified(); } return false; } static GroupsModel* getInstance() { return instance; }; signals: void basicGroupUpdated(qlonglong groupId); void superGroupUpdated(qlonglong groupId); private: QHash<qlonglong, GroupModel *> _basicGroups; QHash<qlonglong, GroupModel *> _superGroups; static GroupsModel* instance; };