Merge pull request #3239 from Anish-M-code/1.14.7_printer_feature

Make Qt auto-detect the preferred page size for printer
This commit is contained in:
Old Dip Tracker 2024-01-18 15:47:54 +01:00 committed by GitHub
commit c8ab641029
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -58,6 +58,7 @@
#include <QtPrintSupport/QPrinter>
#include <QtPrintSupport/QPrintDialog>
#include <QtPrintSupport/QPrintPreviewDialog>
#include <QtPrintSupport/QPrinterInfo>
#endif
#include <QPainter>
#include "walletmodel.h"
@ -347,17 +348,25 @@ void PaperWalletDialog::on_printButton_clicked()
QPrinter printer(QPrinter::HighResolution);
QPrintDialog* qpd = new QPrintDialog(&printer, this);
qpd->setPrintRange(QAbstractPrintDialog::AllPages);
#if QT_VERSION > 0x050000
QPrinterInfo printerinfo(printer);
QPageSize papersize = printerinfo.defaultPageSize();
#endif
qpd->setPrintRange(QAbstractPrintDialog::AllPages);
QList<QString> recipientPubKeyHashes;
if (qpd->exec() != QDialog::Accepted) {
return;
}
// Hardcode these values
printer.setOrientation(QPrinter::Portrait);
#if QT_VERSION > 0x050000
printer.QPagedPaintDevice::setPageSize(papersize);
#else
printer.setPaperSize(QPrinter::A4);
#endif
printer.setFullPage(true);
QPainter painter;