[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.19-706-ge5415e9

kenneth at webkit.org kenneth at webkit.org
Thu Feb 4 21:29:49 UTC 2010


The following commit has been merged in the webkit-1.1 branch:
commit 048e90baac2df60685041c21238121de822baf80
Author: kenneth at webkit.org <kenneth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Jan 27 20:40:37 2010 +0000

    Rubberstamped by Simon Hausmann.
    
    [Qt] QtLauncher refactoring:
    
    Move out code from the MainWindow (renamed to LauncherWindow)
    that is not depending on the view, and add it to a new class
    called MainWindow.
    
    * QtLauncher/QtLauncher.pro:
    * QtLauncher/main.cpp:
    (LauncherWindow::LauncherWindow):
    (LauncherWindow::eventFilter):
    (LauncherWindow::loadStarted):
    (LauncherWindow::loadFinished):
    (LauncherWindow::newWindow):
    (LauncherWindow::setupUI):
    (WebPage::createWindow):
    (main):
    * QtLauncher/mainwindow.cpp: Added.
    (MainWindow::MainWindow):
    (MainWindow::buildUI):
    (MainWindow::page):
    (MainWindow::setAddressUrl):
    (MainWindow::addCompleterEntry):
    (MainWindow::load):
    (MainWindow::changeLocation):
    (MainWindow::openFile):
    * QtLauncher/mainwindow.h: Added.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53948 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index bec9311..0860e75 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -15,6 +15,37 @@
 
         Rubberstamped by Simon Hausmann.
 
+        [Qt] QtLauncher refactoring:
+
+        Move out code from the MainWindow (renamed to LauncherWindow)
+        that is not depending on the view, and add it to a new class
+        called MainWindow.
+
+        * QtLauncher/QtLauncher.pro:
+        * QtLauncher/main.cpp:
+        (LauncherWindow::LauncherWindow):
+        (LauncherWindow::eventFilter):
+        (LauncherWindow::loadStarted):
+        (LauncherWindow::loadFinished):
+        (LauncherWindow::newWindow):
+        (LauncherWindow::setupUI):
+        (WebPage::createWindow):
+        (main):
+        * QtLauncher/mainwindow.cpp: Added.
+        (MainWindow::MainWindow):
+        (MainWindow::buildUI):
+        (MainWindow::page):
+        (MainWindow::setAddressUrl):
+        (MainWindow::addCompleterEntry):
+        (MainWindow::load):
+        (MainWindow::changeLocation):
+        (MainWindow::openFile):
+        * QtLauncher/mainwindow.h: Added.
+
+2010-01-27  Kenneth Rohde Christiansen  <kenneth at webkit.org>
+
+        Rubberstamped by Simon Hausmann.
+
         [Qt] QtLauncher, coding style fixes.
 
         * QtLauncher/main.cpp:
diff --git a/WebKitTools/QtLauncher/QtLauncher.pro b/WebKitTools/QtLauncher/QtLauncher.pro
index d0712b6..8894e0a 100644
--- a/WebKitTools/QtLauncher/QtLauncher.pro
+++ b/WebKitTools/QtLauncher/QtLauncher.pro
@@ -2,12 +2,14 @@ TEMPLATE = app
 
 SOURCES += \
     main.cpp \
+    mainwindow.cpp \
     urlloader.cpp \
     utils.cpp \
     webpage.cpp \
     webview.cpp \
 
 HEADERS += \
+    mainwindow.h \
     urlloader.h \
     utils.h \
     webinspector.h \
diff --git a/WebKitTools/QtLauncher/main.cpp b/WebKitTools/QtLauncher/main.cpp
index 4720132..fa6e9d0 100644
--- a/WebKitTools/QtLauncher/main.cpp
+++ b/WebKitTools/QtLauncher/main.cpp
@@ -43,6 +43,7 @@
 #include <QDebug>
 
 #include <cstdio>
+#include "mainwindow.h"
 #include <qevent.h>
 #include <qwebelement.h>
 #include <qwebframe.h>
@@ -58,55 +59,43 @@
 void QWEBKIT_EXPORT qt_drt_garbageCollector_collect();
 #endif
 
-
-class MainWindow : public QMainWindow {
+class LauncherWindow : public MainWindow {
     Q_OBJECT
+
 public:
-    MainWindow(QString url = QString()): currentZoom(100)
+    LauncherWindow(QString url = QString())
+        : MainWindow(url)
+        , currentZoom(100)
     {
-        setAttribute(Qt::WA_DeleteOnClose);
-#if QT_VERSION >= QT_VERSION_CHECK(4, 5, 0)
-        if (qgetenv("QTLAUNCHER_USE_ARGB_VISUALS").toInt() == 1)
-            setAttribute(Qt::WA_TranslucentBackground);
-#endif
-
         QSplitter* splitter = new QSplitter(Qt::Vertical, this);
         setCentralWidget(splitter);
 
         view = new WebViewTraditional(splitter);
-        WebPage* page = new WebPage(view);
-        view->setPage(page);
+        view->setPage(page());
 
 #if QT_VERSION >= QT_VERSION_CHECK(4, 6, 0)
         view->installEventFilter(this);
         touchMocking = false;
 #endif
 
-        connect(view, SIGNAL(loadFinished(bool)), this, SLOT(loadFinished()));
-        connect(view, SIGNAL(titleChanged(const QString&)), this, SLOT(setWindowTitle(const QString&)));
-        connect(view->page(), SIGNAL(linkHovered(const QString&, const QString&, const QString &)),
+        connect(page(), SIGNAL(loadStarted()), this, SLOT(loadStarted()));
+        connect(page(), SIGNAL(loadFinished(bool)), this, SLOT(loadFinished()));
+        connect(page(), SIGNAL(linkHovered(const QString&, const QString&, const QString&)),
                 this, SLOT(showLinkHover(const QString&, const QString&)));
-        connect(view->page(), SIGNAL(windowCloseRequested()), this, SLOT(close()));
 
         inspector = new WebInspector(splitter);
-        inspector->setPage(page);
+        inspector->setPage(page());
         inspector->hide();
         connect(this, SIGNAL(destroyed()), inspector, SLOT(deleteLater()));
 
         setupUI();
 
-        QUrl qurl = urlFromUserInput(url);
-        if (qurl.scheme().isEmpty())
-            qurl = QUrl("http://" + url + "/");
-        if (qurl.isValid()) {
-            urlEdit->setText(qurl.toString());
-            view->load(qurl);
-        }
-
         // the zoom values are chosen to be like in Mozilla Firefox 3
         zoomLevels << 30 << 50 << 67 << 80 << 90;
         zoomLevels << 100;
         zoomLevels << 110 << 120 << 133 << 150 << 170 << 200 << 240 << 300;
+
+        load(url);
     }
 
 #if QT_VERSION >= QT_VERSION_CHECK(4, 6, 0)
@@ -167,7 +156,7 @@ public:
                 touchPoints[0] = touchPoint;
             else if (touchPoints.size() > 1 && !touchPoints[1].id())
                 touchPoints[1] = touchPoint;
-            else 
+            else
                 touchPoints.append(touchPoint);
 
             sendTouchEvent();
@@ -201,59 +190,21 @@ public:
     }
 #endif // QT_VERSION >= QT_VERSION_CHECK(4, 6, 0)
 
-    QWebPage* webPage() const
-    {
-        return view->page();
-    }
-
     QWebView* webView() const
     {
         return view;
     }
 
 protected slots:
-
-    void openFile()
-    {
-        static const QString filter("HTML Files (*.htm *.html);;Text Files (*.txt);;Image Files (*.gif *.jpg *.png);;All Files (*)");
-
-        QFileDialog fileDialog(this, tr("Open"), QString(), filter);
-        fileDialog.setAcceptMode(QFileDialog::AcceptOpen);
-        fileDialog.setFileMode(QFileDialog::ExistingFile);
-        fileDialog.setOptions(QFileDialog::ReadOnly);
-
-        if (fileDialog.exec()) {
-            QString selectedFile = fileDialog.selectedFiles()[0];
-            if (!selectedFile.isEmpty())
-                loadURL(QUrl::fromLocalFile(selectedFile));
-        }
-    }
-
-    void changeLocation()
+    void loadStarted()
     {
-        QString string = urlEdit->text();
-        QUrl url = urlFromUserInput(string);
-        if (url.scheme().isEmpty())
-            url = QUrl("http://" + string + "/");
-        loadURL(url);
+        view->setFocus(Qt::OtherFocusReason);
     }
 
     void loadFinished()
     {
-        urlEdit->setText(view->url().toString());
-
-        QUrl::FormattingOptions opts;
-        opts |= QUrl::RemoveScheme;
-        opts |= QUrl::RemoveUserInfo;
-        opts |= QUrl::StripTrailingSlash;
-        QString s = view->url().toString(opts);
-        s = s.mid(2);
-        if (s.isEmpty())
-            return;
-
-        if (!urlList.contains(s))
-            urlList += s;
-        urlModel.setStringList(urlList);
+        setAddressUrl(view->url().toString());
+        addCompleterEntry(view->url());
     }
 
     void showLinkHover(const QString &link, const QString &toolTip)
@@ -368,9 +319,9 @@ protected slots:
 
 public slots:
 
-    void newWindow(const QString &url = QString())
+    void newWindow(const QString& url = QString())
     {
-        MainWindow* mw = new MainWindow(url);
+        LauncherWindow* mw = new LauncherWindow(url);
         mw->show();
     }
 
@@ -379,45 +330,9 @@ private:
     QVector<int> zoomLevels;
     int currentZoom;
 
-    void loadURL(const QUrl& url)
-    {
-        if (!url.isValid())
-            return;
-
-        urlEdit->setText(url.toString());
-        view->load(url);
-        view->setFocus(Qt::OtherFocusReason);
-    }
-
     // create the status bar, tool bar & menu
     void setupUI()
     {
-        progress = new QProgressBar(this);
-        progress->setRange(0, 100);
-        progress->setMinimumSize(100, 20);
-        progress->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
-        progress->hide();
-        statusBar()->addPermanentWidget(progress);
-
-        connect(view, SIGNAL(loadProgress(int)), progress, SLOT(show()));
-        connect(view, SIGNAL(loadProgress(int)), progress, SLOT(setValue(int)));
-        connect(view, SIGNAL(loadFinished(bool)), progress, SLOT(hide()));
-
-        urlEdit = new QLineEdit(this);
-        urlEdit->setSizePolicy(QSizePolicy::Expanding, urlEdit->sizePolicy().verticalPolicy());
-        connect(urlEdit, SIGNAL(returnPressed()),
-                SLOT(changeLocation()));
-        QCompleter* completer = new QCompleter(this);
-        urlEdit->setCompleter(completer);
-        completer->setModel(&urlModel);
-
-        QToolBar* bar = addToolBar("Navigation");
-        bar->addAction(view->pageAction(QWebPage::Back));
-        bar->addAction(view->pageAction(QWebPage::Forward));
-        bar->addAction(view->pageAction(QWebPage::Reload));
-        bar->addAction(view->pageAction(QWebPage::Stop));
-        bar->addWidget(urlEdit);
-
         QMenu* fileMenu = menuBar()->addMenu("&File");
         fileMenu->addAction("New Window", this, SLOT(newWindow()), QKeySequence::New);
         fileMenu->addAction(tr("Open File..."), this, SLOT(openFile()), QKeySequence::Open);
@@ -464,21 +379,9 @@ private:
         writingMenu->addAction(view->pageAction(QWebPage::SetTextDirectionLeftToRight));
         writingMenu->addAction(view->pageAction(QWebPage::SetTextDirectionRightToLeft));
 
-        view->pageAction(QWebPage::Back)->setShortcut(QKeySequence::Back);
-        view->pageAction(QWebPage::Stop)->setShortcut(Qt::Key_Escape);
-        view->pageAction(QWebPage::Forward)->setShortcut(QKeySequence::Forward);
-        view->pageAction(QWebPage::Reload)->setShortcut(QKeySequence::Refresh);
-        view->pageAction(QWebPage::Undo)->setShortcut(QKeySequence::Undo);
-        view->pageAction(QWebPage::Redo)->setShortcut(QKeySequence::Redo);
-        view->pageAction(QWebPage::Cut)->setShortcut(QKeySequence::Cut);
-        view->pageAction(QWebPage::Copy)->setShortcut(QKeySequence::Copy);
-        view->pageAction(QWebPage::Paste)->setShortcut(QKeySequence::Paste);
         zoomIn->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_Plus));
         zoomOut->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_Minus));
         resetZoom->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_0));
