File indexing completed on 2024-05-05 04:41:57

0001 // SPDX-FileCopyrightText: 2022 Devin Lin <devin@kde.org>
0002 // SPDX-FileCopyrightText: 2022 Carl Schwan <carl@carlschwan.eu>
0003 // SPDX-License-Identifier: LGPL-2.0-or-later
0004 
0005 #include <QQmlExtensionPlugin>
0006 #include <QQmlEngine>
0007 #include "nameutils.h"
0008 
0009 class ComponentsLabsPlugin : public QQmlExtensionPlugin
0010 {
0011     Q_OBJECT
0012     Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface")
0013 
0014 public:
0015     ComponentsLabsPlugin() = default;
0016     ~ComponentsLabsPlugin() = default;
0017     void registerTypes(const char *uri) override
0018     {
0019         qmlRegisterModule(uri, 1, 0);
0020         qmlRegisterSingletonType<NameUtils>(uri, 1, 0, "NameUtils", [](QQmlEngine*, QJSEngine*) -> QObject* {
0021             return new NameUtils;
0022         });
0023     }
0024 };
0025 
0026 #include "componentslabsplugin.moc"