19 #include "DBusGreeter.h"
20 #include "DBusGreeterList.h"
22 #include "UsersModel.h"
23 #include <libusermetricsoutput/ColorTheme.h>
24 #include <libusermetricsoutput/UserMetrics.h>
25 #include <QLightDM/UsersModel>
27 #include <QAbstractItemModel>
28 #include <QDBusConnection>
29 #include <QtQml/qqml.h>
31 static QObject *greeter_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
34 Q_UNUSED(scriptEngine)
36 Greeter *greeter = new Greeter();
43 static QObject *users_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
46 Q_UNUSED(scriptEngine)
47 return new UsersModel();
50 static QObject *infographic_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
53 Q_UNUSED(scriptEngine)
54 return UserMetricsOutput::UserMetrics::getInstance();
57 void IntegratedLightDMPlugin::registerTypes(const
char *uri)
59 qmlRegisterType<QAbstractItemModel>();
60 qmlRegisterType<UserMetricsOutput::ColorTheme>();
62 Q_ASSERT(uri == QLatin1String(
"IntegratedLightDM"));
63 qRegisterMetaType<QLightDM::Greeter::MessageType>(
"QLightDM::Greeter::MessageType");
64 qRegisterMetaType<QLightDM::Greeter::PromptType>(
"QLightDM::Greeter::PromptType");
65 qmlRegisterSingletonType<Greeter>(uri, 0, 1,
"Greeter", greeter_provider);
66 qmlRegisterSingletonType<UsersModel>(uri, 0, 1,
"Users", users_provider);
67 qmlRegisterUncreatableType<QLightDM::UsersModel>(uri, 0, 1,
"UserRoles", QStringLiteral(
"Type is not instantiable"));
68 qmlRegisterSingletonType<UserMetricsOutput::UserMetrics>(uri, 0, 1,
"Infographic", infographic_provider);