Home | History | Annotate | Download | only in QtTestBrowser
      1 /*
      2  * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies)
      3  * Copyright (C) 2009 Girish Ramakrishnan <girish (at) forwardbias.in>
      4  * Copyright (C) 2006 George Staikos <staikos (at) kde.org>
      5  * Copyright (C) 2006 Dirk Mueller <mueller (at) kde.org>
      6  * Copyright (C) 2006 Zack Rusin <zack (at) kde.org>
      7  * Copyright (C) 2006 Simon Hausmann <hausmann (at) kde.org>
      8  *
      9  * All rights reserved.
     10  *
     11  * Redistribution and use in source and binary forms, with or without
     12  * modification, are permitted provided that the following conditions
     13  * are met:
     14  * 1. Redistributions of source code must retain the above copyright
     15  *    notice, this list of conditions and the following disclaimer.
     16  * 2. Redistributions in binary form must reproduce the above copyright
     17  *    notice, this list of conditions and the following disclaimer in the
     18  *    documentation and/or other materials provided with the distribution.
     19  *
     20  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
     21  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     23  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
     24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
     25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
     26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
     27  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
     28  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     29  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     30  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     31  */
     32 
     33 #ifndef mainwindow_h
     34 #define mainwindow_h
     35 
     36 #include <QtGui>
     37 #include "webpage.h"
     38 
     39 class LocationEdit;
     40 
     41 class MainWindow : public QMainWindow {
     42     Q_OBJECT
     43 
     44 public:
     45     MainWindow();
     46 
     47     void addCompleterEntry(const QUrl& url);
     48 
     49     void load(const QString& url);
     50     void load(const QUrl& url);
     51 
     52     WebPage* page() const;
     53     void setPage(WebPage*);
     54 
     55 protected slots:
     56     void setAddressUrl(const QString& url);
     57     void setAddressUrl(const QUrl& url);
     58     void openFile();
     59     void openLocation();
     60     void changeLocation();
     61     void onIconChanged();
     62     void onLoadStarted();
     63     void onTitleChanged(const QString&);
     64 
     65 protected:
     66     QString addressUrl() const;
     67 
     68 private:
     69     void buildUI();
     70 
     71     WebPage* m_page;
     72     QToolBar* m_toolBar;
     73     QStringListModel urlModel;
     74     QStringList urlList;
     75     LocationEdit* urlEdit;
     76 };
     77 
     78 #endif
     79