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:
Marco Bubke
2020-11-16 14:51:46 +01:00
parent 2d5a6818f2
commit 382aed1f72
16 changed files with 40 additions and 41 deletions

View File

@@ -348,7 +348,7 @@ void TransitionEditorView::openSettingsDialog()
dialog->show();
}
const QList<ModelNode> TransitionEditorView::allTransitions() const
QList<ModelNode> TransitionEditorView::allTransitions() const
{
if (rootModelNode().isValid() && rootModelNode().hasProperty("transitions")) {
NodeAbstractProperty transitions = rootModelNode().nodeAbstractProperty("transitions");

View File

@@ -83,7 +83,7 @@ public:
void openSettingsDialog();
const QList<ModelNode> allTransitions() const;
QList<ModelNode> allTransitions() const;
void asyncUpdate(const ModelNode &transition);

View File

@@ -142,7 +142,7 @@ public:
const QString &nodeSource = QString(),
ModelNode::NodeSourceType nodeSourceType = ModelNode::NodeWithoutSource);
const ModelNode rootModelNode() const;
ModelNode rootModelNode() const;
ModelNode rootModelNode();
void setSelectedModelNodes(const QList<ModelNode> &selectedNodeList);
@@ -155,7 +155,7 @@ public:
bool hasSingleSelectedModelNode() const;
bool isSelectedModelNode(const ModelNode &modelNode) const;
const QList<ModelNode> selectedModelNodes() const;
QList<ModelNode> selectedModelNodes() const;
ModelNode firstSelectedModelNode() const;
ModelNode singleSelectedModelNode() const;

View File

@@ -115,12 +115,12 @@ public:
void setParentProperty(const ModelNode &newParentNode, const PropertyName &propertyName);
bool hasParentProperty() const;
const QList<ModelNode> directSubModelNodes() const;
const QList<ModelNode> directSubModelNodesOfType(const TypeName &typeName) const;
const QList<ModelNode> subModelNodesOfType(const TypeName &typeName) const;
QList<ModelNode> directSubModelNodes() const;
QList<ModelNode> directSubModelNodesOfType(const TypeName &typeName) const;
QList<ModelNode> subModelNodesOfType(const TypeName &typeName) const;
const QList<ModelNode> allSubModelNodes() const;
const QList<ModelNode> allSubModelNodesAndThisNode() const;
QList<ModelNode> allSubModelNodes() const;
QList<ModelNode> allSubModelNodesAndThisNode() const;
bool hasAnySubModelNodes() const;
//###
@@ -186,11 +186,11 @@ public:
static int variantUserType();
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 removeAuxiliaryData(const PropertyName &name) const;
bool hasAuxiliaryData(const PropertyName &name) const;
QHash<PropertyName, QVariant> auxiliaryData() const;
const QHash<PropertyName, QVariant> &auxiliaryData() const;
QString customId() const;
bool hasCustomId() const;

View File

@@ -53,8 +53,8 @@ public:
int indexOf(const ModelNode &node) const;
NodeAbstractProperty parentProperty() const;
const QList<ModelNode> allSubNodes();
const QList<ModelNode> directSubNodes() const;
QList<ModelNode> allSubNodes();
QList<ModelNode> directSubNodes() const;
protected:
NodeAbstractProperty(const PropertyName &propertyName, const Internal::InternalNodePointer &internalNode, Model *model, AbstractView *view);

View File

@@ -48,8 +48,8 @@ class QMLDESIGNERCORE_EXPORT NodeListProperty : public NodeAbstractProperty
public:
NodeListProperty();
NodeListProperty(const NodeListProperty &nodeListProperty, AbstractView *view);
const QList<ModelNode> toModelNodeList() const;
const QList<QmlObjectNode> toQmlObjectNodeList() const;
QList<ModelNode> toModelNodeList() const;
QList<QmlObjectNode> toQmlObjectNodeList() const;
void slide(int, int) const;
void swap(int, int) const;
void reparentHere(const ModelNode &modelNode);

View File

@@ -186,9 +186,9 @@ public:
static bool isValidQmlFlowViewNode(const ModelNode &modelNode);
QList<QmlFlowItemNode> flowItems() const;
ModelNode addTransition(const QmlFlowTargetNode &from, const QmlFlowTargetNode &to);
const QList<ModelNode> transitions() const;
const QList<ModelNode> wildcards() const;
const QList<ModelNode> decicions() const;
QList<ModelNode> transitions() const;
QList<ModelNode> wildcards() const;
QList<ModelNode> decicions() const;
QList<ModelNode> transitionsForTarget(const ModelNode &modelNode);
QList<ModelNode> transitionsForSource(const ModelNode &modelNode);
void removeDanglingTransitions();

View File

@@ -65,9 +65,9 @@ public:
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 checkKeyframesType(const ModelNode &node);

View File

@@ -102,7 +102,7 @@ ModelNode AbstractView::createModelNode(const TypeName &typeName,
Returns the constant root model node.
*/
const ModelNode AbstractView::rootModelNode() const
ModelNode AbstractView::rootModelNode() const
{
Q_ASSERT(model());
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
selected nodes.
*/
const QList<ModelNode> AbstractView::selectedModelNodes() const
QList<ModelNode> AbstractView::selectedModelNodes() const
{
return toModelNodeList(model()->d->selectedNodes());
}

View File

@@ -187,7 +187,7 @@ bool InternalNode::hasAuxiliaryData(const PropertyName &name) const
return m_auxiliaryDataHash.contains(name);
}
QHash<PropertyName, QVariant> InternalNode::auxiliaryData() const
const QHash<PropertyName, QVariant> &InternalNode::auxiliaryData() const
{
return m_auxiliaryDataHash;
}

View File

@@ -84,7 +84,7 @@ public:
void setAuxiliaryData(const PropertyName &name, const QVariant &data);
void removeAuxiliaryData(const PropertyName &name);
bool hasAuxiliaryData(const PropertyName &name) const;
QHash<PropertyName, QVariant> auxiliaryData() const;
const QHash<PropertyName, QVariant> &auxiliaryData() const;
InternalProperty::Pointer property(const PropertyName &name) const;
InternalBindingProperty::Pointer bindingProperty(const PropertyName &name) const;

View File

@@ -106,9 +106,8 @@ ModelNode::ModelNode(ModelNode &&other)
ModelNode &ModelNode::operator=(ModelNode &&other)
{
ModelNode newNode;
ModelNode newNode = std::move(other);
swap(other, newNode);
swap(*this, newNode);
return *this;
@@ -800,19 +799,19 @@ The list contains every ModelNode that belongs to one of this ModelNodes
properties.
\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());
}
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 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 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
*/
const QList<ModelNode> ModelNode::allSubModelNodes() const
QList<ModelNode> ModelNode::allSubModelNodes() const
{
return toModelNodeList(internalNode()->allSubNodes(), view());
}
const QList<ModelNode> ModelNode::allSubModelNodesAndThisNode() const
QList<ModelNode> ModelNode::allSubModelNodesAndThisNode() const
{
QList<ModelNode> modelNodeList;
modelNodeList.append(*this);
@@ -1065,7 +1064,7 @@ bool ModelNode::hasAuxiliaryData(const PropertyName &name) const
return internalNode()->hasAuxiliaryData(name);
}
QHash<PropertyName, QVariant> ModelNode::auxiliaryData() const
const QHash<PropertyName, QVariant> &ModelNode::auxiliaryData() const
{
if (!isValid())
throw InvalidModelNodeException(__LINE__, __FUNCTION__, __FILE__);

View File

@@ -141,7 +141,7 @@ int NodeAbstractProperty::count() const
return property->count();
}
const QList<ModelNode> NodeAbstractProperty::allSubNodes()
QList<ModelNode> NodeAbstractProperty::allSubNodes()
{
if (!internalNode()
|| !internalNode()->isValid()
@@ -153,7 +153,7 @@ const QList<ModelNode> NodeAbstractProperty::allSubNodes()
return QmlDesigner::toModelNodeList(property->allSubNodes(), view());
}
const QList<ModelNode> NodeAbstractProperty::directSubNodes() const
QList<ModelNode> NodeAbstractProperty::directSubNodes() const
{
if (!internalNode()
|| !internalNode()->isValid()

View File

@@ -63,7 +63,7 @@ static QList<ModelNode> internalNodesToModelNodes(const QList<Internal::Internal
return modelNodeList;
}
const QList<ModelNode> NodeListProperty::toModelNodeList() const
QList<ModelNode> NodeListProperty::toModelNodeList() const
{
if (!isValid())
throw InvalidPropertyException(__LINE__, __FUNCTION__, __FILE__, "<invalid node list property>");
@@ -77,7 +77,7 @@ const QList<ModelNode> NodeListProperty::toModelNodeList() const
return QList<ModelNode>();
}
const QList<QmlObjectNode> NodeListProperty::toQmlObjectNodeList() const
QList<QmlObjectNode> NodeListProperty::toQmlObjectNodeList() const
{
if (model()->nodeInstanceView())
return QList<QmlObjectNode>();

View File

@@ -718,7 +718,7 @@ ModelNode QmlFlowViewNode::addTransition(const QmlFlowTargetNode &from, const Qm
return transition;
}
const QList<ModelNode> QmlFlowViewNode::transitions() const
QList<ModelNode> QmlFlowViewNode::transitions() const
{
if (modelNode().nodeListProperty("flowTransitions").isValid())
return modelNode().nodeListProperty("flowTransitions").toModelNodeList();
@@ -726,7 +726,7 @@ const QList<ModelNode> QmlFlowViewNode::transitions() const
return {};
}
const QList<ModelNode> QmlFlowViewNode::wildcards() const
QList<ModelNode> QmlFlowViewNode::wildcards() const
{
if (modelNode().nodeListProperty("flowWildcards").isValid())
return modelNode().nodeListProperty("flowWildcards").toModelNodeList();
@@ -734,7 +734,7 @@ const QList<ModelNode> QmlFlowViewNode::wildcards() const
return {};
}
const QList<ModelNode> QmlFlowViewNode::decicions() const
QList<ModelNode> QmlFlowViewNode::decicions() const
{
if (modelNode().nodeListProperty("flowDecisions").isValid())
return modelNode().nodeListProperty("flowDecisions").toModelNodeList();

View File

@@ -255,12 +255,12 @@ qreal QmlTimelineKeyframeGroup::maxActualKeyframe() const
return max;
}
const QList<ModelNode> QmlTimelineKeyframeGroup::keyframes() const
QList<ModelNode> QmlTimelineKeyframeGroup::keyframes() const
{
return modelNode().defaultNodeListProperty().toModelNodeList();
}
const QList<ModelNode> QmlTimelineKeyframeGroup::keyframePositions() const
QList<ModelNode> QmlTimelineKeyframeGroup::keyframePositions() const
{
QList<ModelNode> returnValues;
for (const ModelNode &childNode : modelNode().defaultNodeListProperty().toModelNodeList()) {