diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2013-10-05 00:51:26 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-02-26 22:02:05 +0100 |
commit | 0abc35b5f78d6d0f2fd958ea550e8e4b238fddfb (patch) | |
tree | f8fc58774b9dc321a4caa1abf016b0b167572340 /src/widgets/widgets/qmdiarea_p.h | |
parent | d432d17f83e5edf4fb14e13cd74d57643df3a13a (diff) |
QMdiArea: replace uses of QList<QRect> with QVector
A QList<QRect> is horribly inefficient, and this is private API, so we're free to
change it.
Change-Id: I26c2be51393f883d160b86ed1414f801f211df39
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/widgets/widgets/qmdiarea_p.h')
-rw-r--r-- | src/widgets/widgets/qmdiarea_p.h | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/widgets/widgets/qmdiarea_p.h b/src/widgets/widgets/qmdiarea_p.h index 90db55438a..7d562e1212 100644 --- a/src/widgets/widgets/qmdiarea_p.h +++ b/src/widgets/widgets/qmdiarea_p.h @@ -59,6 +59,7 @@ #ifndef QT_NO_MDIAREA #include <QList> +#include <QVector> #include <QRect> #include <QPoint> #include <QtWidgets/qapplication.h> @@ -116,24 +117,24 @@ public: // Places the rectangle defined by 'size' relative to 'rects' and 'domain'. // Returns the position of the resulting rectangle. virtual QPoint place( - const QSize &size, const QList<QRect> &rects, const QRect &domain) const = 0; + const QSize &size, const QVector<QRect> &rects, const QRect &domain) const = 0; virtual ~Placer() {} }; class MinOverlapPlacer : public Placer { - QPoint place(const QSize &size, const QList<QRect> &rects, const QRect &domain) const; - static int accumulatedOverlap(const QRect &source, const QList<QRect> &rects); - static QRect findMinOverlapRect(const QList<QRect> &source, const QList<QRect> &rects); + QPoint place(const QSize &size, const QVector<QRect> &rects, const QRect &domain) const; + static int accumulatedOverlap(const QRect &source, const QVector<QRect> &rects); + static QRect findMinOverlapRect(const QVector<QRect> &source, const QVector<QRect> &rects); static void getCandidatePlacements( - const QSize &size, const QList<QRect> &rects, const QRect &domain, - QList<QRect> &candidates); + const QSize &size, const QVector<QRect> &rects, const QRect &domain, + QVector<QRect> &candidates); static QPoint findBestPlacement( - const QRect &domain, const QList<QRect> &rects, QList<QRect> &source); + const QRect &domain, const QVector<QRect> &rects, QVector<QRect> &source); static void findNonInsiders( - const QRect &domain, QList<QRect> &source, QList<QRect> &result); + const QRect &domain, QVector<QRect> &source, QVector<QRect> &result); static void findMaxOverlappers( - const QRect &domain, const QList<QRect> &source, QList<QRect> &result); + const QRect &domain, const QVector<QRect> &source, QVector<QRect> &result); }; } // namespace QMdi |