Salome HOME
Merge branch 'master' into cgt/devCEA
[modules/shaper.git] / src / SamplePanelPlugin / SamplePanelPlugin_WidgetCreator.cpp
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        SamplePanelPlugin_WidgetCreator.cpp
4 // Created:     29 Mar 2015
5 // Author:      Natalia ERMOLAEVA
6
7 #include "SamplePanelPlugin_WidgetCreator.h"
8
9 #include "SamplePanelPlugin_Panel.h"
10
11 SamplePanelPlugin_WidgetCreator::SamplePanelPlugin_WidgetCreator()
12 : ModuleBase_IWidgetCreator()
13 {
14   myPanelTypes.insert("QtPanel");
15 }
16
17 void SamplePanelPlugin_WidgetCreator::panelTypes(std::set<std::string>& theTypes)
18 {
19   theTypes = myPanelTypes;
20 }
21
22 QWidget* SamplePanelPlugin_WidgetCreator::createPanelByType(const std::string& theType,
23                                                             QWidget* theParent,
24                                                             const FeaturePtr& theFeature)
25 {
26   QWidget* aWidget = 0;
27   if (myPanelTypes.find(theType) == myPanelTypes.end())
28     return aWidget;
29
30   if (theType == "QtPanel") {
31     SamplePanelPlugin_Panel* aPanel = new SamplePanelPlugin_Panel(theParent);
32     aPanel->setFeature(theFeature);
33     aWidget = aPanel;
34   }
35
36   return aWidget;
37 }