1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
3 // File: XGUI_MenuGroup.hxx
4 // Created: 13 Apr 2016
5 // Author: Natalia ERMOLAEVA
7 #ifndef XGUI_MENUGROUP_H_
8 #define XGUI_MENUGROUP_H_
16 class Config_FeatureMessage;
20 * A class for management of menu actions (features). The actions should be arranged like they are
21 * in XML file. It listens the read feature of XML and fills internal structure of menu workbenches
22 * and groups of feature. After, it creates menues and tools in the module.
24 class XGUI_EXPORT XGUI_MenuGroup
28 XGUI_MenuGroup(const std::string& theName);
29 virtual ~XGUI_MenuGroup() {}
31 /// Returns a name of the workbench
32 /// \return workbench name
33 std::string getName() const { return myName; }
35 /// Stores XML information for the feature kind
36 /// \param theMessage a container of the feature XML properties
37 virtual void setFeatureInfo(const std::shared_ptr<Config_FeatureMessage>& theMessage);
39 /// Returns container of existing features
41 const std::list<std::shared_ptr<Config_FeatureMessage> >& featuresInfo() const;
44 std::string myName; /// a name of the workbench
46 /// container of existing features
47 std::list<std::shared_ptr<Config_FeatureMessage> > myFeatureInfo;
50 #endif /* XGUI_MENUGROUP_H_ */