qprintpreviewwidget.cpp

Absolute File Name:/home/qt/qt5_coco/qt5/qtbase/src/printsupport/widgets/qprintpreviewwidget.cpp
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7namespace {-
8class PageItem : public QGraphicsItem-
9{-
10public:-
11 PageItem(int _pageNum, const QPicture* _pagePicture, QSize _paperSize, QRect _pageRect)-
12 : pageNum(_pageNum), pagePicture(_pagePicture),-
13 paperSize(_paperSize), pageRect(_pageRect)-
14 {-
15 qreal border = qMax(paperSize.height(), paperSize.width()) / 25;-
16 brect = QRectF(QPointF(-border, -border),-
17 QSizeF(paperSize)+QSizeF(2*border, 2*border));-
18 setCacheMode(DeviceCoordinateCache);-
19 }
executed 4 times by 1 test: end of block
Executed by:
  • tst_QPrinter
4
20-
21 QRectF boundingRect() const override-
22 { return
executed 113 times by 1 test: return brect;
Executed by:
  • tst_QPrinter
brect;
executed 113 times by 1 test: return brect;
Executed by:
  • tst_QPrinter
}
113
23-
24 inline int pageNumber() const-
25 { return
executed 17 times by 1 test: return pageNum;
Executed by:
  • tst_QPrinter
pageNum;
executed 17 times by 1 test: return pageNum;
Executed by:
  • tst_QPrinter
}
17
26-
27 void paint(QPainter *painter, const QStyleOptionGraphicsItem *item, QWidget *widget) override;-
28-
29private:-
30 int pageNum;-
31 const QPicture* pagePicture;-
32 QSize paperSize;-
33 QRect pageRect;-
34 QRectF brect;-
35};-
36-
37void PageItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)-
38{-
39 (void)widget;;-
40 QRectF paperRect(0,0, paperSize.width(), paperSize.height());-
41-
42-
43 painter->setClipRect(option->exposedRect);-
44 qreal shWidth = paperRect.width()/100;-
45 QRectF rshadow(paperRect.topRight() + QPointF(0, shWidth),-
46 paperRect.bottomRight() + QPointF(shWidth, 0));-
47 QLinearGradient rgrad(rshadow.topLeft(), rshadow.topRight());-
48 rgrad.setColorAt(0.0, QColor(0,0,0,255));-
49 rgrad.setColorAt(1.0, QColor(0,0,0,0));-
50 painter->fillRect(rshadow, QBrush(rgrad));-
51 QRectF bshadow(paperRect.bottomLeft() + QPointF(shWidth, 0),-
52 paperRect.bottomRight() + QPointF(0, shWidth));-
53 QLinearGradient bgrad(bshadow.topLeft(), bshadow.bottomLeft());-
54 bgrad.setColorAt(0.0, QColor(0,0,0,255));-
55 bgrad.setColorAt(1.0, QColor(0,0,0,0));-
56 painter->fillRect(bshadow, QBrush(bgrad));-
57 QRectF cshadow(paperRect.bottomRight(),-
58 paperRect.bottomRight() + QPointF(shWidth, shWidth));-
59 QRadialGradient cgrad(cshadow.topLeft(), shWidth, cshadow.topLeft());-
60 cgrad.setColorAt(0.0, QColor(0,0,0,255));-
61 cgrad.setColorAt(1.0, QColor(0,0,0,0));-
62 painter->fillRect(cshadow, QBrush(cgrad));-
63-
64 painter->setClipRect(paperRect & option->exposedRect);-
65 painter->fillRect(paperRect, Qt::white);-
66 if (!pagePicture
!pagePictureDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_QPrinter
)
0-2
67 return;
never executed: return;
0
68 painter->drawPicture(pageRect.topLeft(), *pagePicture);-
69-
70-
71 QPainterPath path;-
72 path.addRect(paperRect);-
73 path.addRect(pageRect);-
74 painter->setPen(QPen(Qt::NoPen));-
75 painter->setBrush(QColor(255, 255, 255, 180));-
76 painter->drawPath(path);-
77}
executed 2 times by 1 test: end of block
Executed by:
  • tst_QPrinter
