void PartSet_Module::createFeatures()
{
Config_ModuleReader aXMLReader = Config_ModuleReader();
- aXMLReader.setAutoImport(true);
aXMLReader.readAll();
+ myFeaturesInFiles = aXMLReader.featuresInFiles();
}
void PartSet_Module::featureCreated(XGUI_Command* theFeature)
theFeature->connectTo(this, SLOT(onFeatureTriggered()));
}
-std::string PartSet_Module::modulePlugin()
+std::string PartSet_Module::featureFile(const std::string& theFeatureId)
{
- Config_ModuleReader aModuleReader = Config_ModuleReader();
- aModuleReader.readAll();
- std::map < std::string, std::string > aPluginMap = aModuleReader.plugins();
- std::string aPluginName = aPluginMap["PartSetPlugin"];
- return aPluginName;
+ return myFeaturesInFiles[theFeatureId];
}
/*
*/
void PartSet_Module::onFeatureTriggered()
{
- std::string aPluginName = modulePlugin();
- Config_WidgetReader aWdgReader = Config_WidgetReader(aPluginName);
- aWdgReader.readAll();
XGUI_Command* aCmd = dynamic_cast<XGUI_Command*>(sender());
QString aCmdId = aCmd->id();
- std::string aXmlCfg = aWdgReader.featureWidgetCfg(aCmdId.toStdString());
- std::string aDescription = aWdgReader.featureDescription(aCmdId.toStdString());
+ std::string aStdCmdId = aCmdId.toStdString();
+ std::string aPluginFileName = featureFile(aStdCmdId);
+ Config_WidgetReader aWdgReader = Config_WidgetReader(aPluginFileName);
+ aWdgReader.readAll();
+ std::string aXmlCfg = aWdgReader.featureWidgetCfg(aStdCmdId);
+ std::string aDescription = aWdgReader.featureDescription(aStdCmdId);
ModuleBase_PropPanelOperation* aPartSetOp;
if (aCmdId == "Sketch" ) {
aPartSetOp = new PartSet_OperationSketch(aCmdId, this);