106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen/* 206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen Copyright (C) 2010 Robert Hogan <robert@roberthogan.net> 306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen This library is free software; you can redistribute it and/or 506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen modify it under the terms of the GNU Library General Public 606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen License as published by the Free Software Foundation; either 706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen version 2 of the License, or (at your option) any later version. 806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen This library is distributed in the hope that it will be useful, 1006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen but WITHOUT ANY WARRANTY; without even the implied warranty of 1106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 1206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen Library General Public License for more details. 1306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 1406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen You should have received a copy of the GNU Library General Public License 1506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen along with this library; see the file COPYING.LIB. If not, write to 1606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 1706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen Boston, MA 02110-1301, USA. 1806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen*/ 1906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 2006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#ifndef QWebScriptWorld_h_ 2106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#define QWebScriptWorld_h_ 2206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 2306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#include <QtCore/qurl.h> 2406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#include <QtCore/qshareddata.h> 2506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 2606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#include "qwebkitglobal.h" 2706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 2806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsennamespace WebCore { 2906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen class DOMWrapperWorld; 3006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen} 3106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 3206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsenclass QWebScriptWorldPrivate; 3306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsenclass QWebFrame; 3406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 3506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsenclass QWEBKIT_EXPORT QWebScriptWorld { 3606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsenpublic: 3706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen QWebScriptWorld(); 38ca9cb53ed1119a3fd98fafa0972ffeb56dee1c24Steve Block QWebScriptWorld(const QWebScriptWorld&); 39ca9cb53ed1119a3fd98fafa0972ffeb56dee1c24Steve Block QWebScriptWorld &operator=(const QWebScriptWorld&); 4006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen ~QWebScriptWorld(); 4106ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 4206ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen WebCore::DOMWrapperWorld* world() const; 4306ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 4406ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsenprivate: 4506ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen QExplicitlySharedDataPointer<QWebScriptWorldPrivate> d; 4606ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 4706ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen friend class QWebFrame; 4806ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen}; 4906ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen 5006ea8e899e48f1f2f396b70e63fae369f2f23232Kristian Monsen#endif 51