fixed itemType drama
This commit is contained in:
@@ -70,22 +70,30 @@ bool XQItemFactory::isValid()
|
|||||||
|
|
||||||
//! es reicht nicht, einen itemType aus den itemType-templates zu
|
//! es reicht nicht, einen itemType aus den itemType-templates zu
|
||||||
//! holen: möglicherweise muss der noch mit zusätzlichen attributen
|
//! holen: möglicherweise muss der noch mit zusätzlichen attributen
|
||||||
//! ergänzt werden, (hier 'UnitType' ). Al
|
//! ergänzt werden, (hier 'UnitType' ).
|
||||||
//!
|
|
||||||
//! \param sheetEntry
|
|
||||||
//! \return
|
|
||||||
//!
|
|
||||||
|
|
||||||
XQItemType* XQItemFactory::makeItemType(const XQNodePtr& sheetEntry )
|
XQItemType* XQItemFactory::makeItemType(const XQNodePtr& sheetEntry )
|
||||||
{
|
{
|
||||||
QString typeKey = sheetEntry->attribute("ItemType");
|
QString typeKey = sheetEntry->attribute("ItemType");
|
||||||
|
|
||||||
XQItemType* itemType = findItemTypeTemplate(typeKey);
|
XQItemType* itemType = findItemTypeTemplate(typeKey);
|
||||||
|
|
||||||
// wir prüfen, ob im sheetEntry noch zusätzliche attribute vorhanden
|
// wir prüfen, ob im sheetEntry noch zusätzliche attribute vorhanden
|
||||||
// sind, die wir in dem itemType müssen
|
// sind, die wir in dem itemType müssen
|
||||||
|
|
||||||
|
// über alle attribute
|
||||||
|
for (const auto& attr : sheetEntry->attributes())
|
||||||
|
{
|
||||||
|
// prüfen, ob der itemType des attribute schon hat
|
||||||
|
int role = itemType->hasAttribute( attr.first);
|
||||||
|
// wenn ja, überschreiben
|
||||||
|
if( role != XQItem::NoRole )
|
||||||
|
{
|
||||||
|
QVariant newValue = makeVariant(role,attr.second);
|
||||||
|
itemType = itemType->replaceAttribute( newValue, role );
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
return itemType;
|
return itemType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
<StaticType RenderStyle="PlainStyle"/>
|
<StaticType RenderStyle="PlainStyle"/>
|
||||||
<TreeChildType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsDragEnabled|IsSelectable|IsDropEnabled"/>
|
<TreeChildType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsDragEnabled|IsSelectable|IsDropEnabled"/>
|
||||||
<PlainType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable"/>
|
<PlainType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable"/>
|
||||||
<ValueType RenderStyle="FormattedStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable" UnitType="###"/>
|
<ValueType RenderStyle="FormattedStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable" UnitType="Coulomb"/>
|
||||||
<PercentageType RenderStyle="ProgressBarStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
<PercentageType RenderStyle="ProgressBarStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
||||||
<ChoiceType RenderStyle="ComboBoxStyle" ItemFlags="IsEnabled|IsSelectable|IsEditable" FixedChoices="la|le|lo|lu"/>
|
<ChoiceType RenderStyle="ComboBoxStyle" ItemFlags="IsEnabled|IsSelectable|IsEditable" FixedChoices="la|le|lo|lu"/>
|
||||||
<IntValueType RenderStyle="SpinBoxStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
<IntValueType RenderStyle="SpinBoxStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
||||||
|
Reference in New Issue
Block a user