123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #include <QGuiApplication>
- #include <QGuiApplication>
- #include <QQmlApplicationEngine>
- #include <QQmlContext>
- #include "simplechat.qpb.h"
- #include "simplechatengine.h"
- #include <QMetaProperty>
- #include <QQmlPropertyMap>
- #include <QCryptographicHash>
- using namespace qtprotobuf::examples;
- int main(int argc, char *argv[])
- {
- QtProtobuf::qRegisterProtobufTypes();
- QGuiApplication app(argc, argv);
- QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
- qmlRegisterUncreatableType<ChatMessageModel>("examples.simplechat", 1, 0, "ChatMessageModel", "");
- qmlRegisterSingletonType<SimpleChatEngine>("examples.simplechat", 1, 0, "SimpleChatEngine", [](QQmlEngine *engine, QJSEngine *) -> QObject *{
- static SimpleChatEngine scEngine;
- engine->setObjectOwnership(&scEngine, QQmlEngine::CppOwnership);
- return &scEngine;
- });
- QQmlApplicationEngine engine;
- engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
- if (engine.rootObjects().isEmpty())
- return -1;
- return app.exec();
- }
|