1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
3 // File: SamplePanelPlugin_Plugin.cpp
4 // Created: 29 Mar 2015
5 // Author: Natalia ERMOLAEVA
7 #include <SamplePanelPlugin_Plugin.h>
8 #include <SamplePanelPlugin_Feature.h>
9 #include <ModelAPI_Session.h>
10 #include <ModelAPI_Document.h>
11 #include <ModelAPI_Validator.h>
13 #include <ModuleBase_WidgetCreatorFactory.h>
14 #include <SamplePanelPlugin_WidgetCreator.h>
15 #include <SamplePanelPlugin_ModelWidgetCreator.h>
17 // the only created instance of this plugin
18 static SamplePanelPlugin_Plugin* MY_SAMPLE_PANEL_PLUGIN_INSTANCE = new SamplePanelPlugin_Plugin();
20 SamplePanelPlugin_Plugin::SamplePanelPlugin_Plugin()
22 SessionPtr aMgr = ModelAPI_Session::get();
24 WidgetCreatorFactoryPtr aWidgetCreatorFactory = ModuleBase_WidgetCreatorFactory::get();
25 aWidgetCreatorFactory->registerCreator(
26 std::shared_ptr<SamplePanelPlugin_WidgetCreator>(new SamplePanelPlugin_WidgetCreator()));
27 aWidgetCreatorFactory->registerCreator(
28 std::shared_ptr<SamplePanelPlugin_ModelWidgetCreator>(
29 new SamplePanelPlugin_ModelWidgetCreator()));
31 // register this plugin
32 ModelAPI_Session::get()->registerPlugin(this);
35 FeaturePtr SamplePanelPlugin_Plugin::createFeature(std::string theFeatureID)
37 if (theFeatureID == SamplePanelPlugin_Feature::ID()) {
38 return FeaturePtr(new SamplePanelPlugin_Feature);
40 // feature of such kind is not found