mirror of https://github.com/qt/qtbase.git
QGraphicsAnchorLayout: replace three loops over QHash::keys() with QHash::const_iterator loops
Quite obviously faster (doesn't need to populate a QList first, just to iterate over it). Also saves 1.5KiB text on optimized GCC 4.9 Linux AMD64 builds. Change-Id: If4c7af80165a6027d39359bac22df30e7ca09815 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
This commit is contained in:
parent
f2d8d9daee
commit
4891fd02c5
|
@ -2058,9 +2058,8 @@ QList<AnchorData *> getVariables(const QList<QSimplexConstraint *> &constraints)
|
|||
QSet<AnchorData *> variableSet;
|
||||
for (int i = 0; i < constraints.count(); ++i) {
|
||||
const QSimplexConstraint *c = constraints.at(i);
|
||||
foreach (QSimplexVariable *var, c->variables.keys()) {
|
||||
variableSet += static_cast<AnchorData *>(var);
|
||||
}
|
||||
for (auto it = c->variables.cbegin(), end = c->variables.cend(); it != end; ++it)
|
||||
variableSet.insert(static_cast<AnchorData *>(it.key()));
|
||||
}
|
||||
return variableSet.toList();
|
||||
}
|
||||
|
@ -2546,7 +2545,8 @@ QGraphicsAnchorLayoutPrivate::getGraphParts(Orientation orientation)
|
|||
// remaining constraints.
|
||||
if (match) {
|
||||
trunkConstraints += c;
|
||||
trunkVariables += QSet<QSimplexVariable *>::fromList(c->variables.keys());
|
||||
for (auto jt = c->variables.cbegin(), end = c->variables.cend(); jt != end; ++jt)
|
||||
trunkVariables.insert(jt.key());
|
||||
it = remainingConstraints.erase(it);
|
||||
dirty = true;
|
||||
} else {
|
||||
|
|
|
@ -153,9 +153,11 @@ bool QSimplex::setConstraints(const QList<QSimplexConstraint *> &newConstraints)
|
|||
// "variables" is a list that provides a stable, indexed list of all variables
|
||||
// used in this problem.
|
||||
QSet<QSimplexVariable *> variablesSet;
|
||||
for (int i = 0; i < constraints.size(); ++i)
|
||||
variablesSet += \
|
||||
QSet<QSimplexVariable *>::fromList(constraints[i]->variables.keys());
|
||||
for (int i = 0; i < constraints.size(); ++i) {
|
||||
const auto &v = constraints.at(i)->variables;
|
||||
for (auto it = v.cbegin(), end = v.cend(); it != end; ++it)
|
||||
variablesSet.insert(it.key());
|
||||
}
|
||||
variables = variablesSet.toList();
|
||||
|
||||
// Set Variables reverse mapping
|
||||
|
|
Loading…
Reference in New Issue