summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/WebKit/qt/Api/qwebelement.h
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2009-06-15 09:06:43 (GMT)
committerSimon Hausmann <simon.hausmann@nokia.com>2009-06-15 09:31:31 (GMT)
commitc411f16870f112c3407c28c22b617f613a82cff4 (patch)
tree29a1bcd590c8b31af2aab445bfe8a978dc5bf582 /src/3rdparty/webkit/WebKit/qt/Api/qwebelement.h
parent3d77b56b32a0c53ec0bbfaa07236fedb900ff336 (diff)
downloadQt-c411f16870f112c3407c28c22b617f613a82cff4.zip
Qt-c411f16870f112c3407c28c22b617f613a82cff4.tar.gz
Qt-c411f16870f112c3407c28c22b617f613a82cff4.tar.bz2
Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit-4.6-snapshot-15062009 ( 65232bf00dc494ebfd978f998c88f58d18ecce1e )
Diffstat (limited to 'src/3rdparty/webkit/WebKit/qt/Api/qwebelement.h')
-rw-r--r--src/3rdparty/webkit/WebKit/qt/Api/qwebelement.h153
1 files changed, 153 insertions, 0 deletions
diff --git a/src/3rdparty/webkit/WebKit/qt/Api/qwebelement.h b/src/3rdparty/webkit/WebKit/qt/Api/qwebelement.h
new file mode 100644
index 0000000..7e56d0f
--- /dev/null
+++ b/src/3rdparty/webkit/WebKit/qt/Api/qwebelement.h
@@ -0,0 +1,153 @@
+/*
+ Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies)
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#ifndef QWEBELEMENT_H
+#define QWEBELEMENT_H
+
+#include <QString>
+#include <QRect>
+#include <QVariant>
+#include <QExplicitlySharedDataPointer>
+
+#include "qwebkitglobal.h"
+namespace WebCore {
+ class Element;
+ class Node;
+}
+
+class QWebFrame;
+class QWebElementPrivate;
+
+class QWEBKIT_EXPORT QWebElement
+{
+public:
+ QWebElement();
+ QWebElement(const QWebElement &);
+ QWebElement &operator=(const QWebElement &);
+ ~QWebElement();
+
+ bool operator==(const QWebElement& o) const;
+ bool operator!=(const QWebElement& o) const;
+
+ bool isNull() const;
+
+ QList<QWebElement> findAll(const QString &selectorQuery) const;
+ QWebElement findFirst(const QString &selectorQuery) const;
+
+ void setPlainText(const QString &text);
+ QString toPlainText() const;
+
+ void setOuterXml(const QString &markup);
+ QString toOuterXml() const;
+
+ void setInnerXml(const QString &markup);
+ QString toInnerXml() const;
+
+ void setAttribute(const QString &name, const QString &value);
+ void setAttributeNS(const QString &namespaceUri, const QString &name, const QString &value);
+ QString attribute(const QString &name, const QString &defaultValue = QString()) const;
+ QString attributeNS(const QString &namespaceUri, const QString &name, const QString &defaultValue = QString()) const;
+ bool hasAttribute(const QString &name) const;
+ bool hasAttributeNS(const QString &namespaceUri, const QString &name) const;
+ void removeAttribute(const QString &name);
+ void removeAttributeNS(const QString &namespaceUri, const QString &name);
+ bool hasAttributes() const;
+
+ QStringList classes() const;
+ bool hasClass(const QString &name) const;
+ void addClass(const QString &name);
+ void removeClass(const QString &name);
+ void toggleClass(const QString &name);
+
+ QRect geometry() const;
+
+ QString tagName() const;
+ QString prefix() const;
+ QString localName() const;
+ QString namespaceUri() const;
+
+ QWebElement parent() const;
+ QWebElement firstChild() const;
+ QWebElement lastChild() const;
+ QWebElement nextSibling() const;
+ QWebElement previousSibling() const;
+ QWebElement document() const;
+ QWebFrame *webFrame() const;
+
+ // TODO: Add QList<QWebElement> overloads
+ // docs need example snippet
+ void appendInside(const QString &markup);
+ void appendInside(const QWebElement &element);
+
+ // docs need example snippet
+ void prependInside(const QString &markup);
+ void prependInside(const QWebElement &element);
+
+ // docs need example snippet
+ void appendOutside(const QString &markup);
+ void appendOutside(const QWebElement &element);
+
+ // docs need example snippet
+ void prependOutside(const QString &markup);
+ void prependOutside(const QWebElement &element);
+
+ // docs need example snippet
+ void encloseContentsWith(const QWebElement &element);
+ void encloseContentsWith(const QString &markup);
+ void encloseWith(const QString &markup);
+ void encloseWith(const QWebElement &element);
+
+ void replace(const QString &markup);
+ void replace(const QWebElement &element);
+
+ QWebElement clone() const;
+ QWebElement &takeFromDocument();
+ void removeFromDocument();
+ void removeChildren();
+
+ QVariant evaluateScript(const QString& scriptSource);
+
+ QVariant callFunction(const QString &functionName, const QVariantList &arguments = QVariantList());
+ QStringList functions() const;
+
+ QVariant scriptableProperty(const QString &name) const;
+ void setScriptableProperty(const QString &name, const QVariant &value);
+ QStringList scriptableProperties() const;
+
+ enum ResolveRule { IgnoreCascadingStyles, RespectCascadingStyles };
+ QString styleProperty(const QString &name, ResolveRule = IgnoreCascadingStyles) const;
+
+ enum StylePriority { NormalStylePriority, DeclaredStylePriority, ImportantStylePriority };
+ void setStyleProperty(const QString &name, const QString &value, StylePriority = DeclaredStylePriority);
+
+ QString computedStyleProperty(const QString &name) const;
+
+private:
+ explicit QWebElement(WebCore::Element *domElement);
+ explicit QWebElement(WebCore::Node *node);
+
+ friend class QWebFrame;
+ friend class QWebHitTestResult;
+ friend class QWebHitTestResultPrivate;
+
+ QWebElementPrivate *d;
+ WebCore::Element *m_element;
+};
+
+#endif // QWEBELEMENT_H