//The m_last* variables always defined before fillFeature() call. XML is a tree.
} else if (isNode(theNode, NODE_WORKBENCH, NODE_GROUP, NULL)) {
storeAttribute(theNode, _ID);
- storeAttribute(theNode, WORKBENCH_DOC);
+ storeAttribute(theNode, WORKBENCH_DOC, true);
} else if (myIsProcessWidgets) {
// widgets, like shape_selector or containers, like toolbox
if (isAttributeNode(theNode)) {
aMessage->setObligatory(getBooleanAttribute(theNode, ATTR_OBLIGATORY, true));
aMessage->setConcealment(getBooleanAttribute(theNode, ATTR_CONCEALMENT, false));
// nested "paged" widgets are not allowed, this issue may be resolved here:
- if (hasParent(theNode, WDG_SWITCH_CASE, WDG_TOOLBOX_BOX, NULL)) {
- const char* kWdgCase = hasParent(theNode, WDG_SWITCH_CASE, NULL)
+ if (hasParentRecursive(theNode, WDG_SWITCH_CASE, WDG_TOOLBOX_BOX, NULL)) {
+ const char* kWdgCase = hasParentRecursive(theNode, WDG_SWITCH_CASE, NULL)
? WDG_SWITCH_CASE
: WDG_TOOLBOX_BOX;
- const char* kWdgSwitch = hasParent(theNode, WDG_SWITCH_CASE, NULL)
+ const char* kWdgSwitch = hasParentRecursive(theNode, WDG_SWITCH_CASE, NULL)
? WDG_SWITCH
: WDG_TOOLBOX;
aMessage->setCaseId(restoreAttribute(kWdgCase, _ID));
bool result = isNode(theNode, NODE_WORKBENCH, NODE_GROUP, NULL);
if(!result && myIsProcessWidgets) {
result = isNode(theNode, NODE_FEATURE,
+ WDG_GROUP, WDG_CHECK_GROUP,
WDG_TOOLBOX, WDG_TOOLBOX_BOX,
WDG_SWITCH, WDG_SWITCH_CASE, NULL);
}
outFeatureMessage->setPluginLibrary(myLibraryName);
outFeatureMessage->setNestedFeatures(getProperty(theFeatureNode, FEATURE_NESTED));
outFeatureMessage->setActionsWhenNested(getNormalizedProperty(theFeatureNode, FEATURE_WHEN_NESTED));
+ outFeatureMessage->setModal(getBooleanAttribute(theFeatureNode, FEATURE_MODAL, false));
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));
outFeatureMessage->setIcon(getProperty(theFeatureNode, FEATURE_ICON));
aDocKind = restoreAttribute(NODE_WORKBENCH, WORKBENCH_DOC);
}
outFeatureMessage->setDocumentKind(aDocKind);
+ bool isAutoPreview = getBooleanAttribute(theFeatureNode, FEATURE_AUTO_PREVIEW, true);
+ outFeatureMessage->setAutoPreview(isAutoPreview);
}