diff --git a/tools/qmlscene/main.cpp b/tools/qmlscene/main.cpp index 327dfc6889..32c9be7f46 100644 --- a/tools/qmlscene/main.cpp +++ b/tools/qmlscene/main.cpp @@ -156,6 +156,7 @@ struct Options , clip(false) , versionDetection(true) , slowAnimations(false) + , quitImmediately(false) { } @@ -168,6 +169,7 @@ struct Options bool clip; bool versionDetection; bool slowAnimations; + bool quitImmediately; }; #if defined(QMLSCENE_BUNDLE) @@ -347,6 +349,7 @@ static void usage() qWarning(" --no-multisample .......................... Disable multisampling (anti-aliasing)"); qWarning(" --no-version-detection .................... Do not try to detect the version of the .qml file"); qWarning(" --slow-animations ......................... Run all animations in slow motion"); + qWarning(" --quit .................................... Quit immediately after starting"); qWarning(" "); exit(1); @@ -372,6 +375,8 @@ int main(int argc, char ** argv) options.versionDetection = false; else if (lowerArgument == QLatin1String("--slow-animations")) options.slowAnimations = true; + else if (lowerArgument == QLatin1String("--quit")) + options.quitImmediately = true; else if (lowerArgument == QLatin1String("-i") && i + 1 < argc) imports.append(QString::fromLatin1(argv[++i])); else if (lowerArgument == QLatin1String("--help") @@ -428,6 +433,10 @@ int main(int argc, char ** argv) else window->show(); + if (options.quitImmediately) { + QMetaObject::invokeMethod(QCoreApplication::instance(), "quit", Qt::QueuedConnection); + } + exitCode = app.exec(); delete window;