From 6424c9facaa1959fb5e707e1d9c90e9bc06156d9 Mon Sep 17 00:00:00 2001 From: Noldor Date: Sat, 12 Mar 2011 13:46:50 +0000 Subject: Quick fix git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@5566 17fca916-40b9-46aa-a4ea-0a15b648b75c --- src/modules/objects/KvsObject_webView.h | 87 +++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 src/modules/objects/KvsObject_webView.h (limited to 'src/modules/objects/KvsObject_webView.h') diff --git a/src/modules/objects/KvsObject_webView.h b/src/modules/objects/KvsObject_webView.h new file mode 100644 index 000000000..abb05d551 --- /dev/null +++ b/src/modules/objects/KvsObject_webView.h @@ -0,0 +1,87 @@ +#ifndef _CLASS_WEVBIEW_H_ +#define _CLASS_WEVBIEW_H_ +//============================================================================= +// +// File : KvsObject_webView.h +// Creation date : Wed Mar 9 23:45:48 CEST 2011 +// by Alessandro Carbone(Noldor) +// +// This file is part of the KVIrc irc client distribution +// Copyright (C) 2011 Alessandro Carbone (elfonol at gmail dot com) +// +// This program is FREE software. You can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your opinion) any later version. +// +// 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 General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, write to the Free Software Foundation, +// Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +// +//============================================================================= + +#include "kvi_settings.h" +#ifdef COMPILE_WEBKIT_SUPPORT +#include "object_macros.h" +#include +#include +#include +class KvsObject_webView : public KviKvsObject +{ + Q_OBJECT +public: + KVSO_DECLARE_OBJECT(KvsObject_webView) +public: + QWidget * widget() { return (QWidget *)object(); } +protected: + QWebPage * m_pWebPage; + QHash m_dictFrames; + QList lStack; + QWebElementCollection m_webElementCollection; + QWebElement m_currentElement; + void getFrames(QWebFrame *pFrame,KviKvsArray *n, kvs_uint_t & uIdx); + virtual bool init(KviKvsRunTimeContext * pContext,KviKvsVariantList *pParams); + + bool pushCurrentToStack(KviKvsObjectFunctionCall *c); + bool popCurrentFromStack(KviKvsObjectFunctionCall *c); + bool elementStackCount(KviKvsObjectFunctionCall *c); + bool clearElementStack(KviKvsObjectFunctionCall *c); + + bool makePreview(KviKvsObjectFunctionCall *c); + + bool firstChild(KviKvsObjectFunctionCall *c); + bool parentElement(KviKvsObjectFunctionCall *c); + bool nextSibling(KviKvsObjectFunctionCall *c); + + bool toPlainText(KviKvsObjectFunctionCall *c); + bool load(KviKvsObjectFunctionCall *c); + bool getDocumentElement(KviKvsObjectFunctionCall *c); + bool currentElementTagName(KviKvsObjectFunctionCall *c); + bool findAll(KviKvsObjectFunctionCall *c); + bool findFirst(KviKvsObjectFunctionCall *c); + + bool moveToQueryResultsAt(KviKvsObjectFunctionCall *c); + bool queryResultsCount(KviKvsObjectFunctionCall *c); + + bool attributeNames(KviKvsObjectFunctionCall *c); + bool setAttribute(KviKvsObjectFunctionCall *c); + bool attribute(KviKvsObjectFunctionCall *c); + bool frames(KviKvsObjectFunctionCall *c); + + bool loadStartedEvent(KviKvsObjectFunctionCall *c); + bool loadFinishedEvent(KviKvsObjectFunctionCall *c); + bool loadProgressEvent(KviKvsObjectFunctionCall *c); + + +protected slots: + void slotLoadFinished(bool); + void slotLoadProgress(int); + void slotLoadStarted(); +}; +#endif +#endif //!_CLASS_WEBVIEW_H_ -- cgit v1.3.1-10-gc9f91