From 507b6b3e4bcef3ef280944f3956b7f32ed86985b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Martins?= Date: Tue, 23 Jun 2015 16:18:12 +0100 Subject: Use QList::reserve(), reduces reallocations Change-Id: I9f218bdd65a97ad9c867b695f3ba27ab64a54d2a Reviewed-by: Marc Mutz --- src/printsupport/kernel/qpaintengine_alpha.cpp | 3 ++- src/printsupport/kernel/qprinter.cpp | 4 +++- src/printsupport/kernel/qprinterinfo.cpp | 16 ++++++++++++---- 3 files changed, 17 insertions(+), 6 deletions(-) (limited to 'src/printsupport') diff --git a/src/printsupport/kernel/qpaintengine_alpha.cpp b/src/printsupport/kernel/qpaintengine_alpha.cpp index 010a628e4f..710691453a 100644 --- a/src/printsupport/kernel/qpaintengine_alpha.cpp +++ b/src/printsupport/kernel/qpaintengine_alpha.cpp @@ -178,7 +178,8 @@ void QAlphaPaintEngine::drawPolygon(const QPointF *points, int pointCount, Polyg Q_D(QAlphaPaintEngine); QPolygonF poly; - for (int i=0; i QPrinter::supportedResolutions() const QList varlist = d->printEngine->property(QPrintEngine::PPK_SupportedResolutions).toList(); QList intlist; - for (int i=0; i QPrinterInfo::supportedPaperSizes() const { Q_D(const QPrinterInfo); QList list; - foreach (const QPageSize &pageSize, d->m_printDevice.supportedPageSizes()) + const QList supportedPageSizes = d->m_printDevice.supportedPageSizes(); + list.reserve(supportedPageSizes.size()); + foreach (const QPageSize &pageSize, supportedPageSizes) list.append(QPrinter::PaperSize(pageSize.id())); return list; } @@ -336,7 +338,9 @@ QList > QPrinterInfo::supportedSizesWithNames() const { Q_D(const QPrinterInfo); QList > list; - foreach (const QPageSize &pageSize, d->m_printDevice.supportedPageSizes()) + const QList supportedPageSizes = d->m_printDevice.supportedPageSizes(); + list.reserve(supportedPageSizes.size()); + foreach (const QPageSize &pageSize, supportedPageSizes) list.append(qMakePair(pageSize.name(), pageSize.size(QPageSize::Millimeter))); return list; } @@ -376,7 +380,9 @@ QList QPrinterInfo::supportedDuplexModes() const { Q_D(const QPrinterInfo); QList list; - foreach (QPrint::DuplexMode mode, d->m_printDevice.supportedDuplexModes()) + const QList supportedDuplexModes = d->m_printDevice.supportedDuplexModes(); + list.reserve(supportedDuplexModes.size()); + foreach (QPrint::DuplexMode mode, supportedDuplexModes) list << QPrinter::DuplexMode(mode); return list; } @@ -416,7 +422,9 @@ QList QPrinterInfo::availablePrinters() QList list; QPlatformPrinterSupport *ps = QPlatformPrinterSupportPlugin::get(); if (ps) { - foreach (const QString &id, ps->availablePrintDeviceIds()) + const QStringList availablePrintDeviceIds = ps->availablePrintDeviceIds(); + list.reserve(availablePrintDeviceIds.size()); + foreach (const QString &id, availablePrintDeviceIds) list.append(QPrinterInfo(id)); } return list; -- cgit v1.2.3