forked from qt-creator/qt-creator
QmlDesigner: Do not specify version if it is -1 -1
Otherwise isBasedOn works differently than isSubclassOf for file components. File components do not have a version. Change-Id: If7009538ef97d119a348da99ed07919136c8b6e1 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
committed by
Tim Jenssen
parent
7a65a16718
commit
626e1175a6
@@ -1704,8 +1704,11 @@ bool NodeMetaInfo::isBasedOn(const NodeMetaInfo &metaInfo) const
|
|||||||
if constexpr (useProjectStorage()) {
|
if constexpr (useProjectStorage()) {
|
||||||
return m_projectStorage->isBasedOn(m_typeId, metaInfo.m_typeId);
|
return m_projectStorage->isBasedOn(m_typeId, metaInfo.m_typeId);
|
||||||
} else {
|
} else {
|
||||||
return isValid()
|
if (!isValid())
|
||||||
&& isSubclassOf(metaInfo.typeName(), metaInfo.majorVersion(), metaInfo.minorVersion());
|
return false;
|
||||||
|
if (majorVersion() == -1 && minorVersion() == -1)
|
||||||
|
return isSubclassOf(metaInfo.typeName());
|
||||||
|
return isSubclassOf(metaInfo.typeName(), metaInfo.majorVersion(), metaInfo.minorVersion());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1714,11 +1717,14 @@ bool NodeMetaInfo::isBasedOn(const NodeMetaInfo &metaInfo1, const NodeMetaInfo &
|
|||||||
if constexpr (useProjectStorage()) {
|
if constexpr (useProjectStorage()) {
|
||||||
return m_projectStorage->isBasedOn(m_typeId, metaInfo1.m_typeId, metaInfo2.m_typeId);
|
return m_projectStorage->isBasedOn(m_typeId, metaInfo1.m_typeId, metaInfo2.m_typeId);
|
||||||
} else {
|
} else {
|
||||||
return isValid()
|
if (!isValid())
|
||||||
&& (isSubclassOf(metaInfo1.typeName(), metaInfo1.majorVersion(), metaInfo1.minorVersion())
|
return false;
|
||||||
|| isSubclassOf(metaInfo2.typeName(),
|
if (majorVersion() == -1 && minorVersion() == -1)
|
||||||
metaInfo2.majorVersion(),
|
return (isSubclassOf(metaInfo1.typeName()) || isSubclassOf(metaInfo2.typeName()));
|
||||||
metaInfo2.minorVersion()));
|
|
||||||
|
return (
|
||||||
|
isSubclassOf(metaInfo1.typeName(), metaInfo1.majorVersion(), metaInfo1.minorVersion())
|
||||||
|
|| isSubclassOf(metaInfo2.typeName(), metaInfo2.majorVersion(), metaInfo2.minorVersion()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1732,14 +1738,16 @@ bool NodeMetaInfo::isBasedOn(const NodeMetaInfo &metaInfo1,
|
|||||||
metaInfo2.m_typeId,
|
metaInfo2.m_typeId,
|
||||||
metaInfo3.m_typeId);
|
metaInfo3.m_typeId);
|
||||||
} else {
|
} else {
|
||||||
return isValid()
|
if (!isValid())
|
||||||
&& (isSubclassOf(metaInfo1.typeName(), metaInfo1.majorVersion(), metaInfo1.minorVersion())
|
return false;
|
||||||
|| isSubclassOf(metaInfo2.typeName(),
|
if (majorVersion() == -1 && minorVersion() == -1)
|
||||||
metaInfo2.majorVersion(),
|
return (isSubclassOf(metaInfo1.typeName()) || isSubclassOf(metaInfo2.typeName())
|
||||||
metaInfo2.minorVersion())
|
|| isSubclassOf(metaInfo3.typeName()));
|
||||||
|| isSubclassOf(metaInfo3.typeName(),
|
|
||||||
metaInfo3.majorVersion(),
|
return (
|
||||||
metaInfo3.minorVersion()));
|
isSubclassOf(metaInfo1.typeName(), metaInfo1.majorVersion(), metaInfo1.minorVersion())
|
||||||
|
|| isSubclassOf(metaInfo2.typeName(), metaInfo2.majorVersion(), metaInfo2.minorVersion())
|
||||||
|
|| isSubclassOf(metaInfo3.typeName(), metaInfo3.majorVersion(), metaInfo3.minorVersion()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user