| Line | Source Code | Coverage |
|---|
| 1 | | - |
| 2 | | - |
| 3 | | - |
| 4 | | - |
| 5 | | - |
| 6 | | - |
| 7 | | - |
| 8 | | - |
| 9 | | - |
| 10 | | - |
| 11 | | - |
| 12 | | - |
| 13 | | - |
| 14 | | - |
| 15 | | - |
| 16 | | - |
| 17 | | - |
| 18 | extern QSizeF qt_paperSizeToQSizeF(QPrinter::PaperSize size); | - |
| 19 | | - |
| 20 | | - |
| 21 | | - |
| 22 | | - |
| 23 | static const char * const psToStr[QPrinter::NPageSize+1] = | - |
| 24 | { | - |
| 25 | "A4", "B5", "Letter", "Legal", "Executive", | - |
| 26 | "A0", "A1", "A2", "A3", "A5", "A6", "A7", "A8", "A9", "B0", "B1", | - |
| 27 | "B10", "B2", "B3", "B4", "B6", "B7", "B8", "B9", "C5E", "Comm10E", | - |
| 28 | "DLE", "Folio", "Ledger", "Tabloid", 0 | - |
| 29 | }; | - |
| 30 | | - |
| 31 | QPdf::PaperSize QPdf::paperSize(QPrinter::PaperSize paperSize) | - |
| 32 | { | - |
| 33 | QSizeF s = qt_paperSizeToQSizeF(paperSize); | - |
| 34 | PaperSize p = { int((s.width() * 720 + 127) / 254), int((s.height() * 720 + 127) / 254) }; | - |
| 35 | return p; executed: return p;Execution Count:31 | 31 |
| 36 | } | - |
| 37 | | - |
| 38 | const char *QPdf::paperSizeToString(QPrinter::PaperSize paperSize) | - |
| 39 | { | - |
| 40 | return psToStr[paperSize]; never executed: return psToStr[paperSize]; | 0 |
| 41 | } | - |
| 42 | | - |
| 43 | | - |
| 44 | QPdfPrintEngine::QPdfPrintEngine(QPrinter::PrinterMode m) | - |
| 45 | : QPdfEngine(*new QPdfPrintEnginePrivate(m)) | - |
| 46 | { | - |
| 47 | state = QPrinter::Idle; | - |
| 48 | } executed: }Execution Count:117 | 117 |
| 49 | | - |
| 50 | QPdfPrintEngine::QPdfPrintEngine(QPdfPrintEnginePrivate &p) | - |
| 51 | : QPdfEngine(p) | - |
| 52 | { | - |
| 53 | state = QPrinter::Idle; | - |
| 54 | } executed: }Execution Count:117 | 117 |
| 55 | | - |
| 56 | QPdfPrintEngine::~QPdfPrintEngine() | - |
| 57 | { | - |
| 58 | } | - |
| 59 | | - |
| 60 | bool QPdfPrintEngine::begin(QPaintDevice *pdev) | - |
| 61 | { | - |
| 62 | QPdfPrintEnginePrivate * const d = d_func(); | - |
| 63 | | - |
| 64 | if (!d->openPrintDevice()) { evaluated: !d->openPrintDevice()| yes Evaluation Count:1 | yes Evaluation Count:20 |
| 1-20 |
| 65 | state = QPrinter::Error; | - |
| 66 | return false; executed: return false;Execution Count:1 | 1 |
| 67 | } | - |
| 68 | state = QPrinter::Active; | - |
| 69 | | - |
| 70 | return QPdfEngine::begin(pdev); executed: return QPdfEngine::begin(pdev);Execution Count:20 | 20 |
| 71 | } | - |
| 72 | | - |
| 73 | bool QPdfPrintEngine::end() | - |
| 74 | { | - |
| 75 | QPdfPrintEnginePrivate * const d = d_func(); | - |
| 76 | | - |
| 77 | QPdfEngine::end(); | - |
| 78 | | - |
| 79 | d->closePrintDevice(); | - |
| 80 | state = QPrinter::Idle; | - |
| 81 | | - |
| 82 | return true; executed: return true;Execution Count:20 | 20 |
| 83 | } | - |
| 84 | | - |
| 85 | bool QPdfPrintEngine::newPage() | - |
| 86 | { | - |
| 87 | return QPdfEngine::newPage(); never executed: return QPdfEngine::newPage(); | 0 |
| 88 | } | - |
| 89 | | - |
| 90 | int QPdfPrintEngine::metric(QPaintDevice::PaintDeviceMetric m) const | - |
| 91 | { | - |
| 92 | return QPdfEngine::metric(m); executed: return QPdfEngine::metric(m);Execution Count:150 | 150 |
| 93 | } | - |
| 94 | | - |
| 95 | void QPdfPrintEngine::setProperty(PrintEnginePropertyKey key, const QVariant &value) | - |
| 96 | { | - |
| 97 | QPdfPrintEnginePrivate * const d = d_func(); | - |
| 98 | | - |
| 99 | switch (int(key)) { | - |
| 100 | case PPK_CollateCopies: | - |
| 101 | d->collate = value.toBool(); | - |
| 102 | break; executed: break;Execution Count:5 | 5 |
| 103 | case PPK_ColorMode: | - |
| 104 | d->grayscale = (QPrinter::ColorMode(value.toInt()) == QPrinter::GrayScale); | - |
| 105 | break; executed: break;Execution Count:5 | 5 |
| 106 | case PPK_Creator: | - |
| 107 | d->creator = value.toString(); | - |
| 108 | break; executed: break;Execution Count:4 | 4 |
| 109 | case PPK_DocumentName: | - |
| 110 | d->title = value.toString(); | - |
| 111 | break; executed: break;Execution Count:5 | 5 |
| 112 | case PPK_FullPage: | - |
| 113 | d->fullPage = value.toBool(); | - |
| 114 | break; executed: break;Execution Count:22 | 22 |
| 115 | case PPK_CopyCount: | - |
| 116 | case PPK_NumberOfCopies: | - |
| 117 | d->copies = value.toInt(); | - |
| 118 | break; executed: break;Execution Count:1 | 1 |
| 119 | case PPK_Orientation: | - |
| 120 | d->landscape = (QPrinter::Orientation(value.toInt()) == QPrinter::Landscape); | - |
| 121 | break; executed: break;Execution Count:46 | 46 |
| 122 | case PPK_OutputFileName: | - |
| 123 | d->outputFileName = value.toString(); | - |
| 124 | break; executed: break;Execution Count:42 | 42 |
| 125 | case PPK_PageOrder: | - |
| 126 | d->pageOrder = QPrinter::PageOrder(value.toInt()); | - |
| 127 | break; executed: break;Execution Count:5 | 5 |
| 128 | case PPK_PaperSize: | - |
| 129 | d->printerPaperSize = QPrinter::PaperSize(value.toInt()); | - |
| 130 | d->updatePaperSize(); | - |
| 131 | break; executed: break;Execution Count:31 | 31 |
| 132 | case PPK_PaperSource: | - |
| 133 | d->paperSource = QPrinter::PaperSource(value.toInt()); | - |
| 134 | break; executed: break;Execution Count:5 | 5 |
| 135 | case PPK_PrinterName: | - |
| 136 | d->printerName = value.toString(); | - |
| 137 | break; executed: break;Execution Count:7 | 7 |
| 138 | case PPK_PrinterProgram: | - |
| 139 | d->printProgram = value.toString(); | - |
| 140 | break; executed: break;Execution Count:4 | 4 |
| 141 | case PPK_Resolution: | - |
| 142 | d->resolution = value.toInt(); | - |
| 143 | break; executed: break;Execution Count:27 | 27 |
| 144 | case PPK_SelectionOption: | - |
| 145 | d->selectionOption = value.toString(); | - |
| 146 | break; executed: break;Execution Count:4 | 4 |
| 147 | case PPK_FontEmbedding: | - |
| 148 | d->embedFonts = value.toBool(); | - |
| 149 | break; executed: break;Execution Count:5 | 5 |
| 150 | case PPK_Duplex: | - |
| 151 | d->duplex = static_cast<QPrinter::DuplexMode> (value.toInt()); | - |
| 152 | break; executed: break;Execution Count:5 | 5 |
| 153 | case PPK_CustomPaperSize: | - |
| 154 | d->printerPaperSize = QPrinter::Custom; | - |
| 155 | d->customPaperSize = value.toSizeF(); | - |
| 156 | d->updatePaperSize(); | - |
| 157 | break; executed: break;Execution Count:7 | 7 |
| 158 | case PPK_PageMargins: | - |
| 159 | { | - |
| 160 | QList<QVariant> margins(value.toList()); | - |
| 161 | qt_noop(); | - |
| 162 | d->leftMargin = margins.at(0).toReal(); | - |
| 163 | d->topMargin = margins.at(1).toReal(); | - |
| 164 | d->rightMargin = margins.at(2).toReal(); | - |
| 165 | d->bottomMargin = margins.at(3).toReal(); | - |
| 166 | d->pageMarginsSet = true; | - |
| 167 | break; executed: break;Execution Count:10 | 10 |
| 168 | } | - |
| 169 | default: | - |
| 170 | break; | 0 |
| 171 | } | - |
| 172 | } executed: }Execution Count:240 | 240 |
| 173 | | - |
| 174 | QVariant QPdfPrintEngine::property(PrintEnginePropertyKey key) const | - |
| 175 | { | - |
| 176 | const QPdfPrintEnginePrivate * const d = d_func(); | - |
| 177 | | - |
| 178 | QVariant ret; | - |
| 179 | switch (int(key)) { | - |
| 180 | case PPK_CollateCopies: | - |
| 181 | ret = d->collate; | - |
| 182 | break; executed: break;Execution Count:12 | 12 |
| 183 | case PPK_ColorMode: | - |
| 184 | ret = d->grayscale ? QPrinter::GrayScale : QPrinter::Color; evaluated: d->grayscale| yes Evaluation Count:5 | yes Evaluation Count:7 |
| 5-7 |
| 185 | break; executed: break;Execution Count:12 | 12 |
| 186 | case PPK_Creator: | - |
| 187 | ret = d->creator; | - |
| 188 | break; executed: break;Execution Count:7 | 7 |
| 189 | case PPK_DocumentName: | - |
| 190 | ret = d->title; | - |
| 191 | break; executed: break;Execution Count:10 | 10 |
| 192 | case PPK_FullPage: | - |
| 193 | ret = d->fullPage; | - |
| 194 | break; executed: break;Execution Count:8 | 8 |
| 195 | case PPK_CopyCount: | - |
| 196 | ret = d->copies; | - |
| 197 | break; executed: break;Execution Count:5 | 5 |
| 198 | case PPK_SupportsMultipleCopies: | - |
| 199 | ret = false; | - |
| 200 | break; | 0 |
| 201 | case PPK_NumberOfCopies: | - |
| 202 | ret = d->copies; | - |
| 203 | break; | 0 |
| 204 | case PPK_Orientation: | - |
| 205 | ret = d->landscape ? QPrinter::Landscape : QPrinter::Portrait; evaluated: d->landscape| yes Evaluation Count:29 | yes Evaluation Count:27 |
| 27-29 |
| 206 | break; executed: break;Execution Count:56 | 56 |
| 207 | case PPK_OutputFileName: | - |
| 208 | ret = d->outputFileName; | - |
| 209 | break; executed: break;Execution Count:10 | 10 |
| 210 | case PPK_PageOrder: | - |
| 211 | ret = d->pageOrder; | - |
| 212 | break; executed: break;Execution Count:12 | 12 |
| 213 | case PPK_PaperSize: | - |
| 214 | ret = d->printerPaperSize; | - |
| 215 | break; executed: break;Execution Count:22 | 22 |
| 216 | case PPK_PaperSource: | - |
| 217 | ret = d->paperSource; | - |
| 218 | break; executed: break;Execution Count:8 | 8 |
| 219 | case PPK_PrinterName: | - |
| 220 | ret = d->printerName; | - |
| 221 | break; executed: break;Execution Count:14 | 14 |
| 222 | case PPK_PrinterProgram: | - |
| 223 | ret = d->printProgram; | - |
| 224 | break; executed: break;Execution Count:7 | 7 |
| 225 | case PPK_Resolution: | - |
| 226 | ret = d->resolution; | - |
| 227 | break; executed: break;Execution Count:165 | 165 |
| 228 | case PPK_SupportedResolutions: | - |
| 229 | ret = QList<QVariant>() << 72; | - |
| 230 | break; | 0 |
| 231 | case PPK_PaperRect: | - |
| 232 | ret = d->paperRect(); | - |
| 233 | break; executed: break;Execution Count:78 | 78 |
| 234 | case PPK_PageRect: | - |
| 235 | ret = d->pageRect(); | - |
| 236 | break; executed: break;Execution Count:24 | 24 |
| 237 | case PPK_SelectionOption: | - |
| 238 | ret = d->selectionOption; | - |
| 239 | break; executed: break;Execution Count:7 | 7 |
| 240 | case PPK_FontEmbedding: | - |
| 241 | ret = d->embedFonts; | - |
| 242 | break; executed: break;Execution Count:8 | 8 |
| 243 | case PPK_Duplex: | - |
| 244 | ret = d->duplex; | - |
| 245 | break; executed: break;Execution Count:12 | 12 |
| 246 | case PPK_CustomPaperSize: | - |
| 247 | ret = d->customPaperSize; | - |
| 248 | break; executed: break;Execution Count:4 | 4 |
| 249 | case PPK_PageMargins: | - |
| 250 | { | - |
| 251 | QList<QVariant> margins; | - |
| 252 | if (d->printerPaperSize == QPrinter::Custom && !d->pageMarginsSet) evaluated: d->printerPaperSize == QPrinter::Custom| yes Evaluation Count:6 | yes Evaluation Count:36 |
evaluated: !d->pageMarginsSet| yes Evaluation Count:2 | yes Evaluation Count:4 |
| 2-36 |
| 253 | margins << 0 << 0 << 0 << 0; executed: margins << 0 << 0 << 0 << 0;Execution Count:2 | 2 |
| 254 | else | - |
| 255 | margins << d->leftMargin << d->topMargin | 40 |
| 256 | << d->rightMargin << d->bottomMargin; executed: margins << d->leftMargin << d->topMargin << d->rightMargin << d->bottomMargin;Execution Count:40 | 40 |
| 257 | ret = margins; | - |
| 258 | break; executed: break;Execution Count:42 | 42 |
| 259 | } | - |
| 260 | default: | - |
| 261 | break; | 0 |
| 262 | } | - |
| 263 | return ret; executed: return ret;Execution Count:523 | 523 |
| 264 | } | - |
| 265 | | - |
| 266 | | - |
| 267 | bool QPdfPrintEnginePrivate::openPrintDevice() | - |
| 268 | { | - |
| 269 | if (outDevice) partially evaluated: outDevice| no Evaluation Count:0 | yes Evaluation Count:21 |
| 0-21 |
| 270 | return false; never executed: return false; | 0 |
| 271 | | - |
| 272 | if (!outputFileName.isEmpty()) { partially evaluated: !outputFileName.isEmpty()| yes Evaluation Count:21 | no Evaluation Count:0 |
| 0-21 |
| 273 | QFile *file = new QFile(outputFileName); | - |
| 274 | if (! file->open(QFile::WriteOnly|QFile::Truncate)) { evaluated: ! file->open(QFile::WriteOnly|QFile::Truncate)| yes Evaluation Count:1 | yes Evaluation Count:20 |
| 1-20 |
| 275 | delete file; | - |
| 276 | return false; executed: return false;Execution Count:1 | 1 |
| 277 | } | - |
| 278 | outDevice = file; | - |
| 279 | } executed: }Execution Count:20 | 20 |
| 280 | | - |
| 281 | return true; executed: return true;Execution Count:20 | 20 |
| 282 | } | - |
| 283 | | - |
| 284 | void QPdfPrintEnginePrivate::closePrintDevice() | - |
| 285 | { | - |
| 286 | if (outDevice) { partially evaluated: outDevice| yes Evaluation Count:20 | no Evaluation Count:0 |
| 0-20 |
| 287 | outDevice->close(); | - |
| 288 | if (fd >= 0) partially evaluated: fd >= 0| no Evaluation Count:0 | yes Evaluation Count:20 |
| 0-20 |
| 289 | | - |
| 290 | | - |
| 291 | | - |
| 292 | ::close(fd); never executed: ::close(fd); | 0 |
| 293 | | - |
| 294 | fd = -1; | - |
| 295 | delete outDevice; | - |
| 296 | outDevice = 0; | - |
| 297 | } executed: }Execution Count:20 | 20 |
| 298 | } executed: }Execution Count:20 | 20 |
| 299 | | - |
| 300 | | - |
| 301 | | - |
| 302 | QPdfPrintEnginePrivate::QPdfPrintEnginePrivate(QPrinter::PrinterMode m) | - |
| 303 | : QPdfEnginePrivate(), | - |
| 304 | duplex(QPrinter::DuplexNone), | - |
| 305 | collate(false), | - |
| 306 | copies(1), | - |
| 307 | pageOrder(QPrinter::FirstPageFirst), | - |
| 308 | paperSource(QPrinter::Auto), | - |
| 309 | printerPaperSize(QPrinter::A4), | - |
| 310 | pageMarginsSet(false), | - |
| 311 | fd(-1) | - |
| 312 | { | - |
| 313 | resolution = 72; | - |
| 314 | if (m == QPrinter::HighResolution) evaluated: m == QPrinter::HighResolution| yes Evaluation Count:56 | yes Evaluation Count:178 |
| 56-178 |
| 315 | resolution = 1200; executed: resolution = 1200;Execution Count:56 | 56 |
| 316 | else if (m == QPrinter::ScreenResolution) evaluated: m == QPrinter::ScreenResolution| yes Evaluation Count:172 | yes Evaluation Count:6 |
| 6-172 |
| 317 | resolution = qt_defaultDpi(); executed: resolution = qt_defaultDpi();Execution Count:172 | 172 |
| 318 | } | - |
| 319 | | - |
| 320 | QPdfPrintEnginePrivate::~QPdfPrintEnginePrivate() | - |
| 321 | { | - |
| 322 | } | - |
| 323 | | - |
| 324 | | - |
| 325 | void QPdfPrintEnginePrivate::updatePaperSize() | - |
| 326 | { | - |
| 327 | if (printerPaperSize == QPrinter::Custom) { evaluated: printerPaperSize == QPrinter::Custom| yes Evaluation Count:7 | yes Evaluation Count:31 |
| 7-31 |
| 328 | paperSize = customPaperSize; | - |
| 329 | } else { executed: }Execution Count:7 | 7 |
| 330 | QPdf::PaperSize s = QPdf::paperSize(printerPaperSize); | - |
| 331 | paperSize = QSize(s.width, s.height); | - |
| 332 | } executed: }Execution Count:31 | 31 |
| 333 | } | - |
| 334 | | - |
| 335 | | - |
| 336 | | - |
| 337 | | - |
| | |