fix QT DEPRECATED VERSION 5.15.2 and QT6

-QPrinter
This commit is contained in:
Simon De Backer
2020-12-04 18:15:37 +01:00
parent ccd76f902d
commit 77e6248ac9

View File

@@ -46,13 +46,13 @@ void ProjectPrintWindow::launchDialog(QETProject *project, QPrinter::OutputForma
{
auto printer_ = new QPrinter();
printer_->setDocName(ProjectPrintWindow::docName(project));
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // ### Qt 6: remove
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 1) // ### Qt 6: remove
printer_->setOrientation(QPrinter::Landscape);
#else
#if TODO_LIST
#pragma message("@TODO remove code for QT 6 or later")
#endif
qDebug()<<"Help code for QT 6 or later";
# endif
printer_->setPageOrientation(QPageLayout::Landscape);
#endif
if (format == QPrinter::NativeFormat) //To physical printer
@@ -254,8 +254,8 @@ void ProjectPrintWindow::printDiagram(Diagram *diagram, bool fit_page, QPainter
if (fit_page) {
diagram->render(painter, QRectF(), diagram_rect, Qt::KeepAspectRatio);
} else {
//Print on one or several pages
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // ### Qt 6: remove
// Print on one or several pages
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 1) // ### Qt 6: remove
auto printed_rect = full_page ? printer->paperRect() : printer->pageRect();
#else
#if TODO_LIST
@@ -280,7 +280,7 @@ void ProjectPrintWindow::printDiagram(Diagram *diagram, bool fit_page, QPainter
auto x_offset = 0;
for (auto j=0 ; j<h_pages_count ; ++j)
{
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // ### Qt 6: remove
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 1) // ### Qt 6: remove
page_grid.last() << QRect(QPoint(x_offset, y_offset),
QSize(qMin(used_width, diagram_rect.width() - x_offset),
qMin(used_height, diagram_rect.height() - y_offset)));
@@ -354,13 +354,16 @@ int ProjectPrintWindow::horizontalPagesCount(
Diagram *diagram, const ExportProperties &option, bool full_page) const
{
QRect printable_area;
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // ### Qt 6: remove
printable_area = full_page ? m_printer-> paperRect() : m_printer-> pageRect();
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 1) // ### Qt 6: remove
printable_area = full_page ? m_printer->paperRect() : m_printer->pageRect();
#else
#if TODO_LIST
#pragma message("@TODO remove code for QT 6 or later")
#endif
qDebug()<<"Help code for QT 6 or later";
# endif
printable_area =
full_page ?
m_printer->pageLayout().fullRectPixels(m_printer->resolution()) :
m_printer->pageLayout().paintRectPixels(m_printer->resolution());
#endif
QRect diagram_rect = diagramRect(diagram, option);
@@ -499,7 +502,6 @@ void ProjectPrintWindow::loadPageSetupForCurrentPrinter()
void ProjectPrintWindow::savePageSetupForCurrentPrinter()
{
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // ### Qt 6: remove
QSettings settings;
QString printer_section = settingsSectionName(m_printer);
@@ -507,6 +509,7 @@ void ProjectPrintWindow::savePageSetupForCurrentPrinter()
settings.beginGroup("printers");
settings.beginGroup(printer_section);
#if QT_VERSION < QT_VERSION_CHECK(5, 15, 1) // ### Qt 6: remove
settings.setValue("orientation", m_printer -> orientation() == QPrinter::Portrait ? "portrait" : "landscape");
settings.setValue("papersize", int(m_printer -> paperSize()));
if (m_printer -> paperSize() == QPrinter::Custom) {
@@ -518,7 +521,8 @@ void ProjectPrintWindow::savePageSetupForCurrentPrinter()
settings.remove("customheightmm");
}
qreal left, top, right, bottom;
m_printer->getPageMargins(&left, &top, &right, &bottom, QPrinter::Millimeter);
m_printer
->getPageMargins(&left, &top, &right, &bottom, QPrinter::Millimeter);
settings.setValue("marginleft", left);
settings.setValue("margintop", top);
settings.setValue("marginright", right);
@@ -527,11 +531,43 @@ void ProjectPrintWindow::savePageSetupForCurrentPrinter()
settings.endGroup();
settings.endGroup();
settings.sync();
#else
#if TODO_LIST
#pragma message("@TODO remove code for QT 6 or later")
#endif
qDebug()<<"Help code for QT 6 or later";
# if TODO_LIST
# pragma message("@TODO remove code for QT 6 or later")
# endif
qDebug() << "Help code for QT 6 or later";
settings.setValue(
"orientation",
m_printer->pageLayout().orientation() == QPageLayout::Portrait ?
"portrait" :
"landscape");
settings.setValue(
"papersize",
int(m_printer->pageLayout().pageSize().id()));
if (m_printer->pageLayout().pageSize().id() == QPageSize::Custom)
{
QSizeF size =
m_printer->pageLayout().pageSize().size(QPageSize::Millimeter);
settings.setValue("customwidthmm", size.width());
settings.setValue("customheightmm", size.height());
}
else
{
settings.remove("customwidthmm");
settings.remove("customheightmm");
}
settings.setValue("marginleft", m_printer->pageLayout().margins().left());
settings.setValue("margintop", m_printer->pageLayout().margins().top());
settings.setValue("marginright", m_printer->pageLayout().margins().right());
settings.setValue(
"marginbottom",
m_printer->pageLayout().margins().bottom());
settings.setValue("fullpage", m_printer->fullPage() ? "true" : "false");
settings.endGroup();
settings.endGroup();
settings.sync();
#endif
}