File indexing completed on 2024-05-12 04:34:10
0001 /* 0002 SPDX-FileCopyrightText: 2012 Marco Martin <mart@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "okularplugin.h" 0008 0009 #include "documentitem.h" 0010 #include "gui/certificatemodel.h" 0011 #include "okularsingleton.h" 0012 #include "pageitem.h" 0013 #include "thumbnailitem.h" 0014 0015 #include <QApplication> 0016 #include <QPluginLoader> 0017 #include <QQmlEngine> 0018 0019 void OkularPlugin::registerTypes(const char *uri) 0020 { 0021 if (!qobject_cast<QApplication *>(qApp)) { 0022 qWarning() << "The Okular QML components require a QApplication"; 0023 return; 0024 } 0025 if (QString::fromLocal8Bit(uri) != QLatin1String("org.kde.okular")) { 0026 return; 0027 } 0028 qmlRegisterSingletonType<OkularSingleton>(uri, 2, 0, "Okular", [](QQmlEngine *, QJSEngine *) -> QObject * { return new OkularSingleton; }); 0029 qmlRegisterType<DocumentItem>(uri, 2, 0, "DocumentItem"); 0030 qmlRegisterType<PageItem>(uri, 2, 0, "PageItem"); 0031 qmlRegisterType<ThumbnailItem>(uri, 2, 0, "ThumbnailItem"); 0032 qmlRegisterUncreatableType<CertificateModel>(uri, 2, 0, "CertificateModel", QStringLiteral("Do not create objects of this type.")); 0033 }