#include <Config_FeatureMessage.h>
#include <Config_AttributeMessage.h>
#include <Config_FeatureReader.h>
+#include <Config_Translator.h>
#include <Events_Message.h>
#include <Events_Loop.h>
Events_ID aMenuItemEvent = Events_Loop::eventByName(myEventGenerated);
if (isNode(theNode, NODE_FEATURE, NULL)) {
storeAttribute(theNode, _ID);
- std::shared_ptr<Config_FeatureMessage>
+ std::shared_ptr<Config_FeatureMessage>
aMessage(new Config_FeatureMessage(aMenuItemEvent, this));
fillFeature(theNode, aMessage);
myFeatures.push_back(getProperty(theNode, _ID));
aSwitchNode = hasParentRecursive(aCaseNode, WDG_TOOLBOX, NULL);
}
if (!xmlStrcmp(aName, (const xmlChar *) WDG_OPTIONALBOX)) {
- /// the box is optional, attribute is in case
+ /// the box is optional, attribute is in case
/// if the optional attribute value is not empty
aSwitchNode = aCaseNode;
}
aSwitchNodeID = getProperty(aSwitchNode, _ID);
aCases.push_back(std::make_pair(aSwitchNodeID, aCaseNodeID));
- aCaseNode = hasParentRecursive(aSwitchNode, WDG_SWITCH_CASE,
+ aCaseNode = hasParentRecursive(aSwitchNode, WDG_SWITCH_CASE,
WDG_TOOLBOX_BOX, WDG_OPTIONALBOX, NULL);
}
aMessage->setCases(aCases);
{
bool result = isNode(theNode, NODE_WORKBENCH, NODE_GROUP, NULL);
if(!result && myIsProcessWidgets) {
- result = isNode(theNode, NODE_FEATURE,
+ result = isNode(theNode, NODE_FEATURE,
WDG_GROUP, WDG_OPTIONALBOX,
WDG_TOOLBOX, WDG_TOOLBOX_BOX,
WDG_SWITCH, WDG_SWITCH_CASE, NULL);
void Config_FeatureReader::fillFeature(xmlNodePtr theFeatureNode,
const std::shared_ptr<Config_FeatureMessage>& outFeatureMessage)
{
- outFeatureMessage->setId(getProperty(theFeatureNode, _ID));
+ std::string anId = getProperty(theFeatureNode, _ID);
+ outFeatureMessage->setId(anId);
outFeatureMessage->setPluginLibrary(myLibraryName);
outFeatureMessage->setNestedFeatures(getProperty(theFeatureNode, FEATURE_NESTED));
outFeatureMessage->setActionsWhenNested(getNormalizedProperty(theFeatureNode,
FEATURE_WHEN_NESTED));
outFeatureMessage->setModal(getBooleanAttribute(theFeatureNode, FEATURE_MODAL, false));
+ bool isAutoPreview = getBooleanAttribute(theFeatureNode, FEATURE_AUTO_PREVIEW, true);
+ outFeatureMessage->setAutoPreview(isAutoPreview);
bool isInternal = getBooleanAttribute(theFeatureNode, ATTR_INTERNAL, false);
outFeatureMessage->setInternal(isInternal);
//Internal feature has no visual representation.
return;
}
-
- outFeatureMessage->setText(getProperty(theFeatureNode, FEATURE_TEXT));
- outFeatureMessage->setTooltip(getProperty(theFeatureNode, FEATURE_TOOLTIP));
+
+ std::string aText = Config_Translator::translate(anId, getProperty(theFeatureNode, FEATURE_TEXT));
+ outFeatureMessage->setText(aText);
+ std::string aToolTip = Config_Translator::translate(anId,
+ getProperty(theFeatureNode, FEATURE_TOOLTIP));
+ outFeatureMessage->setTooltip(aToolTip);
outFeatureMessage->setIcon(getProperty(theFeatureNode, FEATURE_ICON));
outFeatureMessage->setKeysequence(getProperty(theFeatureNode, FEATURE_KEYSEQUENCE));
outFeatureMessage->setGroupId(restoreAttribute(NODE_GROUP, _ID));
aDocKind = restoreAttribute(NODE_WORKBENCH, WORKBENCH_DOC);
}
outFeatureMessage->setDocumentKind(aDocKind);
- bool isAutoPreview = getBooleanAttribute(theFeatureNode, FEATURE_AUTO_PREVIEW, true);
- outFeatureMessage->setAutoPreview(isAutoPreview);
}