mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Printing: only give up if no size is available
Checking for available printers appears to sometimes fail, even if there is a valid PDF or PS printer. Instead we bail if we can't get a valid size for the printer. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
095e8081ca
commit
4fd0dfcabb
3 changed files with 13 additions and 23 deletions
|
|
@ -66,24 +66,8 @@ PrintDialog::PrintDialog(QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f
|
|||
connect(quit, SIGNAL(activated()), parent, SLOT(close()));
|
||||
}
|
||||
|
||||
bool PrintDialog::checkForAvailablePrinters(void)
|
||||
{
|
||||
QList<QPrinterInfo> list = QPrinterInfo::availablePrinters();
|
||||
if (!list.length()) {
|
||||
QMessageBox msgBox;
|
||||
msgBox.setIcon(QMessageBox::Critical);
|
||||
msgBox.setText(tr("Subsurface cannot find installed printers on this system!"));
|
||||
msgBox.setWindowIcon(QIcon(":subsurface-icon"));
|
||||
msgBox.exec();
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void PrintDialog::previewClicked(void)
|
||||
{
|
||||
if (!checkForAvailablePrinters())
|
||||
return;
|
||||
QPrintPreviewDialog previewDialog(&printer, this);
|
||||
connect(&previewDialog, SIGNAL(paintRequested(QPrinter *)), this, SLOT(onPaintRequested(QPrinter *)));
|
||||
previewDialog.exec();
|
||||
|
|
@ -91,8 +75,6 @@ void PrintDialog::previewClicked(void)
|
|||
|
||||
void PrintDialog::printClicked(void)
|
||||
{
|
||||
if (!checkForAvailablePrinters())
|
||||
return;
|
||||
QPrintDialog printDialog(&printer, this);
|
||||
if (printDialog.exec() == QDialog::Accepted){
|
||||
printLayout->print();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue