diff -r 0f2326c2a325 -r 1c3b8676e58c ginebra2/ContentViews/WebView.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ginebra2/ContentViews/WebView.cpp Tue Jul 06 14:03:49 2010 +0300 @@ -0,0 +1,70 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* +* This program is free software: you can redistribute it and/or modify +* it under the terms of the GNU Lesser General Public License as published by +* the Free Software Foundation, version 2.1 of the License. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU Lesser General Public License for more details. +* +* You should have received a copy of the GNU Lesser General Public License +* along with this program. If not, +* see "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html/". +* +* Description: +* +*/ +#include "WebView.h" + +#include "browserpagefactory.h" +#include "wrtbrowsercontainer.h" + +#include +#include + +namespace GVA { + +WebView::WebView() + : QGraphicsWebView() + , m_webPage(0) +{} + +WebView::~WebView() +{} + +QWebPage* WebView::page() const +{ + return m_webPage; +} + +void WebView::setPage(QWebPage* page) +{ + if (m_webPage == page) + return; + + if (m_webPage) { + disconnect(m_webPage->mainFrame(), 0, this, 0); + m_webPage->setView(0); + } + + m_webPage = page; + + if (!m_webPage) + m_webPage = createWebPage(); + + QGraphicsWebView::setPage(m_webPage); + + emit titleChanged(title()); + emit urlChanged(url()); +} + +QWebPage* WebView::createWebPage() +{ + return reinterpret_cast(BrowserPageFactory::openBrowserPage()); +} + +}//namespace GVA