forked from qt-creator/qt-creator
QmlDesigner: Improve return values
You can return by const reference if you the ownership of the return value is non local. If it is local you should return by value. In that case it should be non const because otherwise the compile cannot move the return value. Change-Id: I2a4b08dd0e67a2c2741a46bdd7def842c1db3fbf Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io> Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
This commit is contained in:
@@ -348,7 +348,7 @@ void TransitionEditorView::openSettingsDialog()
|
|||||||
dialog->show();
|
dialog->show();
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> TransitionEditorView::allTransitions() const
|
QList<ModelNode> TransitionEditorView::allTransitions() const
|
||||||
{
|
{
|
||||||
if (rootModelNode().isValid() && rootModelNode().hasProperty("transitions")) {
|
if (rootModelNode().isValid() && rootModelNode().hasProperty("transitions")) {
|
||||||
NodeAbstractProperty transitions = rootModelNode().nodeAbstractProperty("transitions");
|
NodeAbstractProperty transitions = rootModelNode().nodeAbstractProperty("transitions");
|
||||||
|
@@ -83,7 +83,7 @@ public:
|
|||||||
|
|
||||||
void openSettingsDialog();
|
void openSettingsDialog();
|
||||||
|
|
||||||
const QList<ModelNode> allTransitions() const;
|
QList<ModelNode> allTransitions() const;
|
||||||
|
|
||||||
void asyncUpdate(const ModelNode &transition);
|
void asyncUpdate(const ModelNode &transition);
|
||||||
|
|
||||||
|
@@ -142,7 +142,7 @@ public:
|
|||||||
const QString &nodeSource = QString(),
|
const QString &nodeSource = QString(),
|
||||||
ModelNode::NodeSourceType nodeSourceType = ModelNode::NodeWithoutSource);
|
ModelNode::NodeSourceType nodeSourceType = ModelNode::NodeWithoutSource);
|
||||||
|
|
||||||
const ModelNode rootModelNode() const;
|
ModelNode rootModelNode() const;
|
||||||
ModelNode rootModelNode();
|
ModelNode rootModelNode();
|
||||||
|
|
||||||
void setSelectedModelNodes(const QList<ModelNode> &selectedNodeList);
|
void setSelectedModelNodes(const QList<ModelNode> &selectedNodeList);
|
||||||
@@ -155,7 +155,7 @@ public:
|
|||||||
bool hasSingleSelectedModelNode() const;
|
bool hasSingleSelectedModelNode() const;
|
||||||
bool isSelectedModelNode(const ModelNode &modelNode) const;
|
bool isSelectedModelNode(const ModelNode &modelNode) const;
|
||||||
|
|
||||||
const QList<ModelNode> selectedModelNodes() const;
|
QList<ModelNode> selectedModelNodes() const;
|
||||||
ModelNode firstSelectedModelNode() const;
|
ModelNode firstSelectedModelNode() const;
|
||||||
ModelNode singleSelectedModelNode() const;
|
ModelNode singleSelectedModelNode() const;
|
||||||
|
|
||||||
|
@@ -115,12 +115,12 @@ public:
|
|||||||
void setParentProperty(const ModelNode &newParentNode, const PropertyName &propertyName);
|
void setParentProperty(const ModelNode &newParentNode, const PropertyName &propertyName);
|
||||||
bool hasParentProperty() const;
|
bool hasParentProperty() const;
|
||||||
|
|
||||||
const QList<ModelNode> directSubModelNodes() const;
|
QList<ModelNode> directSubModelNodes() const;
|
||||||
const QList<ModelNode> directSubModelNodesOfType(const TypeName &typeName) const;
|
QList<ModelNode> directSubModelNodesOfType(const TypeName &typeName) const;
|
||||||
const QList<ModelNode> subModelNodesOfType(const TypeName &typeName) const;
|
QList<ModelNode> subModelNodesOfType(const TypeName &typeName) const;
|
||||||
|
|
||||||
const QList<ModelNode> allSubModelNodes() const;
|
QList<ModelNode> allSubModelNodes() const;
|
||||||
const QList<ModelNode> allSubModelNodesAndThisNode() const;
|
QList<ModelNode> allSubModelNodesAndThisNode() const;
|
||||||
bool hasAnySubModelNodes() const;
|
bool hasAnySubModelNodes() const;
|
||||||
|
|
||||||
//###
|
//###
|
||||||
@@ -186,11 +186,11 @@ public:
|
|||||||
static int variantUserType();
|
static int variantUserType();
|
||||||
QVariant toVariant() const;
|
QVariant toVariant() const;
|
||||||
|
|
||||||
const QVariant auxiliaryData(const PropertyName &name) const;
|
QVariant auxiliaryData(const PropertyName &name) const;
|
||||||
void setAuxiliaryData(const PropertyName &name, const QVariant &data) const;
|
void setAuxiliaryData(const PropertyName &name, const QVariant &data) const;
|
||||||
void removeAuxiliaryData(const PropertyName &name) const;
|
void removeAuxiliaryData(const PropertyName &name) const;
|
||||||
bool hasAuxiliaryData(const PropertyName &name) const;
|
bool hasAuxiliaryData(const PropertyName &name) const;
|
||||||
QHash<PropertyName, QVariant> auxiliaryData() const;
|
const QHash<PropertyName, QVariant> &auxiliaryData() const;
|
||||||
|
|
||||||
QString customId() const;
|
QString customId() const;
|
||||||
bool hasCustomId() const;
|
bool hasCustomId() const;
|
||||||
|
@@ -53,8 +53,8 @@ public:
|
|||||||
int indexOf(const ModelNode &node) const;
|
int indexOf(const ModelNode &node) const;
|
||||||
NodeAbstractProperty parentProperty() const;
|
NodeAbstractProperty parentProperty() const;
|
||||||
|
|
||||||
const QList<ModelNode> allSubNodes();
|
QList<ModelNode> allSubNodes();
|
||||||
const QList<ModelNode> directSubNodes() const;
|
QList<ModelNode> directSubNodes() const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
NodeAbstractProperty(const PropertyName &propertyName, const Internal::InternalNodePointer &internalNode, Model *model, AbstractView *view);
|
NodeAbstractProperty(const PropertyName &propertyName, const Internal::InternalNodePointer &internalNode, Model *model, AbstractView *view);
|
||||||
|
@@ -48,8 +48,8 @@ class QMLDESIGNERCORE_EXPORT NodeListProperty : public NodeAbstractProperty
|
|||||||
public:
|
public:
|
||||||
NodeListProperty();
|
NodeListProperty();
|
||||||
NodeListProperty(const NodeListProperty &nodeListProperty, AbstractView *view);
|
NodeListProperty(const NodeListProperty &nodeListProperty, AbstractView *view);
|
||||||
const QList<ModelNode> toModelNodeList() const;
|
QList<ModelNode> toModelNodeList() const;
|
||||||
const QList<QmlObjectNode> toQmlObjectNodeList() const;
|
QList<QmlObjectNode> toQmlObjectNodeList() const;
|
||||||
void slide(int, int) const;
|
void slide(int, int) const;
|
||||||
void swap(int, int) const;
|
void swap(int, int) const;
|
||||||
void reparentHere(const ModelNode &modelNode);
|
void reparentHere(const ModelNode &modelNode);
|
||||||
|
@@ -186,9 +186,9 @@ public:
|
|||||||
static bool isValidQmlFlowViewNode(const ModelNode &modelNode);
|
static bool isValidQmlFlowViewNode(const ModelNode &modelNode);
|
||||||
QList<QmlFlowItemNode> flowItems() const;
|
QList<QmlFlowItemNode> flowItems() const;
|
||||||
ModelNode addTransition(const QmlFlowTargetNode &from, const QmlFlowTargetNode &to);
|
ModelNode addTransition(const QmlFlowTargetNode &from, const QmlFlowTargetNode &to);
|
||||||
const QList<ModelNode> transitions() const;
|
QList<ModelNode> transitions() const;
|
||||||
const QList<ModelNode> wildcards() const;
|
QList<ModelNode> wildcards() const;
|
||||||
const QList<ModelNode> decicions() const;
|
QList<ModelNode> decicions() const;
|
||||||
QList<ModelNode> transitionsForTarget(const ModelNode &modelNode);
|
QList<ModelNode> transitionsForTarget(const ModelNode &modelNode);
|
||||||
QList<ModelNode> transitionsForSource(const ModelNode &modelNode);
|
QList<ModelNode> transitionsForSource(const ModelNode &modelNode);
|
||||||
void removeDanglingTransitions();
|
void removeDanglingTransitions();
|
||||||
|
@@ -65,9 +65,9 @@ public:
|
|||||||
|
|
||||||
ModelNode keyframe(qreal position) const;
|
ModelNode keyframe(qreal position) const;
|
||||||
|
|
||||||
const QList<ModelNode> keyframes() const;
|
QList<ModelNode> keyframes() const;
|
||||||
|
|
||||||
const QList<ModelNode> keyframePositions() const;
|
QList<ModelNode> keyframePositions() const;
|
||||||
|
|
||||||
static bool isValidKeyframe(const ModelNode &node);
|
static bool isValidKeyframe(const ModelNode &node);
|
||||||
static bool checkKeyframesType(const ModelNode &node);
|
static bool checkKeyframesType(const ModelNode &node);
|
||||||
|
@@ -102,7 +102,7 @@ ModelNode AbstractView::createModelNode(const TypeName &typeName,
|
|||||||
Returns the constant root model node.
|
Returns the constant root model node.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const ModelNode AbstractView::rootModelNode() const
|
ModelNode AbstractView::rootModelNode() const
|
||||||
{
|
{
|
||||||
Q_ASSERT(model());
|
Q_ASSERT(model());
|
||||||
return ModelNode(model()->d->rootNode(), model(), const_cast<AbstractView*>(this));
|
return ModelNode(model()->d->rootNode(), model(), const_cast<AbstractView*>(this));
|
||||||
@@ -465,7 +465,7 @@ bool AbstractView::isSelectedModelNode(const ModelNode &modelNode) const
|
|||||||
Sets the list of nodes to the actual selected nodes. Returns a list of the
|
Sets the list of nodes to the actual selected nodes. Returns a list of the
|
||||||
selected nodes.
|
selected nodes.
|
||||||
*/
|
*/
|
||||||
const QList<ModelNode> AbstractView::selectedModelNodes() const
|
QList<ModelNode> AbstractView::selectedModelNodes() const
|
||||||
{
|
{
|
||||||
return toModelNodeList(model()->d->selectedNodes());
|
return toModelNodeList(model()->d->selectedNodes());
|
||||||
}
|
}
|
||||||
|
@@ -187,7 +187,7 @@ bool InternalNode::hasAuxiliaryData(const PropertyName &name) const
|
|||||||
return m_auxiliaryDataHash.contains(name);
|
return m_auxiliaryDataHash.contains(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
QHash<PropertyName, QVariant> InternalNode::auxiliaryData() const
|
const QHash<PropertyName, QVariant> &InternalNode::auxiliaryData() const
|
||||||
{
|
{
|
||||||
return m_auxiliaryDataHash;
|
return m_auxiliaryDataHash;
|
||||||
}
|
}
|
||||||
|
@@ -84,7 +84,7 @@ public:
|
|||||||
void setAuxiliaryData(const PropertyName &name, const QVariant &data);
|
void setAuxiliaryData(const PropertyName &name, const QVariant &data);
|
||||||
void removeAuxiliaryData(const PropertyName &name);
|
void removeAuxiliaryData(const PropertyName &name);
|
||||||
bool hasAuxiliaryData(const PropertyName &name) const;
|
bool hasAuxiliaryData(const PropertyName &name) const;
|
||||||
QHash<PropertyName, QVariant> auxiliaryData() const;
|
const QHash<PropertyName, QVariant> &auxiliaryData() const;
|
||||||
|
|
||||||
InternalProperty::Pointer property(const PropertyName &name) const;
|
InternalProperty::Pointer property(const PropertyName &name) const;
|
||||||
InternalBindingProperty::Pointer bindingProperty(const PropertyName &name) const;
|
InternalBindingProperty::Pointer bindingProperty(const PropertyName &name) const;
|
||||||
|
@@ -106,9 +106,8 @@ ModelNode::ModelNode(ModelNode &&other)
|
|||||||
|
|
||||||
ModelNode &ModelNode::operator=(ModelNode &&other)
|
ModelNode &ModelNode::operator=(ModelNode &&other)
|
||||||
{
|
{
|
||||||
ModelNode newNode;
|
ModelNode newNode = std::move(other);
|
||||||
|
|
||||||
swap(other, newNode);
|
|
||||||
swap(*this, newNode);
|
swap(*this, newNode);
|
||||||
|
|
||||||
return *this;
|
return *this;
|
||||||
@@ -800,19 +799,19 @@ The list contains every ModelNode that belongs to one of this ModelNodes
|
|||||||
properties.
|
properties.
|
||||||
\return a list of all ModelNodes that are direct children
|
\return a list of all ModelNodes that are direct children
|
||||||
*/
|
*/
|
||||||
const QList<ModelNode> ModelNode::directSubModelNodes() const
|
QList<ModelNode> ModelNode::directSubModelNodes() const
|
||||||
{
|
{
|
||||||
return toModelNodeList(internalNode()->allDirectSubNodes(), view());
|
return toModelNodeList(internalNode()->allDirectSubNodes(), view());
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> ModelNode::directSubModelNodesOfType(const TypeName &typeName) const
|
QList<ModelNode> ModelNode::directSubModelNodesOfType(const TypeName &typeName) const
|
||||||
{
|
{
|
||||||
return Utils::filtered(directSubModelNodes(), [typeName](const ModelNode &node){
|
return Utils::filtered(directSubModelNodes(), [typeName](const ModelNode &node){
|
||||||
return node.metaInfo().isValid() && node.metaInfo().isSubclassOf(typeName);
|
return node.metaInfo().isValid() && node.metaInfo().isSubclassOf(typeName);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> ModelNode::subModelNodesOfType(const TypeName &typeName) const
|
QList<ModelNode> ModelNode::subModelNodesOfType(const TypeName &typeName) const
|
||||||
{
|
{
|
||||||
return Utils::filtered(allSubModelNodes(), [typeName](const ModelNode &node){
|
return Utils::filtered(allSubModelNodes(), [typeName](const ModelNode &node){
|
||||||
return node.metaInfo().isValid() && node.metaInfo().isSubclassOf(typeName);
|
return node.metaInfo().isValid() && node.metaInfo().isSubclassOf(typeName);
|
||||||
@@ -826,12 +825,12 @@ All children in this list will be implicitly removed if this ModelNode is destro
|
|||||||
\return a list of all ModelNodes that are direct or indirect children
|
\return a list of all ModelNodes that are direct or indirect children
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const QList<ModelNode> ModelNode::allSubModelNodes() const
|
QList<ModelNode> ModelNode::allSubModelNodes() const
|
||||||
{
|
{
|
||||||
return toModelNodeList(internalNode()->allSubNodes(), view());
|
return toModelNodeList(internalNode()->allSubNodes(), view());
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> ModelNode::allSubModelNodesAndThisNode() const
|
QList<ModelNode> ModelNode::allSubModelNodesAndThisNode() const
|
||||||
{
|
{
|
||||||
QList<ModelNode> modelNodeList;
|
QList<ModelNode> modelNodeList;
|
||||||
modelNodeList.append(*this);
|
modelNodeList.append(*this);
|
||||||
@@ -1065,7 +1064,7 @@ bool ModelNode::hasAuxiliaryData(const PropertyName &name) const
|
|||||||
return internalNode()->hasAuxiliaryData(name);
|
return internalNode()->hasAuxiliaryData(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
QHash<PropertyName, QVariant> ModelNode::auxiliaryData() const
|
const QHash<PropertyName, QVariant> &ModelNode::auxiliaryData() const
|
||||||
{
|
{
|
||||||
if (!isValid())
|
if (!isValid())
|
||||||
throw InvalidModelNodeException(__LINE__, __FUNCTION__, __FILE__);
|
throw InvalidModelNodeException(__LINE__, __FUNCTION__, __FILE__);
|
||||||
|
@@ -141,7 +141,7 @@ int NodeAbstractProperty::count() const
|
|||||||
return property->count();
|
return property->count();
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> NodeAbstractProperty::allSubNodes()
|
QList<ModelNode> NodeAbstractProperty::allSubNodes()
|
||||||
{
|
{
|
||||||
if (!internalNode()
|
if (!internalNode()
|
||||||
|| !internalNode()->isValid()
|
|| !internalNode()->isValid()
|
||||||
@@ -153,7 +153,7 @@ const QList<ModelNode> NodeAbstractProperty::allSubNodes()
|
|||||||
return QmlDesigner::toModelNodeList(property->allSubNodes(), view());
|
return QmlDesigner::toModelNodeList(property->allSubNodes(), view());
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> NodeAbstractProperty::directSubNodes() const
|
QList<ModelNode> NodeAbstractProperty::directSubNodes() const
|
||||||
{
|
{
|
||||||
if (!internalNode()
|
if (!internalNode()
|
||||||
|| !internalNode()->isValid()
|
|| !internalNode()->isValid()
|
||||||
|
@@ -63,7 +63,7 @@ static QList<ModelNode> internalNodesToModelNodes(const QList<Internal::Internal
|
|||||||
return modelNodeList;
|
return modelNodeList;
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> NodeListProperty::toModelNodeList() const
|
QList<ModelNode> NodeListProperty::toModelNodeList() const
|
||||||
{
|
{
|
||||||
if (!isValid())
|
if (!isValid())
|
||||||
throw InvalidPropertyException(__LINE__, __FUNCTION__, __FILE__, "<invalid node list property>");
|
throw InvalidPropertyException(__LINE__, __FUNCTION__, __FILE__, "<invalid node list property>");
|
||||||
@@ -77,7 +77,7 @@ const QList<ModelNode> NodeListProperty::toModelNodeList() const
|
|||||||
return QList<ModelNode>();
|
return QList<ModelNode>();
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<QmlObjectNode> NodeListProperty::toQmlObjectNodeList() const
|
QList<QmlObjectNode> NodeListProperty::toQmlObjectNodeList() const
|
||||||
{
|
{
|
||||||
if (model()->nodeInstanceView())
|
if (model()->nodeInstanceView())
|
||||||
return QList<QmlObjectNode>();
|
return QList<QmlObjectNode>();
|
||||||
|
@@ -718,7 +718,7 @@ ModelNode QmlFlowViewNode::addTransition(const QmlFlowTargetNode &from, const Qm
|
|||||||
return transition;
|
return transition;
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> QmlFlowViewNode::transitions() const
|
QList<ModelNode> QmlFlowViewNode::transitions() const
|
||||||
{
|
{
|
||||||
if (modelNode().nodeListProperty("flowTransitions").isValid())
|
if (modelNode().nodeListProperty("flowTransitions").isValid())
|
||||||
return modelNode().nodeListProperty("flowTransitions").toModelNodeList();
|
return modelNode().nodeListProperty("flowTransitions").toModelNodeList();
|
||||||
@@ -726,7 +726,7 @@ const QList<ModelNode> QmlFlowViewNode::transitions() const
|
|||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> QmlFlowViewNode::wildcards() const
|
QList<ModelNode> QmlFlowViewNode::wildcards() const
|
||||||
{
|
{
|
||||||
if (modelNode().nodeListProperty("flowWildcards").isValid())
|
if (modelNode().nodeListProperty("flowWildcards").isValid())
|
||||||
return modelNode().nodeListProperty("flowWildcards").toModelNodeList();
|
return modelNode().nodeListProperty("flowWildcards").toModelNodeList();
|
||||||
@@ -734,7 +734,7 @@ const QList<ModelNode> QmlFlowViewNode::wildcards() const
|
|||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> QmlFlowViewNode::decicions() const
|
QList<ModelNode> QmlFlowViewNode::decicions() const
|
||||||
{
|
{
|
||||||
if (modelNode().nodeListProperty("flowDecisions").isValid())
|
if (modelNode().nodeListProperty("flowDecisions").isValid())
|
||||||
return modelNode().nodeListProperty("flowDecisions").toModelNodeList();
|
return modelNode().nodeListProperty("flowDecisions").toModelNodeList();
|
||||||
|
@@ -255,12 +255,12 @@ qreal QmlTimelineKeyframeGroup::maxActualKeyframe() const
|
|||||||
return max;
|
return max;
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> QmlTimelineKeyframeGroup::keyframes() const
|
QList<ModelNode> QmlTimelineKeyframeGroup::keyframes() const
|
||||||
{
|
{
|
||||||
return modelNode().defaultNodeListProperty().toModelNodeList();
|
return modelNode().defaultNodeListProperty().toModelNodeList();
|
||||||
}
|
}
|
||||||
|
|
||||||
const QList<ModelNode> QmlTimelineKeyframeGroup::keyframePositions() const
|
QList<ModelNode> QmlTimelineKeyframeGroup::keyframePositions() const
|
||||||
{
|
{
|
||||||
QList<ModelNode> returnValues;
|
QList<ModelNode> returnValues;
|
||||||
for (const ModelNode &childNode : modelNode().defaultNodeListProperty().toModelNodeList()) {
|
for (const ModelNode &childNode : modelNode().defaultNodeListProperty().toModelNodeList()) {
|
||||||
|
Reference in New Issue
Block a user