This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
Doric/doric-Qt/example/doric/DoricRegistry.cpp
2021-07-21 19:03:29 +08:00

56 lines
1.8 KiB
C++

#include "DoricRegistry.h"
#include "DoricLibrary.h"
#include "plugin/DoricModalPlugin.h"
#include "plugin/DoricNetworkPlugin.h"
#include "plugin/DoricPopoverPlugin.h"
#include "plugin/DoricShaderPlugin.h"
#include "plugin/DoricStoragePlugin.h"
#include "shader/DoricDraggableNode.h"
#include "shader/DoricHLayoutNode.h"
#include "shader/DoricImageNode.h"
#include "shader/DoricInputNode.h"
#include "shader/DoricRootNode.h"
#include "shader/DoricScrollerNode.h"
#include "shader/DoricStackNode.h"
#include "shader/DoricSwitchNode.h"
#include "shader/DoricTextNode.h"
#include "shader/DoricVLayoutNode.h"
#include "shader/slider/DoricSlideItemNode.h"
#include "shader/slider/DoricSliderNode.h"
DoricRegistry::DoricRegistry() {
registerNativePlugin<DoricShaderPlugin>("shader");
registerNativePlugin<DoricModalPlugin>("modal");
registerNativePlugin<DoricPopoverPlugin>("popover");
registerNativePlugin<DoricNetworkPlugin>("network");
registerNativePlugin<DoricStoragePlugin>("storage");
registerViewNode<DoricRootNode>("Root");
registerViewNode<DoricStackNode>("Stack");
registerViewNode<DoricVLayoutNode>("VLayout");
registerViewNode<DoricHLayoutNode>("HLayout");
registerViewNode<DoricTextNode>("Text");
registerViewNode<DoricScrollerNode>("Scroller");
registerViewNode<DoricImageNode>("Image");
registerViewNode<DoricSliderNode>("Slider");
registerViewNode<DoricSlideItemNode>("SlideItem");
registerViewNode<DoricInputNode>("Input");
registerViewNode<DoricSwitchNode>("Switch");
registerViewNode<DoricDraggableNode>("Draggable");
}
bool DoricRegistry::acquirePluginInfo(QString name) {
return plugins.acquireClass(name);
}
bool DoricRegistry::acquireNodeInfo(QString name) {
return nodes.acquireClass(name);
}
void DoricRegistry::registerLibrary(DoricLibrary *doricLibrary) {
doricLibraries.insert(doricLibrary);
doricLibrary->load(this);
}