-        view->pageAction(QWebPage::ToggleBold)->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_B));
-        view->pageAction(QWebPage::ToggleItalic)->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_I));
-        view->pageAction(QWebPage::ToggleUnderline)->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_U));
 
         QMenu* toolsMenu = menuBar()->addMenu("&Develop");
         toolsMenu->addAction("Select Elements...", this, SLOT(selectElements()));
@@ -494,15 +397,10 @@ private:
     }
 
     QWebView* view;
-    QLineEdit* urlEdit;
-    QProgressBar* progress;
     WebInspector* inspector;
 
     QAction* formatMenuAction;
 
-    QStringList urlList;
-    QStringListModel urlModel;
-
 #if QT_VERSION >= QT_VERSION_CHECK(4, 6, 0)
     QList<QTouchEvent::TouchPoint> touchPoints;
     bool touchMocking;
@@ -512,9 +410,9 @@ private:
 
 QWebPage* WebPage::createWindow(QWebPage::WebWindowType)
 {
-    MainWindow* mw = new MainWindow;
+    LauncherWindow* mw = new LauncherWindow;
     mw->show();
-    return mw->webPage();
+    return mw->page();
 }
 
 QObject* WebPage::createPlugin(const QString &classId, const QUrl&, const QStringList&, const QStringList&)
