Qt evet integrated with QML
-
Hi,
I write simple application in QML and Qt. To exchnage data with visu I use
SystemControllerclass which one is registered in QML.
InSystemuControllerconstructor I am creating my objects like: "http networkclient", "serial slave1" etc, etc.. and in this constructor I am doing connecting beetwen themNow I must use key event filter., but I do not know how expose data from
myKeyEventFilterobject to object created in SystemController . Below is my main.cppint main(int argc, char *argv[]) { QGuiApplication app(argc, argv); MyKeyEventFilter myKeyEventFilter; app.installEventFilter(&myKeyEventFilter); //QML qmlRegisterType< SystemController > ("MyController",1,0,"SystemController"); QQmlApplicationEngine engine; const QUrl url(QStringLiteral("qrc:/main.qml")); QObject::connect(&engine, &QQmlApplicationEngine::objectCreated, &app, [url](QObject *obj, const QUrl &objUrl) { if (!obj && url == objUrl) QCoreApplication::exit(-1); }, Qt::QueuedConnection); engine.load(url); return app.exec(); }for example in SystemController I have:
SystemController::SystemController(QObject *parent) : QObject{parent} { NetworkWorker *networkWorker = new NetworkWorker; connect(networkWorker, &NetworkWorker::companyDetail, this, &SystemController::companyDetails); }So I need emit signal form
myKeyEventFiltertonetworkWorker. And innetworkWorkeremit signal companyDetails toSystemController....I can not create second
networkWorkerobject in main.cpp and do connect because I will have two different objectsI would be really grateful for any tips and samples ...