Salome HOME
Minor corrections: coding rules
[modules/shaper.git] / src / SamplePanelPlugin / SamplePanelPlugin_Plugin.cpp
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
2
3 // File:        SamplePanelPlugin_Plugin.cpp
4 // Created:     29 Mar 2015
5 // Author:      Natalia ERMOLAEVA
6
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>
12
13 #include <ModuleBase_WidgetCreatorFactory.h>
14 #include <SamplePanelPlugin_WidgetCreator.h>
15 #include <SamplePanelPlugin_ModelWidgetCreator.h>
16
17 // the only created instance of this plugin
18 static SamplePanelPlugin_Plugin* MY_SAMPLE_PANEL_PLUGIN_INSTANCE = new SamplePanelPlugin_Plugin();
19
20 SamplePanelPlugin_Plugin::SamplePanelPlugin_Plugin()
21 {
22   SessionPtr aMgr = ModelAPI_Session::get();
23
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()));
30
31   // register this plugin
32   ModelAPI_Session::get()->registerPlugin(this);
33 }
34
35 FeaturePtr SamplePanelPlugin_Plugin::createFeature(std::string theFeatureID)
36 {
37   if (theFeatureID == SamplePanelPlugin_Feature::ID()) {
38     return FeaturePtr(new SamplePanelPlugin_Feature);
39   }
40   // feature of such kind is not found
41   return FeaturePtr();
42 }
43