X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=inline;f=src%2FModuleBase%2FModuleBase_IWidgetCreator.h;h=b3018f044aa2f9fd30f0dfa69ebcd4bf9f537ab3;hb=39aa2839a4269a2fc87cfe3b4487cce8f3df9a6f;hp=953d494c0c7a8349663ebd18f21461979efa2ac5;hpb=818bc197ba38350efb1a88e5735687a9da5ed6c3;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_IWidgetCreator.h b/src/ModuleBase/ModuleBase_IWidgetCreator.h index 953d494c0..b3018f044 100755 --- a/src/ModuleBase/ModuleBase_IWidgetCreator.h +++ b/src/ModuleBase/ModuleBase_IWidgetCreator.h @@ -5,6 +5,8 @@ #include "ModuleBase.h" +#include "ModelAPI_Feature.h" + #include #include #include @@ -31,40 +33,48 @@ public: ~ModuleBase_IWidgetCreator(); /// Returns a container of possible page types, which this creator can process - /// \returns list of type names - virtual const std::set& panelTypes(); + /// The default implementation is empty + /// \param theTypes a list of type names + virtual void panelTypes(std::set& theTypes) {} /// Returns a container of possible page types, which this creator can process - /// \returns list of type names - virtual const std::set& pageTypes(); + /// The default implementation is empty + /// \param theTypes a list of type names + virtual void pageTypes(std::set& theTypes) {} /// Returns a container of possible widget types, which this creator can process - /// \returns list of type names - virtual const std::set& widgetTypes(); + /// \param theTypes a list of type names + virtual void widgetTypes(std::set& theTypes) {} /// Create panel control by its type. + /// The default implementation is empty /// \param theType a panel type /// \param theParent a parent widget + /// \param theFeature a feature modified in the panel /// \return created widget or null virtual QWidget* createPanelByType(const std::string& theType, - QWidget* theParent) {}; + QWidget* theParent, + const FeaturePtr& theFeature); /// Create page by its type + /// The default implementation is empty /// \param theType a type /// \param theParent a parent widget - /// \param theData a low-level API for reading xml definitions of widgets + /// \param theWidgetApi a low-level API for reading xml definitions of widgets virtual ModuleBase_PageBase* createPageByType(const std::string& theType, QWidget* theParent, - Config_WidgetAPI* theWidgetApi) {}; + Config_WidgetAPI* theWidgetApi); /// Create widget by its type + /// The default implementation is empty /// \param theType a type /// \param theParent a parent widget - /// \param theData a low-level API for reading xml definitions of widgets + /// \param theWidgetApi a low-level API for reading xml definitions of widgets + /// \param theWorkshop a workshop class instance virtual ModuleBase_ModelWidget* createWidgetByType(const std::string& theType, QWidget* theParent, Config_WidgetAPI* theWidgetApi, - ModuleBase_IWorkshop* theWorkshop) {}; + ModuleBase_IWorkshop* theWorkshop); }; typedef std::shared_ptr WidgetCreatorPtr;