File indexing completed on 2024-05-12 17:08:29

0001 /*
0002  * SPDX-FileCopyrightText: 2020 Arjen Hiemstra <ahiemstra@heimr.nl>
0003  *
0004  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0005  */
0006 
0007 #include "PagePlugin.h"
0008 
0009 #include "FaceLoader.h"
0010 #include "FacesModel.h"
0011 #include "PageDataModel.h"
0012 #include "PageDataObject.h"
0013 #include "PageSortModel.h"
0014 #include "PagesModel.h"
0015 #include "WidgetExporter.h"
0016 
0017 #include <QQmlEngine>
0018 
0019 void PagePlugin::registerTypes(const char *uri)
0020 {
0021     Q_ASSERT(QLatin1String(uri) == QLatin1String("org.kde.ksysguard.page"));
0022 
0023     qmlRegisterType<PageDataModel>(uri, 1, 0, "PageDataModel");
0024     qmlRegisterType<PagesModel>(uri, 1, 0, "PagesModel");
0025     qmlRegisterType<FaceLoader>(uri, 1, 0, "FaceLoader");
0026     qmlRegisterType<PageSortModel>(uri, 1, 0, "PageSortModel");
0027     qmlRegisterType<FacesModel>(uri, 1, 0, "FacesModel");
0028     qmlRegisterSingletonType<WidgetExporter>(uri, 1, 0, "WidgetExporter", [](QQmlEngine *, QJSEngine *) {
0029         return new WidgetExporter();
0030     });
0031 
0032     qmlRegisterUncreatableType<PageDataObject>(uri, 1, 0, "PageDataObject", QStringLiteral("Used for data storage"));
0033 }