Home | History | Annotate | Download | only in qt
      1 /*
      2  * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
      3  * Copyright (C) 2010 University of Szeged
      4  *
      5  * All rights reserved.
      6  *
      7  * Redistribution and use in source and binary forms, with or without
      8  * modification, are permitted provided that the following conditions
      9  * are met:
     10  * 1. Redistributions of source code must retain the above copyright
     11  *    notice, this list of conditions and the following disclaimer.
     12  * 2. Redistributions in binary form must reproduce the above copyright
     13  *    notice, this list of conditions and the following disclaimer in the
     14  *    documentation and/or other materials provided with the distribution.
     15  *
     16  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
     17  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     18  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     19  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
     20  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
     21  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
     22  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
     23  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
     24  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     25  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     26  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     27  */
     28 
     29 #include "BrowserWindow.h"
     30 
     31 #include "MiniBrowserApplication.h"
     32 #include "UrlLoader.h"
     33 #include <QLatin1String>
     34 #include <QRegExp>
     35 #include <qgraphicswkview.h>
     36 #include <QtGui>
     37 
     38 int main(int argc, char** argv)
     39 {
     40     MiniBrowserApplication app(argc, argv);
     41 
     42     if (app.isRobotized()) {
     43         QWKContext* context = new QWKContext;
     44         BrowserWindow* window = new BrowserWindow(context, &app.m_windowOptions);
     45         UrlLoader loader(window, app.urls().at(0), app.robotTimeout(), app.robotExtraTime());
     46         loader.loadNext();
     47         window->show();
     48         return app.exec();
     49     }
     50 
     51     QStringList urls = app.urls();
     52 
     53     if (urls.isEmpty()) {
     54         QString defaultIndexFile = QString("%1/%2").arg(QDir::homePath()).arg(QLatin1String("index.html"));
     55         if (QFile(defaultIndexFile).exists())
     56             urls.append(QString("file://") + defaultIndexFile);
     57         else
     58             urls.append("http://www.google.com");
     59     }
     60 
     61     QWKContext* context = new QWKContext;
     62     BrowserWindow* window = new BrowserWindow(context, &app.m_windowOptions);
     63     if (app.m_windowOptions.useSeparateWebProcessPerWindow)
     64         context->setParent(window);
     65 
     66     window->load(urls.at(0));
     67 
     68     for (int i = 1; i < urls.size(); ++i)
     69         window->newWindow(urls.at(i));
     70 
     71     app.exec();
     72 
     73     return 0;
     74 }
     75