DPS/include/WebEventDispatch.h

41 lines
854 B
C
Raw Permalink Normal View History

2025-06-23 18:01:09 +08:00
#pragma once
2025-06-23 10:41:33 +08:00
#include <QObject>
#include <unordered_map>
#include <string>
#include "EventModule.h"
/**
* @brief
*/
class WEBQT_EXPORT WebEventDispatch : public QObject
{
Q_OBJECT
public:
/**
* @brief WebEngineView 
* @param parent原生父类对象
*/
WebEventDispatch(QObject* parent);
~WebEventDispatch();
signals:
void signalToWeb(const QString& json); // QT给JS发送数据
public slots:
QString msgToQt(const QString& msg);
/**
* @brief
* @param eventModule
*/
void addEventModule(EventModule* eventModule, bool deleted = true);
private:
struct EventData {
EventModule* eventModule;
bool deleted;
};
static void brostcastToWeb(const QString& json);
std::unordered_map<std::string, EventData> _events;
friend class EventModule;
};