diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2015-06-15 14:49:09 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2015-06-17 07:09:46 +0000 |
commit | dd788e0dc84b9c46953b34da1757a15d32e815a0 (patch) | |
tree | 323f9efe5321587ae0bbb326dce7dbc96b97ec7c /src/widgets/widgets/qabstractbutton.cpp | |
parent | 7c34ea1fc7b51760de09d97d9a03b878898cc49b (diff) |
QButtonGroup: don't create a list just to find the minimum element
Change-Id: Ibd66ad81264abbe804db2bae48823966d5e4f449
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Diffstat (limited to 'src/widgets/widgets/qabstractbutton.cpp')
-rw-r--r-- | src/widgets/widgets/qabstractbutton.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/widgets/widgets/qabstractbutton.cpp b/src/widgets/widgets/qabstractbutton.cpp index e413b3b87a..292bbc3325 100644 --- a/src/widgets/widgets/qabstractbutton.cpp +++ b/src/widgets/widgets/qabstractbutton.cpp @@ -221,13 +221,12 @@ void QButtonGroup::addButton(QAbstractButton *button, int id) button->d_func()->group = this; d->buttonList.append(button); if (id == -1) { - QList<int> ids = d->mapping.values(); - if (ids.isEmpty()) - d->mapping[button] = -2; - else { - std::sort(ids.begin(), ids.end()); - d->mapping[button] = ids.first()-1; - } + const QHash<QAbstractButton*, int>::const_iterator it + = std::min_element(d->mapping.cbegin(), d->mapping.cend()); + if (it == d->mapping.cend()) + d->mapping[button] = -2; + else + d->mapping[button] = *it - 1; } else { d->mapping[button] = id; } |