0
0
mirror of https://github.com/fralx/LimeReport.git synced 2024-12-24 08:34:38 +03:00

Default system printer will selected in "printer select dialog" by default

This commit is contained in:
Arin Alexander 2017-03-05 16:39:50 +03:00
parent b963428f4c
commit d250015839
2 changed files with 14 additions and 1 deletions

View File

@ -3,6 +3,7 @@
#include <QPrinter>
#include <QPrintDialog>
#include <QPrinterInfo>
#include <QScrollBar>
#include <QFileDialog>
@ -157,7 +158,13 @@ void PreviewReportWidget::lastPage()
void PreviewReportWidget::print()
{
QPrinterInfo pi;
QPrinter printer(QPrinter::HighResolution);
if (!pi.defaultPrinter().isNull())
printer.setPrinterName(pi.defaultPrinterName());
QPrintDialog dialog(&printer,QApplication::activeWindow());
if (dialog.exec()==QDialog::Accepted){
if (!d_ptr->m_reportPages.isEmpty())

View File

@ -29,6 +29,7 @@
****************************************************************************/
#include <QPrinter>
#include <QPrintDialog>
#include <QPrinterInfo>
#include <QMessageBox>
#include <QApplication>
#include <QDesktopWidget>
@ -271,6 +272,9 @@ void ReportEnginePrivate::printReport(ReportPages pages, QPrinter &printer, cons
bool ReportEnginePrivate::printReport(QPrinter* printer)
{
if (!printer&&!m_printerSelected){
QPrinterInfo pi;
if (!pi.defaultPrinter().isNull())
m_printer.data()->setPrinterName(pi.defaultPrinterName());
QPrintDialog dialog(m_printer.data(),QApplication::activeWindow());
m_printerSelected = dialog.exec()!=QDialog::Rejected;
}
@ -294,8 +298,10 @@ bool ReportEnginePrivate::printReport(QPrinter* printer)
bool ReportEnginePrivate::printPages(ReportPages pages, QPrinter *printer, PrintRange printRange)
{
if (!printer&&!m_printerSelected){
QPrinterInfo pi;
if (!pi.defaultPrinter().isNull())
m_printer.data()->setPrinterName(pi.defaultPrinterName());
QPrintDialog dialog(m_printer.data(),QApplication::activeWindow());
m_printerSelected = dialog.exec()!=QDialog::Rejected;
if (m_printerSelected){