Revision 70e3d0c6
Von Christian Ehringfeld vor mehr als 8 Jahren hinzugefügt
src/entityhelper.cpp | ||
---|---|---|
void EntityHelper::addEntityToListProperty(const QSharedPointer<Entity>
|
||
&entity, QSharedPointer<Entity> add, const QMetaProperty &property) {
|
||
QVariant var = property.read(entity.data());
|
||
if (!var.isNull() && var.canConvert<QList<QVariant>>()) {
|
||
auto list = EntityInstanceFactory::castQVariantList(var);
|
||
if (!list.contains(add)) {
|
||
list.append(add);
|
||
EntityHelper::setListProperty(entity, list, property);
|
||
}
|
||
QList<QSharedPointer<Entity>> list = (!var.isNull() && var.data() &&
|
||
var.canConvert<QList<QVariant>>() ? EntityInstanceFactory::castQVariantList( var) : QList<QSharedPointer<Entity>>());
|
||
if (!list.contains(add)) {
|
||
list.append(add);
|
||
EntityHelper::setListProperty(entity, list, property);
|
||
}
|
||
}
|
||
|
Auch abrufbar als: Unified diff
bugfix