@@ -578,7 +476,7 @@ int main(int argc, char **argv)
             qDebug() << "Usage: QtLauncher -r listfile";
             exit(0);
         }
-        MainWindow* window = new MainWindow;
+        LauncherWindow* window = new LauncherWindow;
         QWebView* view = window->webView();
         UrlLoader loader(view->page()->mainFrame(), listFile);
         QObject::connect(view->page()->mainFrame(), SIGNAL(loadFinished(bool)), &loader, SLOT(loadNext()));
@@ -586,13 +484,13 @@ int main(int argc, char **argv)
         window->show();
         launcherMain(app);
     } else {
-        MainWindow* window = 0;
+        LauncherWindow* window = 0;
 
         // Look though the args for something we can open
         for (int i = 1; i < args.count(); i++) {
             if (!args.at(i).startsWith("-")) {
                 if (!window)
-                    window = new MainWindow(args.at(i));
+                    window = new LauncherWindow(args.at(i));
                 else
                     window->newWindow(args.at(i));
             }
@@ -600,7 +498,7 @@ int main(int argc, char **argv)
 
         // If not, just open the default URL
         if (!window)
-            window = new MainWindow(defaultUrl);
+            window = new LauncherWindow(defaultUrl);
 
         window->show();
         launcherMain(app);
diff --git a/WebKitTools/QtLauncher/mainwindow.cpp b/WebKitTools/QtLauncher/mainwindow.cpp
new file mode 100644
index 0000000..1487f1c
--- /dev/null
+++ b/WebKitTools/QtLauncher/mainwindow.cpp
@@ -0,0 +1,159 @@
+/*
+ * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies)
+ * Copyright (C) 2009 Girish Ramakrishnan <girish at forwardbias.in>
+ * Copyright (C) 2006 George Staikos <staikos at kde.org>
+ * Copyright (C) 2006 Dirk Mueller <mueller at kde.org>
+ * Copyright (C) 2006 Zack Rusin <zack at kde.org>
+ * Copyright (C) 2006 Simon Hausmann <hausmann at kde.org>
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "mainwindow.h"
+
+#include "utils.h"
+
+MainWindow::MainWindow(const QString& url)
+    : m_page(new WebPage(this))
+{
+    setAttribute(Qt::WA_DeleteOnClose);
+#if QT_VERSION >= QT_VERSION_CHECK(4, 5, 0)
+    if (qgetenv("QTLAUNCHER_USE_ARGB_VISUALS").toInt() == 1)
+        setAttribute(Qt::WA_TranslucentBackground);
+#endif
+
+    buildUI();
+}
+
+void MainWindow::buildUI()
+{
+    QToolBar* bar = addToolBar("Navigation");
+    bar->addAction(page()->action(QWebPage::Back));
+    bar->addAction(page()->action(QWebPage::Forward));
+    bar->addAction(page()->action(QWebPage::Reload));
+    bar->addAction(page()->action(QWebPage::Stop));
+
+    urlEdit = new QLineEdit(this);
+    urlEdit->setSizePolicy(QSizePolicy::Expanding, urlEdit->sizePolicy().verticalPolicy());
+    connect(urlEdit, SIGNAL(returnPressed()), SLOT(changeLocation()));
+    QCompleter* completer = new QCompleter(this);
+    urlEdit->setCompleter(completer);
+    completer->setModel(&urlModel);
+    bar->addWidget(urlEdit);
+
+    progress = new QProgressBar(this);
+    progress->setRange(0, 100);
+    progress->setMinimumSize(100, 20);
+    progress->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
+    progress->hide();
+    statusBar()->addPermanentWidget(progress);
+
+    connect(page()->mainFrame(), SIGNAL(titleChanged(const QString&)),
+            this, SLOT(setWindowTitle(const QString&)));
+    connect(page(), SIGNAL(loadProgress(int)), progress, SLOT(show()));
+    connect(page(), SIGNAL(loadProgress(int)), progress, SLOT(setValue(int)));
+    connect(page(), SIGNAL(loadFinished(bool)), progress, SLOT(hide()));
+    connect(page(), SIGNAL(windowCloseRequested()), this, SLOT(close()));
+
+    // short-cuts
+    page()->action(QWebPage::Back)->setShortcut(QKeySequence::Back);
+    page()->action(QWebPage::Stop)->setShortcut(Qt::Key_Escape);
+    page()->action(QWebPage::Forward)->setShortcut(QKeySequence::Forward);
+    page()->action(QWebPage::Reload)->setShortcut(QKeySequence::Refresh);
+    page()->action(QWebPage::Undo)->setShortcut(QKeySequence::Undo);
+    page()->action(QWebPage::Redo)->setShortcut(QKeySequence::Redo);
+    page()->action(QWebPage::Cut)->setShortcut(QKeySequence::Cut);
+    page()->action(QWebPage::Copy)->setShortcut(QKeySequence::Copy);
+    page()->action(QWebPage::Paste)->setShortcut(QKeySequence::Paste);
+
+    page()->action(QWebPage::ToggleBold)->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_B));
+    page()->action(QWebPage::ToggleItalic)->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_I));
+    page()->action(QWebPage::ToggleUnderline)->setShortcut(QKeySequence(Qt::CTRL | Qt::Key_U));
+}
+
+WebPage* MainWindow::page()
+{
+    return m_page;
+}
+
+void MainWindow::setAddressUrl(const QString& url)
+{
+    urlEdit->setText(url);
+}
+
+void MainWindow::addCompleterEntry(const QUrl& url)
+{
+    QUrl::FormattingOptions opts;
+    opts |= QUrl::RemoveScheme;
+    opts |= QUrl::RemoveUserInfo;
+    opts |= QUrl::StripTrailingSlash;
+    QString s = url.toString(opts);
+    s = s.mid(2);
+    if (s.isEmpty())
+        return;
+
+    if (!urlList.contains(s))
+        urlList += s;
+    urlModel.setStringList(urlList);
+}
+
+void MainWindow::load(const QString& url)
+{
+    QUrl qurl = urlFromUserInput(url);
+    if (qurl.scheme().isEmpty())
+        qurl = QUrl("http://" + url + "/");
+    load(qurl);
+}
+
+void MainWindow::load(const QUrl& url)
+{
+    if (!url.isValid())
+        return;
+
+    setAddressUrl(url.toString());
+    page()->mainFrame()->load(url);
+}
+
+void MainWindow::changeLocation()
+{
+    QString string = urlEdit->text();
+    load(string);
+}
+
+void MainWindow::openFile()
+{
+    static const QString filter("HTML Files (*.htm *.html);;Text Files (*.txt);;Image Files (*.gif *.jpg *.png);;All Files (*)");
+
+    QFileDialog fileDialog(this, tr("Open"), QString(), filter);
+    fileDialog.setAcceptMode(QFileDialog::AcceptOpen);
+    fileDialog.setFileMode(QFileDialog::ExistingFile);
+    fileDialog.setOptions(QFileDialog::ReadOnly);
+
+    if (fileDialog.exec()) {
+        QString selectedFile = fileDialog.selectedFiles()[0];
+        if (!selectedFile.isEmpty())
+            load(QUrl::fromLocalFile(selectedFile));
+    }
+}
+
diff --git a/WebKitTools/QtLauncher/mainwindow.h b/WebKitTools/QtLauncher/mainwindow.h
new file mode 100644
index 0000000..2b5941d
--- /dev/null
+++ b/WebKitTools/QtLauncher/mainwindow.h
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies)
+ * Copyright (C) 2009 Girish Ramakrishnan <girish at forwardbias.in>
+ * Copyright (C) 2006 George Staikos <staikos at kde.org>
+ * Copyright (C) 2006 Dirk Mueller <mueller at kde.org>
+ * Copyright (C) 2006 Zack Rusin <zack at kde.org>
+ * Copyright (C) 2006 Simon Hausmann <hausmann at kde.org>
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef mainwindow_h
+#define mainwindow_h
+
+#include <QtGui>
+#include "webpage.h"
+
+class MainWindow : public QMainWindow {
+    Q_OBJECT
+
+public:
+    MainWindow(const QString& url = QString());
+
+    void setAddressUrl(const QString& url);
+    void addCompleterEntry(const QUrl& url);
+
+    void load(const QString& url);
+    void load(const QUrl& url);
+
+    WebPage* page();
+
+protected slots:
+    void openFile();
+    void changeLocation();
+
+private:
+    void buildUI();
+
+    QStringListModel urlModel;
+    QStringList urlList;
+    QLineEdit* urlEdit;
+
+    QProgressBar* progress;
+
+    WebPage* m_page;
+};
+
+#endif

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list