2
78-
79class GraphicsView : public QGraphicsView-
80{-
81 public: template <typename ThisObject> inline void qt_check_for_QOBJECT_macro(const ThisObject &_q_argument) const { int i = qYouForgotTheQ_OBJECT_Macro(this, &_q_argument); i = i + 1; }-
82#pragma GCC diagnostic push-
83 static const QMetaObject staticMetaObject; virtual const QMetaObject *metaObject() const; virtual void *qt_metacast(const char *); virtual int qt_metacall(QMetaObject::Call, int, void **); static inline QString tr(const char *s, const char *c = nullptr, int n = -1) { return staticMetaObject.tr(s, c, n); } __attribute__ ((__deprecated__)) static inline QString trUtf8(const char *s, const char *c = nullptr, int n = -1) { return staticMetaObject.tr(s, c, n); } private: __attribute__((visibility("hidden"))) static void qt_static_metacall(QObject *, QMetaObject::Call, int, void **);-
84#pragma GCC diagnostic pop-
85 struct QPrivateSignal {};-
86public:-
87 GraphicsView(QWidget* parent = 0)-
88 : QGraphicsView(parent)-
89 {-
90-
91-
92-
93 }
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
94public :-
95 void resized();-
96-
97protected:-
98 void resizeEvent(QResizeEvent* e) override-
99 {-
100 {-
101 const QSignalBlocker blocker(verticalScrollBar());-
102 QGraphicsView::resizeEvent(e);-
103 }-
104 resized();-
105 }
executed 2 times by 1 test: end of block
Executed by:
  • tst_QPrinter
2
106-
107 void showEvent(QShowEvent* e) override-
108 {-
109 QGraphicsView::showEvent(e);-
110 resized();-
111 }
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
112};-
113-
114}-
115-
116class QPrintPreviewWidgetPrivate : public QWidgetPrivate-
117{-
118 inline QPrintPreviewWidget* q_func() { return static_cast<QPrintPreviewWidget *>(q_ptr); } inline const QPrintPreviewWidget* q_func() const { return static_cast<const QPrintPreviewWidget *>(q_ptr); } friend class QPrintPreviewWidget;-
119public:-
120 QPrintPreviewWidgetPrivate()-
121 : scene(0), curPage(1),-
122 viewMode(QPrintPreviewWidget::SinglePageView),-
123 zoomMode(QPrintPreviewWidget::FitInView),-
124 zoomFactor(1), initialized(false), fitting(true)-
125 {}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
126-
127-
128 void _q_fit(bool doFitting = false);-
129 void _q_updateCurrentPage();-
130-
131 void init();-
132 void populateScene();-
133 void layoutPages();-
134 void generatePreview();-
135 void setCurrentPage(int pageNumber);-
136 void zoom(qreal zoom);-
137 void setZoomFactor(qreal zoomFactor);-
138 int calcCurrentPage();-
139-
140 GraphicsView *graphicsView;-
141 QGraphicsScene *scene;-
142-
143 int curPage;-
144 QList<const QPicture *> pictures;-
145 QList<QGraphicsItem *> pages;-
146-
147 QPrintPreviewWidget::ViewMode viewMode;-
148 QPrintPreviewWidget::ZoomMode zoomMode;-
149 qreal zoomFactor;-
150 bool ownPrinter;-
151 QPrinter* printer;-
152 bool initialized;-
153 bool fitting;-
154};-
155-
156void QPrintPreviewWidgetPrivate::_q_fit(bool doFitting)-
157{-
158 QPrintPreviewWidget * const q = q_func();-
159-
160 if (curPage < 1
curPage < 1Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
|| curPage > pages.count()
curPage > pages.count()Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
)
0-4
161 return;
never executed: return;
0
162-
163 if (!doFitting
!doFittingDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEnever evaluated
&& !fitting
!fittingDescription
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
)
0-4
164 return;
never executed: return;
0
165-
166 if (doFitting
doFittingDescription
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
&& fitting
fittingDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0-4
167 QRect viewRect = graphicsView->viewport()->rect();-
168 if (zoomMode == QPrintPreviewWidget::FitInView
zoomMode == QP...get::FitInViewDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
169 const QList<QGraphicsItem*> containedItems = graphicsView->items(viewRect, Qt::ContainsItemBoundingRect);-
170 for (QGraphicsItem* item : containedItems) {-
171 PageItem* pg = static_cast<PageItem*>(item);-
172 if (pg->pageNumber() == curPage
pg->pageNumber() == curPageDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
173 return;
never executed: return;
0
174 }
never executed: end of block
0
175 }
never executed: end of block
0
176-
177 int newPage = calcCurrentPage();-
178 if (newPage != curPage
newPage != curPageDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
179 curPage = newPage;
never executed: curPage = newPage;
0
180 }
never executed: end of block
0
181-
182 QRectF target = pages.at(curPage-1)->sceneBoundingRect();-
183 if (viewMode == QPrintPreviewWidget::FacingPagesView
viewMode == QP...acingPagesViewDescription
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
) {
0-4
184-
185 if (curPage % 2
curPage % 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
186 target.setLeft(target.left() - target.width());
never executed: target.setLeft(target.left() - target.width());
0
187 else-
188 target.setRight(target.right() + target.width());
never executed: target.setRight(target.right() + target.width());
0
189 } else if (viewMode == QPrintPreviewWidget::AllPagesView
viewMode == QP...::AllPagesViewDescription
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
) {
0-4
190 target = scene->itemsBoundingRect();-
191 }
never executed: end of block
0
192-
193 if (zoomMode == QPrintPreviewWidget::FitToWidth
zoomMode == QP...et::FitToWidthDescription
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
) {
0-4
194 QTransform t;-
195 qreal scale = graphicsView->viewport()->width() / target.width();-
196 t.scale(scale, scale);-
197 graphicsView->setTransform(t);-
198 if (doFitting
doFittingDescription
TRUEnever evaluated
FALSEnever evaluated
&& fitting
fittingDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
199 QRectF viewSceneRect = graphicsView->viewportTransform().mapRect(graphicsView->viewport()->rect());-
200 viewSceneRect.moveTop(target.top());-
201 graphicsView->ensureVisible(viewSceneRect);-
202 }
never executed: end of block
0
203 }
never executed: end of block
else {
0
204 graphicsView->fitInView(target, Qt::KeepAspectRatio);-
205 if (zoomMode == QPrintPreviewWidget::FitInView
zoomMode == QP...get::FitInViewDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEnever evaluated
) {
0-4
206 int step = qRound(graphicsView->matrix().mapRect(target).height());-
207 graphicsView->verticalScrollBar()->setSingleStep(step);-
208 graphicsView->verticalScrollBar()->setPageStep(step);-
209 }
executed 4 times by 1 test: end of block
Executed by:
  • tst_QPrinter
4
210 }
executed 4 times by 1 test: end of block
Executed by:
  • tst_QPrinter
4
211-
212 zoomFactor = graphicsView->transform().m11() * (float(printer->logicalDpiY()) / q->logicalDpiY());-
213 q->previewChanged();-
214}
executed 4 times by 1 test: end of block
Executed by:
  • tst_QPrinter
4
215-
216void QPrintPreviewWidgetPrivate::_q_updateCurrentPage()-
217{-
218 QPrintPreviewWidget * const q = q_func();-
219-
220 if (viewMode == QPrintPreviewWidget::AllPagesView
viewMode == QP...::AllPagesViewDescription
TRUEnever evaluated
FALSEevaluated 11 times by 1 test
Evaluated by:
  • tst_QPrinter
)
0-11
221 return;
never executed: return;
0
222-
223 int newPage = calcCurrentPage();-
224 if (newPage != curPage
newPage != curPageDescription
TRUEevaluated 8 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEevaluated 3 times by 1 test
Evaluated by:
  • tst_QPrinter
) {
3-8
225 curPage = newPage;-
226 q->previewChanged();-
227 }
executed 8 times by 1 test: end of block
Executed by:
  • tst_QPrinter
8
228}
executed 11 times by 1 test: end of block
Executed by:
  • tst_QPrinter
11
229-
230int QPrintPreviewWidgetPrivate::calcCurrentPage()-
231{-
232 int maxArea = 0;-
233 int newPage = curPage;-
234 QRect viewRect = graphicsView->viewport()->rect();-
235 const QList<QGraphicsItem*> items = graphicsView->items(viewRect);-
236 for (auto *item : items) {-
237 PageItem* pg = static_cast<PageItem*>(item);-
238 QRect overlap = graphicsView->mapFromScene(pg->sceneBoundingRect()).boundingRect() & viewRect;-
239 int area = overlap.width() * overlap.height();-
240 if (area > maxArea
area > maxAreaDescription
TRUEevaluated 17 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEevaluated 3 times by 1 test
Evaluated by:
  • tst_QPrinter
) {
3-17
241 maxArea = area;-
242 newPage = pg->pageNumber();-
243 }
executed 17 times by 1 test: end of block
Executed by:
  • tst_QPrinter
else if (area == maxArea
area == maxAreaDescription
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • tst_QPrinter
&& pg->pageNumber() < newPage
pg->pageNumber() < newPageDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0-17
244 newPage = pg->pageNumber();-
245 }
never executed: end of block
0
246 }
executed 20 times by 1 test: end of block
Executed by:
  • tst_QPrinter
20
247 return
executed 11 times by 1 test: return newPage;
Executed by:
  • tst_QPrinter
newPage;
executed 11 times by 1 test: return newPage;
Executed by:
  • tst_QPrinter
11
248}-
249-
250void QPrintPreviewWidgetPrivate::init()-
251{-
252 QPrintPreviewWidget * const q = q_func();-
253-
254 graphicsView = new GraphicsView;-
255 graphicsView->setInteractive(false);-
256 graphicsView->setDragMode(QGraphicsView::ScrollHandDrag);-
257 graphicsView->setViewportUpdateMode(QGraphicsView::SmartViewportUpdate);-
258 QObject::connect(graphicsView->verticalScrollBar(), qFlagLocation("2""valueChanged(int)" "\0" __FILE__ ":" "321"),-
259 q, qFlagLocation("1""_q_updateCurrentPage()" "\0" __FILE__ ":" "322"));-
260 QObject::connect(graphicsView, qFlagLocation("2""resized()" "\0" __FILE__ ":" "323"), q, qFlagLocation("1""_q_fit()" "\0" __FILE__ ":" "323"));-
261-
262 scene = new QGraphicsScene(graphicsView);-
263 scene->setBackgroundBrush(Qt::gray);-
264 graphicsView->setScene(scene);-
265-
266 QVBoxLayout *layout = new QVBoxLayout;-
267 q->setLayout(layout);-
268 layout->setContentsMargins(0, 0, 0, 0);-
269 layout->addWidget(graphicsView);-
270}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
271-
272void QPrintPreviewWidgetPrivate::populateScene()-
273{-
274-
275 for (auto *page : qAsConst(pages))-
276 scene->removeItem(page);
never executed: scene->removeItem(page);
0
277 qDeleteAll(pages);-
278 pages.clear();-
279-
280 QSize paperSize = printer->pageLayout().fullRectPixels(printer->resolution()).size();-
281 QRect pageRect = printer->pageLayout().paintRectPixels(printer->resolution());-
282-
283 int page = 1;-
284 for (auto *picture : qAsConst(pictures)) {-
285 PageItem* item = new PageItem(page++, picture, paperSize, pageRect);-
286 scene->addItem(item);-
287 pages.append(item);-
288 }
executed 4 times by 1 test: end of block
Executed by:
  • tst_QPrinter
4
289}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
290-
291void QPrintPreviewWidgetPrivate::layoutPages()-
292{-
293 int numPages = pages.count();-
294 if (numPages < 1
numPages < 1Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
)
0-1
295 return;
never executed: return;
0
296-
297 int numPagePlaces = numPages;-
298 int cols = 1;-
299 if (viewMode == QPrintPreviewWidget::AllPagesView
viewMode == QP...::AllPagesViewDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
) {
0-1
300 if (printer->orientation() == QPrinter::Portrait
printer->orien...nter::PortraitDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
301 cols = qCeil(qSqrt((float) numPages));
never executed: cols = qCeil(qSqrt((float) numPages));
0
302 else-
303 cols = qFloor(qSqrt((float) numPages));
never executed: cols = qFloor(qSqrt((float) numPages));
0
304 cols += cols % 2;-
305 }
never executed: end of block
0
306 else if (viewMode == QPrintPreviewWidget::FacingPagesView
viewMode == QP...acingPagesViewDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
) {
0-1
307 cols = 2;-
308 numPagePlaces += 1;-
309 }
never executed: end of block
0
310 int rows = qCeil(qreal(numPagePlaces) / cols);-
311-
312 qreal itemWidth = pages.at(0)->boundingRect().width();-
313 qreal itemHeight = pages.at(0)->boundingRect().height();-
314 int pageNum = 1;-
315 for (int i = 0; i < rows
i < rowsDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
&& pageNum <= numPages
pageNum <= numPagesDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEnever evaluated
; i++) {
0-4
316 for (int j = 0; j < cols
j < colsDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
&& pageNum <= numPages
pageNum <= numPagesDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_QPrinter
FALSEnever evaluated
; j++) {
0-4
317 if (!i
!iDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
FALSEevaluated 3 times by 1 test
Evaluated by:
  • tst_QPrinter
&& !j
!jDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
FALSEnever evaluated
&& viewMode == QPrintPreviewWidget::FacingPagesView
viewMode == QP...acingPagesViewDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
) {
0-3
318-
319 continue;
never executed: continue;
0
320 } else {-
321 pages.at(pageNum-1)->setPos(QPointF(j*itemWidth, i*itemHeight));-
322 pageNum++;-
323 }
executed 4 times by 1 test: end of block
Executed by:
  • tst_QPrinter
4
324 }-
325 }
executed 4 times by 1 test: end of block
Executed by:
  • tst_QPrinter
4
326 scene->setSceneRect(scene->itemsBoundingRect());-
327}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
328-
329void QPrintPreviewWidgetPrivate::generatePreview()-
330{-
331-
332-
333-
334-
335-
336-
337 QPrintPreviewWidget * const q = q_func();-
338 printer->d_func()->setPreviewMode(true);-
339 q->paintRequested(printer);-
340 printer->d_func()->setPreviewMode(false);-
341 pictures = printer->d_func()->previewPages();-
342 populateScene();-
343 layoutPages();-
344 curPage = qBound(1, curPage, pages.count());-
345 if (fitting
fittingDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
FALSEnever evaluated
)
0-1
346 _q_fit();
executed 1 time by 1 test: _q_fit();
Executed by:
  • tst_QPrinter
1
347 q->previewChanged();-
348}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
349-
350void QPrintPreviewWidgetPrivate::setCurrentPage(int pageNumber)-
351{-
352 if (pageNumber < 1
pageNumber < 1Description
TRUEnever evaluated
FALSEnever evaluated
|| pageNumber > pages.count()
pageNumber > pages.count()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
353 return;
never executed: return;
0
354-
355 int lastPage = curPage;-
356 curPage = pageNumber;-
357-
358 if (lastPage != curPage
lastPage != curPageDescription
TRUEnever evaluated
FALSEnever evaluated
&& lastPage > 0
lastPage > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& lastPage <= pages.count()
lastPage <= pages.count()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
359 if (zoomMode != QPrintPreviewWidget::FitInView
zoomMode != QP...get::FitInViewDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
360 QScrollBar *hsc = graphicsView->horizontalScrollBar();-
361 QScrollBar *vsc = graphicsView->verticalScrollBar();-
362 QPointF pt = graphicsView->transform().map(pages.at(curPage-1)->pos());-
363 vsc->setValue(int(pt.y()) - 10);-
364 hsc->setValue(int(pt.x()) - 10);-
365 }
never executed: end of block
else {
0
366 graphicsView->centerOn(pages.at(curPage-1));-
367 }
never executed: end of block
0
368 }-
369}
never executed: end of block
0
370-
371void QPrintPreviewWidgetPrivate::zoom(qreal zoom)-
372{-
373 zoomFactor *= zoom;-
374 graphicsView->scale(zoom, zoom);-
375}
never executed: end of block
0
376-
377void QPrintPreviewWidgetPrivate::setZoomFactor(qreal _zoomFactor)-
378{-
379 QPrintPreviewWidget * const q = q_func();-
380 zoomFactor = _zoomFactor;-
381 graphicsView->resetTransform();-
382 int dpi_y = q->logicalDpiY();-
383 int printer_dpi_y = printer->logicalDpiY();-
384 graphicsView->scale(zoomFactor*(dpi_y/float(printer_dpi_y)),-
385 zoomFactor*(dpi_y/float(printer_dpi_y)));-
386}
never executed: end of block
0
387QPrintPreviewWidget::QPrintPreviewWidget(QPrinter *printer, QWidget *parent, Qt::WindowFlags flags)-
388 : QWidget(*new QPrintPreviewWidgetPrivate, parent, flags)-
389{-
390 QPrintPreviewWidgetPrivate * const d = d_func();-
391 d->printer = printer;-
392 d->ownPrinter = false;-
393 d->init();-
394}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
395QPrintPreviewWidget::QPrintPreviewWidget(QWidget *parent, Qt::WindowFlags flags)-
396 : QWidget(*new QPrintPreviewWidgetPrivate, parent, flags)-
397{-
398 QPrintPreviewWidgetPrivate * const d = d_func();-
399 d->printer = new QPrinter;-
400 d->ownPrinter = true;-
401 d->init();-
402}
never executed: end of block
0
403-
404-
405-
406-
407-
408QPrintPreviewWidget::~QPrintPreviewWidget()-
409{-
410 QPrintPreviewWidgetPrivate * const d = d_func();-
411 if (d->ownPrinter
d->ownPrinterDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
)
0-1
412 delete d->printer;
never executed: delete d->printer;
0
413}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
414-
415-
416-
417-
418QPrintPreviewWidget::ViewMode QPrintPreviewWidget::viewMode() const-
419{-
420 const QPrintPreviewWidgetPrivate * const d = d_func();-
421 return
never executed: return d->viewMode;
d->viewMode;
never executed: return d->viewMode;
0
422}-
423-
424-
425-
426-
427-
428void QPrintPreviewWidget::setViewMode(ViewMode mode)-
429{-
430 QPrintPreviewWidgetPrivate * const d = d_func();-
431 d->viewMode = mode;-
432 d->layoutPages();-
433 if (d->viewMode == AllPagesView
d->viewMode == AllPagesViewDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
434 d->graphicsView->fitInView(d->scene->itemsBoundingRect(), Qt::KeepAspectRatio);-
435 d->fitting = false;-
436 d->zoomMode = QPrintPreviewWidget::CustomZoom;-
437 d->zoomFactor = d->graphicsView->transform().m11() * (float(d->printer->logicalDpiY()) / logicalDpiY());-
438 previewChanged();-
439 }
never executed: end of block
else {
0
440 d->fitting = true;-
441 d->_q_fit();-
442 }
never executed: end of block
0
443}-
444-
445-
446-
447-
448-
449QPrinter::Orientation QPrintPreviewWidget::orientation() const-
450{-
451 const QPrintPreviewWidgetPrivate * const d = d_func();-
452 return
executed 1 time by 1 test: return d->printer->orientation();
Executed by:
  • tst_QPrinter
d->printer->orientation();
executed 1 time by 1 test: return d->printer->orientation();
Executed by:
  • tst_QPrinter
1
453}-
454-
455-
456-
457-
458-
459void QPrintPreviewWidget::setOrientation(QPrinter::Orientation orientation)-
460{-
461 QPrintPreviewWidgetPrivate * const d = d_func();-
462 d->printer->setOrientation(orientation);-
463 d->generatePreview();-
464}
never executed: end of block
0
465-
466-
467-
468-
469void QPrintPreviewWidget::print()-
470{-
471 QPrintPreviewWidgetPrivate * const d = d_func();-
472-
473 paintRequested(d->printer);-
474}
never executed: end of block
0
475-
476-
477-
478-
479-
480void QPrintPreviewWidget::zoomIn(qreal factor)-
481{-
482 QPrintPreviewWidgetPrivate * const d = d_func();-
483 d->fitting = false;-
484 d->zoomMode = QPrintPreviewWidget::CustomZoom;-
485 d->zoom(factor);-
486}
never executed: end of block
0
487-
488-
489-
490-
491-
492void QPrintPreviewWidget::zoomOut(qreal factor)-
493{-
494 QPrintPreviewWidgetPrivate * const d = d_func();-
495 d->fitting = false;-
496 d->zoomMode = QPrintPreviewWidget::CustomZoom;-
497 d->zoom(1/factor);-
498}
never executed: end of block
0
499-
500-
501-
502-
503qreal QPrintPreviewWidget::zoomFactor() const-
504{-
505 const QPrintPreviewWidgetPrivate * const d = d_func();-
506 return
executed 13 times by 1 test: return d->zoomFactor;
Executed by:
  • tst_QPrinter
d->zoomFactor;
executed 13 times by 1 test: return d->zoomFactor;
Executed by:
  • tst_QPrinter
13
507}-
508void QPrintPreviewWidget::setZoomFactor(qreal factor)-
509{-
510 QPrintPreviewWidgetPrivate * const d = d_func();-
511 d->fitting = false;-
512 d->zoomMode = QPrintPreviewWidget::CustomZoom;-
513 d->setZoomFactor(factor);-
514}
never executed: end of block
0
515-
516-
517-
518-
519-
520int QPrintPreviewWidget::pageCount() const-
521{-
522 const QPrintPreviewWidgetPrivate * const d = d_func();-
523 return
executed 26 times by 1 test: return d->pages.size();
Executed by:
  • tst_QPrinter
d->pages.size();
executed 26 times by 1 test: return d->pages.size();
Executed by:
  • tst_QPrinter
26
524}-
525-
526-
527-
528-
529int QPrintPreviewWidget::currentPage() const-
530{-
531 const QPrintPreviewWidgetPrivate * const d = d_func();-
532 return
executed 14 times by 1 test: return d->curPage;
Executed by:
  • tst_QPrinter
d->curPage;
executed 14 times by 1 test: return d->curPage;
Executed by:
  • tst_QPrinter
14
533}-
534-
535-
536-
537-
538-
539void QPrintPreviewWidget::setCurrentPage(int page)-
540{-
541 QPrintPreviewWidgetPrivate * const d = d_func();-
542 d->setCurrentPage(page);-
543}
never executed: end of block
0
544-
545-
546-
547-
548-
549void QPrintPreviewWidget::fitToWidth()-
550{-
551 setZoomMode(FitToWidth);-
552}
never executed: end of block
0
553-
554-
555-
556-
557-
558void QPrintPreviewWidget::fitInView()-
559{-
560 setZoomMode(FitInView);-
561}
never executed: end of block
0
562-
563-
564-
565-
566-
567-
568void QPrintPreviewWidget::setZoomMode(QPrintPreviewWidget::ZoomMode zoomMode)-
569{-
570 QPrintPreviewWidgetPrivate * const d = d_func();-
571 d->zoomMode = zoomMode;-
572 if (d->zoomMode == FitInView
d->zoomMode == FitInViewDescription
TRUEnever evaluated
FALSEnever evaluated
|| d->zoomMode == FitToWidth
d->zoomMode == FitToWidthDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
573 d->fitting = true;-
574 d->_q_fit(true);-
575 }
never executed: end of block
else {
0
576 d->fitting = false;-
577 }
never executed: end of block
0
578}-
579-
580-
581-
582-
583-
584-
585QPrintPreviewWidget::ZoomMode QPrintPreviewWidget::zoomMode() const-
586{-
587 const QPrintPreviewWidgetPrivate * const d = d_func();-
588 return
never executed: return d->zoomMode;
d->zoomMode;
never executed: return d->zoomMode;
0
589}-
590-
591-
592-
593-
594-
595void QPrintPreviewWidget::setLandscapeOrientation()-
596{-
597 setOrientation(QPrinter::Landscape);-
598}
never executed: end of block
0
599-
600-
601-
602-
603-
604void QPrintPreviewWidget::setPortraitOrientation()-
605{-
606 setOrientation(QPrinter::Portrait);-
607}
never executed: end of block
0
608-
609-
610-
611-
612-
613void QPrintPreviewWidget::setSinglePageViewMode()-
614{-
615 setViewMode(SinglePageView);-
616}
never executed: end of block
0
617-
618-
619-
620-
621-
622void QPrintPreviewWidget::setFacingPagesViewMode()-
623{-
624 setViewMode(FacingPagesView);-
625}
never executed: end of block
0
626-
627-
628-
629-
630-
631void QPrintPreviewWidget::setAllPagesViewMode()-
632{-
633 setViewMode(AllPagesView);-
634}
never executed: end of block
0
635-
636-
637-
638-
639-
640-
641void QPrintPreviewWidget::updatePreview()-
642{-
643 QPrintPreviewWidgetPrivate * const d = d_func();-
644 d->initialized = true;-
645 d->generatePreview();-
646 d->graphicsView->updateGeometry();-
647}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
648-
649-
650-
651void QPrintPreviewWidget::setVisible(bool visible)-
652{-
653 QPrintPreviewWidgetPrivate * const d = d_func();-
654 if (visible
visibleDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
FALSEnever evaluated
&& !d->initialized
!d->initializedDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • tst_QPrinter
)
0-1
655 updatePreview();
never executed: updatePreview();
0
656 QWidget::setVisible(visible);-
657}
executed 1 time by 1 test: end of block
Executed by:
  • tst_QPrinter
1
658-
659-
Switch to Source codePreprocessed file

Generated by Squish Coco Non-Commercial 4.3.0-BETA-master-30-08-2018-4cb69e9