From 8150619dbc226dde08fea8d30a4e3b8cec355f49 Mon Sep 17 00:00:00 2001 From: Michael Winkelmann Date: Tue, 20 Nov 2018 15:15:09 +0100 Subject: [PATCH] Error output when there is no item --- main.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/main.cpp b/main.cpp index f6b4afd..8b79a44 100644 --- a/main.cpp +++ b/main.cpp @@ -56,13 +56,21 @@ int main(int ac, char *av[]) { view->engine()->addImportPath(path); view->setSource(QUrl::fromLocalFile(inputQml)); - view->setGeometry(0,0, view->rootObject()->width(), view->rootObject()->height()); + + auto item = view->rootObject(); + + if (!item) { + qInfo() << QObject::tr("No item in QML, no PDF output was produced!"); + return EXIT_SUCCESS; + } + + view->setGeometry(0,0, int(item->width()), int(item->height())); QTimer::singleShot(delay,[=]() { QmlPrinter printer; qInfo() << QObject::tr("Writing PDF to %1").arg(outputPdfDir.absolutePath()); - if (!printer.printPdf(outputPdfDir.absolutePath(), view->rootObject())) { + if (!printer.printPdf(outputPdfDir.absolutePath(), item)) { qInfo() << QObject::tr("No PDF output was produced!"); } qGuiApp->quit(); @@ -70,6 +78,5 @@ int main(int ac, char *av[]) { QDesktopServices::openUrl(QUrl::fromLocalFile(outputPdfDir.absolutePath())); }); - return app.exec(); } -- GitLab