21 #include <QtQml/qqml.h>
27 #include "actionrootstate.h"
28 #include "indicators.h"
29 #include "indicatorsmanager.h"
30 #include "indicatorsmodel.h"
31 #include "menucontentactivator.h"
32 #include "modelactionrootstate.h"
33 #include "modelprinter.h"
34 #include "sharedunitymenumodel.h"
35 #include "unitymenumodelcache.h"
36 #include "unitymenumodelstack.h"
38 #include <unitymenumodel.h>
40 static QObject* menuModelCacheSingleton(QQmlEngine* engine, QJSEngine* scriptEngine) {
42 Q_UNUSED(scriptEngine);
43 return UnityMenuModelCache::singleton();
46 void IndicatorsPlugin::registerTypes(
const char *uri)
48 qRegisterMetaType<UnityMenuModel*>(
"UnityMenuModel*");
50 qmlRegisterType<IndicatorsManager>(uri, 0, 1,
"IndicatorsManager");
51 qmlRegisterType<IndicatorsModel>(uri, 0, 1,
"IndicatorsModel");
52 qmlRegisterType<MenuContentActivator>(uri, 0, 1,
"MenuContentActivator");
53 qmlRegisterType<UnityMenuModelStack>(uri, 0, 1,
"UnityMenuModelStack");
54 qmlRegisterType<ModelActionRootState>(uri, 0, 1,
"ModelActionRootState");
55 qmlRegisterType<ActionRootState>(uri, 0, 1,
"ActionRootState");
56 qmlRegisterType<ModelPrinter>(uri, 0, 1,
"ModelPrinter");
57 qmlRegisterType<SharedUnityMenuModel>(uri, 0, 1,
"SharedUnityMenuModel");
59 qmlRegisterSingletonType<UnityMenuModelCache>(uri, 0, 1,
"UnityMenuModelCache", menuModelCacheSingleton);
61 qmlRegisterUncreatableType<MenuContentState>(uri, 0, 1,
"MenuContentState", QStringLiteral(
"Can't create MenuContentState class"));
62 qmlRegisterUncreatableType<ActionState>(uri, 0, 1,
"ActionState", QStringLiteral(
"Can't create ActionState class"));
63 qmlRegisterUncreatableType<NetworkActionState>(uri, 0, 1,
"NetworkActionState", QStringLiteral(
"Can't create NetworkActionState class"));
64 qmlRegisterUncreatableType<NetworkConnection>(uri, 0, 1,
"NetworkConnection", QStringLiteral(
"Can't create NetworkConnection class"));
65 qmlRegisterUncreatableType<IndicatorsModelRole>(uri, 0, 1,
"IndicatorsModelRole", QStringLiteral(
"Can't create IndicatorsModelRole class"));
66 qmlRegisterUncreatableType<FlatMenuProxyModelRole>(uri, 0, 1,
"FlatMenuProxyModelRole", QStringLiteral(
"Can't create FlatMenuProxyModelRole class"));