// SPDX-FileCopyrightText: 2015 - 2022 UnionTech Software Technology Co., Ltd. // // SPDX-License-Identifier: GPL-3.0-or-later #ifndef DP4LOGINMODULE_H #define DP4LOGINMODULE_H #include "login_module_interface_v2.h" class Dp4LoginWidget; namespace dss { namespace module_v2 { class Dp4LoginModule: public QObject, public LoginModuleInterfaceV2 { Q_OBJECT Q_PLUGIN_METADATA(IID "com.deepin.dde.shell.Modules_v2.Login" FILE "login.json") Q_INTERFACES(dss::module_v2::LoginModuleInterfaceV2) public: explicit Dp4LoginModule(QObject *parent = nullptr); ~Dp4LoginModule() override; void init() override; ModuleType type() const override { return LoginType; } inline QString key() const override { return "dp4-login"; } void setAppData(AppDataPtr appData) override; void setAuthCallback(AuthCallbackFun callback) override; void setMessageCallback(MessageCallbackFunc msgCallback) override; QWidget *content() override; //void setCallback(LoginCallBack *callback) override; QString message(const QString &) override; void reset() override; private: void installTranslator(); private: Dp4LoginWidget *m_loginWidget; AppDataPtr m_appData; AuthCallbackFun m_callback; MessageCallbackFunc m_msgCallback; }; } } #endif //ASSIST_LOGIN_MODULE_H