X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FConfig%2FConfig_FeatureReader.cpp;h=3d53a63d604873b234866534bb79e555a1206617;hb=95ff1008bc8215fdeafd7d253dc5a6f33e949363;hp=7254b5577d4b6ef91f7369d3e4d493c001ba3ea8;hpb=4a4df92151313b04bcedb6b59001658c7038f931;p=modules%2Fshaper.git diff --git a/src/Config/Config_FeatureReader.cpp b/src/Config/Config_FeatureReader.cpp index 7254b5577..3d53a63d6 100644 --- a/src/Config/Config_FeatureReader.cpp +++ b/src/Config/Config_FeatureReader.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2019 CEA/DEN, EDF R&D +// Copyright (C) 2014-2021 CEA/DEN, EDF R&D // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -40,9 +40,11 @@ Config_FeatureReader::Config_FeatureReader(const std::string& theXmlFile, const std::string& theLibraryName, + const std::string& theDocSection, const char* theEventGenerated) : Config_XMLReader(theXmlFile), myLibraryName(theLibraryName), + myLibraryDocSection(theDocSection), myEventGenerated(theEventGenerated ? theEventGenerated : Config_FeatureMessage::GUI_EVENT()), myIsProcessWidgets(theEventGenerated != NULL) { @@ -99,7 +101,7 @@ void Config_FeatureReader::processNode(xmlNodePtr theNode) std::string aCaseNodeID = getProperty(aCaseNode, _ID); std::string aSwitchNodeID = ""; const xmlChar* aName = aCaseNode->name; - xmlNodePtr aSwitchNode; + xmlNodePtr aSwitchNode = 0; if (!xmlStrcmp(aName, (const xmlChar *) WDG_SWITCH_CASE)) { aSwitchNode = hasParentRecursive(aCaseNode, WDG_SWITCH, NULL); } @@ -176,8 +178,11 @@ void Config_FeatureReader::fillFeature(xmlNodePtr theFeatureNode, outFeatureMessage->setInternal(isInternal); std::string aHelpFile = getProperty(theFeatureNode, HELP_FILE); - if (!aHelpFile.empty()) - outFeatureMessage->setHelpFileName(myLibraryName + "/" + aHelpFile); + if (!aHelpFile.empty()) { + aHelpFile = + (myLibraryDocSection.empty() ? myLibraryName : myLibraryDocSection) + "/" + aHelpFile; + outFeatureMessage->setHelpFileName(aHelpFile); + } bool isHideFaces = getBooleanAttribute(theFeatureNode, HIDEFACES_PANEL, false); outFeatureMessage->setHideFacesPanel(isHideFaces);