/
erhoof
/
telegraf
Обзор
Документация
Войти
/
erhoof
/
telegraf
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/tdlib/tdlibstate.h
80 строк
4 KB
mbarashkov
Закомментирован код связанный с flood_wait, т.к. он не вызывается
06 июл 2025, 14:06
06 июл 2025, 14:06
2e7ae02
Код
Авторство
О чём код?
#pragma once #include <QObject> #include <QMap> #include <QVariantMap> #include "tdlibconstants.h" #include "../data/tdlibdatarepository.h" class TDLibState : public QObject { Q_OBJECT public: static QObject* getSingleton(QQmlEngine*, QJSEngine*) { return instance; } explicit TDLibState(TDLibDataRepository* cache, QObject *parent = nullptr); static TDLibState* getInstance() { return instance; }; Q_PROPERTY(TDLibConstants::AuthorizationState authorizationState READ getAuthorizationState NOTIFY authorizationStateChanged) Q_PROPERTY(qlonglong myUserId READ getMyUserId NOTIFY myUserIdChanged) //bool floodWait; bool joinChatRequested; bool loggingOut; QString activeChatSearchName; TDLibConstants::NetworkType networkType; Q_INVOKABLE TDLibConstants::UserPrivacySettingRule getUserPrivacySettingRule(const TDLibConstants::UserPrivacySetting setting) const; void setUserPrivacySettingRule(const TDLibConstants::UserPrivacySetting setting, const TDLibConstants::UserPrivacySettingRule rule); qlonglong getMyUserId() const { return myUserId; }; Q_INVOKABLE QVariantMap getMyUserInformation() const { return myUserInformation; } void setMyUserIdAndInformation(const qlonglong userId, const QVariantMap &userInformation); void setMyUserInformationStatus(const QVariantMap &userStatusInformation); int getClientId() const { return tdLibClientId; }; Q_INVOKABLE QString getTdLibVersion() const { return tdlibVersionString; } void setTdLibVersion(const QString version) { tdlibVersionString = version; } Q_INVOKABLE QVariantMap getAuthorizationStateData() const { return authorizationStateData; }; Q_INVOKABLE TDLibConstants::AuthorizationState getAuthorizationState() { return authorizationState; }; void setAuthorizationStateAndData(const TDLibConstants::AuthorizationState authorizationState, const QVariantMap &authorizationStateData); Q_INVOKABLE TDLibConstants::ConnectionState getConnectionState() { return connectionState; }; void setConnectionState(TDLibConstants::ConnectionState connectionState); void updateOption(const QString &optionName, const QVariant &optionValue); void updateMyUser(const QVariantMap &updatedUserInformation); Q_INVOKABLE QString getUrlPrefix() const; bool getJoinChatRequested() const; void registerJoinChat(); void setUnreadMessageInformation(const QVariantMap& newValue) { unreadMessageInformation = newValue; }; void setUnreadChatInformation(const QVariantMap& newValue) { unreadChatInformation = newValue; }; Q_INVOKABLE QVariantMap getUnreadMessageInformation() { return unreadMessageInformation; }; Q_INVOKABLE QVariantMap getUnreadChatInformation() { return unreadChatInformation; }; signals: void authorizationStateChanged(const TDLibConstants::AuthorizationState &authorizationState, const QVariantMap &authorizationStateData); void connectionStateChanged(const TDLibConstants::ConnectionState &connectionState); void myUserIdChanged(const qlonglong ownUserId); void myUserUpdated(const QVariantMap &userInformation); private: int tdLibClientId; TDLibDataRepository* tdLibDataRepository; QMap<TDLibConstants::UserPrivacySetting, TDLibConstants::UserPrivacySettingRule> userPrivacySettingRules; QString tdlibVersionString; QVariantMap myUserInformation; qlonglong myUserId; TDLibConstants::AuthorizationState authorizationState; QVariantMap authorizationStateData; TDLibConstants::ConnectionState connectionState; QVariantMap options; QVariantMap unreadMessageInformation; QVariantMap unreadChatInformation; static TDLibState* instance; };