[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.20-204-g221d8e8
kenneth at webkit.org
kenneth at webkit.org
Wed Feb 10 22:14:23 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 90cbd5749f8e6fa4814b2948d3bfc89a88d9f532
Author: kenneth at webkit.org <kenneth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Feb 4 18:52:49 2010 +0000
Rubberstamped by Oliver Hunt.
[Qt] QtLauncher cleanup.
Refactor option handling out in utility functions and make the
arguments more Qt compatible.
* QtLauncher/main.cpp:
(requiresGraphicsView):
(LauncherApplication::handleUserOptions):
* QtLauncher/utils.cpp:
(takeOptionValue):
(formatKeys):
(enumToKeys):
(appQuit):
* QtLauncher/utils.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@54357 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 7ac1940..111ade5 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,22 @@
+2010-02-04 Kenneth Rohde Christiansen <kenneth at webkit.org>
+
+ Rubberstamped by Oliver Hunt.
+
+ [Qt] QtLauncher cleanup.
+
+ Refactor option handling out in utility functions and make the
+ arguments more Qt compatible.
+
+ * QtLauncher/main.cpp:
+ (requiresGraphicsView):
+ (LauncherApplication::handleUserOptions):
+ * QtLauncher/utils.cpp:
+ (takeOptionValue):
+ (formatKeys):
+ (enumToKeys):
+ (appQuit):
+ * QtLauncher/utils.h:
+
2010-02-04 Andras Becsi <abecsi at inf.u-szeged.hu>
Reviewed by Tor Arne Vestbø.
diff --git a/WebKitTools/QtLauncher/main.cpp b/WebKitTools/QtLauncher/main.cpp
index 31bca8e..e4d68ff 100644
--- a/WebKitTools/QtLauncher/main.cpp
+++ b/WebKitTools/QtLauncher/main.cpp
@@ -549,9 +549,6 @@ private:
void handleUserOptions();
void applyDefaultSettings();
- QList<QString> enumToKeys(const QMetaObject o, const QString& name, const QString& strip);
- QString formatKeys(QList<QString> keys);
-
private:
bool m_isRobotized;
QStringList m_urls;
@@ -582,36 +579,12 @@ LauncherApplication::LauncherApplication(int& argc, char** argv)
handleUserOptions();
}
-QString LauncherApplication::formatKeys(QList<QString> keys)
-{
- QString result;
- for (int i = 0; i < keys.count() - 1; i++)
- result.append(keys.at(i) + "|");
- result.append(keys.last());
- return result;
-}
-
-QList<QString> LauncherApplication::enumToKeys(const QMetaObject o, const QString& name, const QString& strip)
-{
- QList<QString> list;
-
- int enumIndex = o.indexOfEnumerator(name.toLatin1().data());
- QMetaEnum enumerator = o.enumerator(enumIndex);
-
- if (enumerator.isValid()) {
- for (int i = 0; i < enumerator.keyCount(); i++) {
- QString key(enumerator.valueToKey(i));
- list.append(key.remove(strip));
- }
- }
-
- return list;
-}
-
-static void fail(const QString& errorMsg)
+static bool useGraphicsView = false;
+static void requiresGraphicsView(const QString& option)
{
- qDebug() << "ERROR:" << errorMsg.toLatin1().data();
- exit(1);
+ if (useGraphicsView)
+ return;
+ appQuit(1, QString("%1 only works in combination with the -graphicsbased option").arg(option));
}
void LauncherApplication::handleUserOptions()
@@ -625,56 +598,56 @@ void LauncherApplication::handleUserOptions()
QList<QString> updateModes(enumToKeys(QGraphicsView::staticMetaObject,
"ViewportUpdateMode", "ViewportUpdate"));
- if (args.contains("--help")) {
+ if (args.contains("-help")) {
qDebug() << "Usage:" << programName.toLatin1().data()
- << "[--graphicsbased]"
- << "[--compositing]"
- << QString("[--viewport-update-mode %1]").arg(formatKeys(updateModes)).toLatin1().data()
- << "[--cache-webview]"
+ << "[-graphicsbased]"
+ << "[-compositing]"
+ << QString("[-viewport-update-mode %1]").arg(formatKeys(updateModes)).toLatin1().data()
+ << "[-cache-webview]"
<< "[-r list]"
<< "URLs";
- exit(0);
+ appQuit(0);
}
- bool useGraphicsView = false;
-
- if (args.contains("--graphicsbased"))
+ if (args.contains("-graphicsbased"))
useGraphicsView = true;
- if (args.contains("--compositing") && useGraphicsView)
+ if (args.contains("-compositing")) {
+ requiresGraphicsView("-compositing");
QWebSettings::globalSettings()->setAttribute(QWebSettings::AcceleratedCompositingEnabled, true);
+ }
- if (args.contains("--cache-webview") && useGraphicsView)
- ; // view->setCacheMode(QGraphicsItem::DeviceCoordinateCache);
-
- int modeIndex = args.indexOf("--viewport-update-mode");
- if (modeIndex != -1 && ++modeIndex < args.count() && !args.at(modeIndex).startsWith("-")) {
- QString mode = args.takeAt(modeIndex);
- if (useGraphicsView) {
- int idx = updateModes.indexOf(mode);
- if (idx != -1) {
- ; // view->setViewportUpdateMode(static_cast<QGraphicsView::ViewportUpdateMode>(idx));
- } else {
- fail(QString("--viewport-update-mode value has to be one of [%1]")
- .arg(formatKeys(updateModes)).toLatin1().data());
- }
- }
+ if (args.contains("-cache-webview")) {
+ requiresGraphicsView("-cache-webview");
+ // view->setCacheMode(QGraphicsItem::DeviceCoordinateCache);
+ }
+
+ QString arg1("-viewport-update-mode");
+ int modeIndex = args.indexOf(arg1);
+ if (modeIndex != -1) {
+ requiresGraphicsView(arg1);
+
+ QString mode = takeOptionValue(&args, modeIndex);
+ if (mode.isEmpty())
+ appQuit(1, QString("%1 needs a value of one of [%2]").arg(arg1).arg(formatKeys(updateModes)));
+ int idx = updateModes.indexOf(mode);
+ if (idx == -1)
+ appQuit(1, QString("%1 value has to be one of [%2]").arg(arg1).arg(formatKeys(updateModes)));
+
+ // view->setViewportUpdateMode(static_cast<QGraphicsView::ViewportUpdateMode>(idx));
}
int robotIndex = args.indexOf("-r");
if (robotIndex != -1) {
- if (++robotIndex < args.count() && !args.at(robotIndex).startsWith("-")) {
- QString listFile = args.takeAt(robotIndex);
- if (!QFile::exists(listFile))
- fail(QString("The list file supplied to -r does not exist."));
- else {
- m_isRobotized = true;
- m_urls = QStringList(listFile);
- return;
- }
- }
- else
- fail(QString("-r needs a list file to start in robotized mode"));
+ QString listFile = takeOptionValue(&args, robotIndex);
+ if (listFile.isEmpty())
+ appQuit(1, "-r needs a list file to start in robotized mode");
+ if (!QFile::exists(listFile))
+ appQuit(1, "The list file supplied to -r does not exist.");
+
+ m_isRobotized = true;
+ m_urls = QStringList(listFile);
+ return;
}
int lastArg = args.lastIndexOf(QRegExp("^-.*"));
diff --git a/WebKitTools/QtLauncher/utils.cpp b/WebKitTools/QtLauncher/utils.cpp
index 7013f46..2d45dd0 100644
--- a/WebKitTools/QtLauncher/utils.cpp
+++ b/WebKitTools/QtLauncher/utils.cpp
@@ -27,6 +27,54 @@
#include "utils.h"
+
+QString takeOptionValue(QStringList* arguments, int index)
+{
+ QString result;
+
+ if (++index < arguments->count() && !arguments->at(index).startsWith("-"))
+ result = arguments->takeAt(index);
+
+ return result;
+}
+
+QString formatKeys(QList<QString> keys)
+{
+ QString result;
+ for (int i = 0; i < keys.count() - 1; i++)
+ result.append(keys.at(i) + "|");
+ result.append(keys.last());
+ return result;
+}
+
+QList<QString> enumToKeys(const QMetaObject o, const QString& name, const QString& strip)
+{
+ QList<QString> list;
+
+ int enumIndex = o.indexOfEnumerator(name.toLatin1().data());
+ QMetaEnum enumerator = o.enumerator(enumIndex);
+
+ if (enumerator.isValid()) {
+ for (int i = 0; i < enumerator.keyCount(); i++) {
+ QString key(enumerator.valueToKey(i));
+ list.append(key.remove(strip));
+ }
+ }
+
+ return list;
+}
+
+void appQuit(int exitCode, const QString& msg)
+{
+ if (!msg.isEmpty()) {
+ if (exitCode > 0)
+ qDebug("ERROR: %s", msg.toLatin1().data());
+ else
+ qDebug() << msg;
+ }
+ exit(exitCode);
+}
+
QUrl urlFromUserInput(const QString& string)
{
QString input(string);
@@ -40,3 +88,5 @@ QUrl urlFromUserInput(const QString& string)
return QUrl(input);
#endif
}
+
+
diff --git a/WebKitTools/QtLauncher/utils.h b/WebKitTools/QtLauncher/utils.h
index afe771e..d6bdc29 100644
--- a/WebKitTools/QtLauncher/utils.h
+++ b/WebKitTools/QtLauncher/utils.h
@@ -30,6 +30,13 @@
#include <QtCore>
+// options handling
+QString takeOptionValue(QStringList* arguments, int index);
+QString formatKeys(QList<QString> keys);
+QList<QString> enumToKeys(const QMetaObject o, const QString& name, const QString& strip);
+
+void appQuit(int status, const QString& msg = QString()) __attribute__((noreturn));
+
QUrl urlFromUserInput(const QString& input);
#endif
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list