From efd3a494d742e21b76f76b883f90e1872ab25ea2 Mon Sep 17 00:00:00 2001 From: wmayer Date: Sat, 17 Oct 2015 00:31:30 +0200 Subject: [PATCH] + fixes #0002297: 'Export to PDF...' from drawing view does not show an error if existing file can not be overwritten --- src/Gui/View3DInventor.cpp | 8 ++++++++ src/Mod/Drawing/Gui/DrawingView.cpp | 7 +++++++ 2 files changed, 15 insertions(+) diff --git a/src/Gui/View3DInventor.cpp b/src/Gui/View3DInventor.cpp index cf59a9e60..5b7ca50f5 100644 --- a/src/Gui/View3DInventor.cpp +++ b/src/Gui/View3DInventor.cpp @@ -36,6 +36,7 @@ # include # include # include +# include # include # include # include @@ -531,6 +532,13 @@ void View3DInventor::print(QPrinter* printer) #else QImage img; QPainter p(printer); + if (!p.isActive() && !printer->outputFileName().isEmpty()) { + qApp->setOverrideCursor(Qt::ArrowCursor); + QMessageBox::critical(this, tr("Opening file failed"), + tr("Can't open file '%1' for writing.").arg(printer->outputFileName())); + qApp->restoreOverrideCursor(); + return; + } QRect rect = printer->pageRect(); bool pbuffer = QGLPixelBuffer::hasOpenGLPbuffers(); diff --git a/src/Mod/Drawing/Gui/DrawingView.cpp b/src/Mod/Drawing/Gui/DrawingView.cpp index 64d83fd8d..3cbf54648 100644 --- a/src/Mod/Drawing/Gui/DrawingView.cpp +++ b/src/Mod/Drawing/Gui/DrawingView.cpp @@ -593,6 +593,13 @@ void DrawingView::print(QPrinter* printer) } QPainter p(printer); + if (!p.isActive() && !printer->outputFileName().isEmpty()) { + qApp->setOverrideCursor(Qt::ArrowCursor); + QMessageBox::critical(this, tr("Opening file failed"), + tr("Can't open file '%1' for writing.").arg(printer->outputFileName())); + qApp->restoreOverrideCursor(); + return; + } QRect rect = printer->paperRect(); #ifdef Q_OS_WIN32 // On Windows the preview looks broken when using paperRect as render area.