com.trolltech.qt.webkit
Class QWebFrame

java.lang.Object
  extended by com.trolltech.qt.internal.QSignalEmitterInternal
      extended by com.trolltech.qt.QSignalEmitter
          extended by com.trolltech.qt.QtJambiObject
              extended by com.trolltech.qt.core.QObject
                  extended by com.trolltech.qt.webkit.QWebFrame
All Implemented Interfaces:
QtJambiInterface

public final class QWebFrame
extends QObject

The QWebFrame class represents a frame in a web page. QWebFrame represents a frame inside a web page. Each QWebPage object contains at least one frame, the main frame, obtained using QWebPage::mainFrame(). Additional frames will be created for HTML <frame> or <iframe> elements.

A frame can be loaded using load() or setUrl(). Alternatively, if you have the HTML content readily available, you can use setHtml() instead.

The page() function returns a pointer to the web page object. See Elements of QWebView for an explanation of how web frames are related to a web page and web view.

The title of an HTML frame can be accessed with the title() property. Additionally, a frame may also specify an icon, which can be accessed using the icon() property. If the title or the icon changes, the corresponding titleChanged() and iconChanged() signals will be emitted. The zoomFactor() property can be used to change the overall size of the content displayed in the frame.

QWebFrame objects are created and controlled by the web page. You can connect to the web page's frameCreated() signal to be notified when a new frame is created.

The hitTestContent() function can be used to programmatically examine the contents of a frame.

A QWebFrame can be printed onto a QPrinter using the print() function. This function is marked as a slot and can be conveniently connected to QPrintPreviewDialog's paintRequested() signal.

See also:
QWebPage.


Nested Class Summary
 
Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter
QSignalEmitter.AbstractSignal, QSignalEmitter.PrivateSignal0, QSignalEmitter.PrivateSignal1, QSignalEmitter.PrivateSignal2, QSignalEmitter.PrivateSignal3, QSignalEmitter.PrivateSignal4, QSignalEmitter.PrivateSignal5, QSignalEmitter.PrivateSignal6, QSignalEmitter.PrivateSignal7, QSignalEmitter.PrivateSignal8, QSignalEmitter.PrivateSignal9, QSignalEmitter.Signal0, QSignalEmitter.Signal1, QSignalEmitter.Signal2, QSignalEmitter.Signal3, QSignalEmitter.Signal4, QSignalEmitter.Signal5, QSignalEmitter.Signal6, QSignalEmitter.Signal7, QSignalEmitter.Signal8, QSignalEmitter.Signal9
 
Nested classes/interfaces inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
com.trolltech.qt.internal.QSignalEmitterInternal.AbstractSignalInternal
 
Field Summary
 QSignalEmitter.Signal0 iconChanged
          This signal is emitted when the icon ("favicon") associated with the frame has been loaded.
 QSignalEmitter.Signal0 initialLayoutCompleted
          This signal is emitted when the frame is laid out the first time.
 QSignalEmitter.Signal0 javaScriptWindowObjectCleared
          This signal is emitted whenever the global window object of the JavaScript environment is cleared, e.
 QSignalEmitter.Signal0 provisionalLoad
           
 QSignalEmitter.Signal1 titleChanged
          This signal takes 1 generic argument(s).
 QSignalEmitter.Signal1 urlChanged
          This signal takes 1 generic argument(s).
 
Fields inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
currentSender
 
Method Summary
 void addToJavaScriptWindowObject(java.lang.String name, QObject object)
          Make object available under name from within the frame's JavaScript context.
 java.util.List childFrames()
          Returns a list of all frames that are direct children of this frame.
 QSize contentsSize()
          This property holds the size of the contents in this frame.
 java.lang.Object evaluateJavaScript(java.lang.String scriptSource)
          Evaluate JavaScript defined by scriptSource using this frame as context.
 java.lang.String frameName()
          The name of this frame as defined by the parent frame.
 QRect geometry()
          Return the geometry of the frame relative to it's parent frame.
 QWebHitTestResult hitTestContent(QPoint pos)
          Performs a hit test on the frame contents at the given position pos and returns the hit test result.
 QIcon icon()
          This property holds the icon associated with this frame.
 void load(QNetworkRequest request)
          Loads a network request, req, into this frame.
 void load(QNetworkRequest request, QNetworkAccessManager.Operation operation)
          Loads a network request, req, into this frame.
 void load(QNetworkRequest request, QNetworkAccessManager.Operation operation, QByteArray body)
          Loads a network request, req, into this frame.
 void load(QUrl url)
          Loads url into this frame.
 java.util.SortedMap metaData()
          Returns the meta data in this frame as a QMultiMap The meta data consists of the name and content attributes of the of the <meta> tags in the HTML document.
 QWebPage page()
          The web page that contains this frame.
 QWebFrame parentFrame()
          Returns the parent frame of this frame, or 0 if the frame is the web pages main frame.
 QPoint pos()
          Returns the position of the frame relative to it's parent frame.
 void print(QPrinter printer)
          Prints the frame to the given printer.
 void render(QPainter painter)
          Render the frame into painter.
 void render(QPainter painter, QRegion clip)
          Render the frame into painter clipping to clip.
 java.lang.String renderTreeDump()
          Returns a dump of the rendering tree.
 void scroll(int arg__1, int arg__2)
          Scrolls the frame dx pixels to the right and dy pixels downward.
 int scrollBarMaximum(Qt.Orientation orientation)
          Returns the maximum value for the scrollbar with orientation orientation, or 0 if no scrollbar is found for orientation.
 int scrollBarMinimum(Qt.Orientation orientation)
          Returns the minimum value for the scrollbar with orientation orientation.
 Qt.ScrollBarPolicy scrollBarPolicy(Qt.Orientation orientation)
          Returns the scrollbar policy for the scrollbar defined by orientation.
 int scrollBarValue(Qt.Orientation orientation)
          Returns the current value for the scrollbar with orientation orientation, or 0 if no scrollbar is found for orientation.
 QPoint scrollPosition()
          This property holds the position the frame is currently scrolled to.
 void setContent(QByteArray data)
          Sets the content of this frame to the specified content data.
 void setContent(QByteArray data, java.lang.String mimeType)
          Sets the content of this frame to the specified content data.
 void setContent(QByteArray data, java.lang.String mimeType, QUrl baseUrl)
          Sets the content of this frame to the specified content data.
 void setHtml(java.lang.String html)
          Sets the content of this frame to html.
 void setHtml(java.lang.String html, QUrl baseUrl)
          Sets the content of this frame to html.
 void setScrollBarPolicy(Qt.Orientation orientation, Qt.ScrollBarPolicy policy)
          Sets the scrollbar policy for the scrollbar defined by orientation to policy.
 void setScrollBarValue(Qt.Orientation orientation, int value)
          Sets the current value for the scrollbar with orientation orientation.
 void setScrollPosition(QPoint pos)
          This property holds the position the frame is currently scrolled to.
 void setTextSizeMultiplier(double factor)
          Sets the value of the multiplier used to scale the text in a Web frame to the factor specified.
 void setUrl(QUrl url)
          This property holds the url of the frame currently viewed.
 void setZoomFactor(double factor)
          This property holds the zoom factor for the frame.
 double textSizeMultiplier()
          Returns the value of the multiplier used to scale the text in a Web frame.
 java.lang.String title()
          This property holds the title of the frame as defined by the HTML <title> element.
 java.lang.String toHtml()
          Returns the frame's content, converted to HTML.
 java.lang.String toPlainText()
          Returns the content of this frame converted to plain text.
 QUrl url()
          This property holds the url of the frame currently viewed.
 double zoomFactor()
          This property holds the zoom factor for the frame.
 
Methods inherited from class com.trolltech.qt.core.QObject
childEvent, children, connectSlotsByName, customEvent, disposeLater, dumpObjectInfo, dumpObjectTree, dynamicPropertyNames, event, eventFilter, findChild, findChild, findChild, findChildren, findChildren, findChildren, findChildren, indexOfProperty, installEventFilter, isWidgetType, killTimer, moveToThread, objectName, parent, properties, property, removeEventFilter, setObjectName, setParent, setProperty, startTimer, timerEvent, toString, userProperty
 
Methods inherited from class com.trolltech.qt.QtJambiObject
dispose, disposed, equals, finalize, reassignNativeResources, tr, tr, tr
 
Methods inherited from class com.trolltech.qt.QSignalEmitter
blockSignals, disconnect, disconnect, signalsBlocked, signalSender, thread
 
Methods inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
__qt_signalInitialization
 
Methods inherited from class java.lang.Object
clone, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.trolltech.qt.QtJambiInterface
disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership
 

Field Detail

iconChanged

public final QSignalEmitter.Signal0 iconChanged
This signal is emitted when the icon ("favicon") associated with the frame has been loaded.

See also:
icon().


initialLayoutCompleted

public final QSignalEmitter.Signal0 initialLayoutCompleted
This signal is emitted when the frame is laid out the first time. This is the first time you will see contents displayed on the frame.

Note: A frame can be laid out multiple times.


javaScriptWindowObjectCleared

public final QSignalEmitter.Signal0 javaScriptWindowObjectCleared
This signal is emitted whenever the global window object of the JavaScript environment is cleared, e. ., before starting a new load.

If you intend to add QObjects to a QWebFrame using addToJavaScriptWindowObject(), you should add them in a slot connected to this signal. This ensures that your objects remain accessible when loading new URLs.


provisionalLoad

public final QSignalEmitter.Signal0 provisionalLoad

titleChanged

public final QSignalEmitter.Signal1 titleChanged

This signal takes 1 generic argument(s). We list their type and the name they go by in the description of this signal. <java.lang.String(named: title)>:

This signal is emitted whenever the title of the frame changes. The title string specifies the new title.

See also:
title().


urlChanged

public final QSignalEmitter.Signal1 urlChanged

This signal takes 1 generic argument(s). We list their type and the name they go by in the description of this signal. <com.trolltech.qt.core.QUrl(named: url)>:

This signal is emitted with the URL of the frame when the frame's title is received. The new URL is specified by url.

See also:
url().

Method Detail

addToJavaScriptWindowObject

public final void addToJavaScriptWindowObject(java.lang.String name,
                                              QObject object)
Make object available under name from within the frame's JavaScript context. The object will be inserted as a child of the frame's window object.

Qt properties will be exposed as JavaScript properties and slots as JavaScript methods.

If you want to ensure that your QObjects remain accessible after loading a new URL, you should add them in a slot connected to the javaScriptWindowObjectCleared() signal.


childFrames

public final java.util.List childFrames()
Returns a list of all frames that are direct children of this frame.

See also:
parentFrame().


contentsSize

public final QSize contentsSize()
This property holds the size of the contents in this frame.


evaluateJavaScript

public final java.lang.Object evaluateJavaScript(java.lang.String scriptSource)
Evaluate JavaScript defined by scriptSource using this frame as context.

See also:
addToJavaScriptWindowObject(), and javaScriptWindowObjectCleared() .


frameName

public final java.lang.String frameName()
The name of this frame as defined by the parent frame.


geometry

public final QRect geometry()
Return the geometry of the frame relative to it's parent frame.


hitTestContent

public final QWebHitTestResult hitTestContent(QPoint pos)
Performs a hit test on the frame contents at the given position pos and returns the hit test result.


icon

public final QIcon icon()
This property holds the icon associated with this frame.

See also:
iconChanged() , and QWebSettings::iconForUrl().


load

public final void load(QNetworkRequest request,
                       QNetworkAccessManager.Operation operation)
Loads a network request, req, into this frame.

Note: The view remains the same until enough data has arrived to display the new url.


load

public final void load(QNetworkRequest request)
Loads a network request, req, into this frame.

Note: The view remains the same until enough data has arrived to display the new url.


load

public final void load(QNetworkRequest request,
                       QNetworkAccessManager.Operation operation,
                       QByteArray body)
Loads a network request, req, into this frame.

Note: The view remains the same until enough data has arrived to display the new url.


load

public final void load(QUrl url)
Loads url into this frame.

Note: The view remains the same until enough data has arrived to display the new url.

See also:
setUrl(), setHtml(), and setContent().


metaData

public final java.util.SortedMap metaData()
Returns the meta data in this frame as a QMultiMap The meta data consists of the name and content attributes of the of the <meta> tags in the HTML document.

For example:

<html>
    <head>
        <meta name="description" content="This document is a tutorial about Qt development">
        <meta name="keywords" content="Qt, WebKit, Programming">
    </head>
    ...
</html>
Given the above HTML code the metaData() function will return a map with two entries:
Key
Value
"description" "This document is a tutorial about Qt development"
"keywords" "Qt, WebKit, Programming"
This function returns a multi map to support multiple meta tags with the same attribute name.


page

public final QWebPage page()
The web page that contains this frame.


parentFrame

public final QWebFrame parentFrame()
Returns the parent frame of this frame, or 0 if the frame is the web pages main frame.

This is equivalent to qobject_cast<QWebFrame*>(frame->parent()).

See also:
childFrames().


pos

public final QPoint pos()
Returns the position of the frame relative to it's parent frame.


print

public final void print(QPrinter printer)
Prints the frame to the given printer.

See also:
render().


render

public final void render(QPainter painter)
Render the frame into painter.


render

public final void render(QPainter painter,
                         QRegion clip)
Render the frame into painter clipping to clip.

See also:
print().


renderTreeDump

public final java.lang.String renderTreeDump()
Returns a dump of the rendering tree. This is mainly useful for debugging html.


scroll

public final void scroll(int arg__1,
                         int arg__2)
Scrolls the frame dx pixels to the right and dy pixels downward. Both dx and dy may be negative.

See also:
QWebFrame::scrollPosition.


scrollBarMaximum

public final int scrollBarMaximum(Qt.Orientation orientation)
Returns the maximum value for the scrollbar with orientation orientation, or 0 if no scrollbar is found for orientation.

See also:
scrollBarMinimum().


scrollBarMinimum

public final int scrollBarMinimum(Qt.Orientation orientation)
Returns the minimum value for the scrollbar with orientation orientation.

The minimum value is always 0.

See also:
scrollBarMaximum().


scrollBarPolicy

public final Qt.ScrollBarPolicy scrollBarPolicy(Qt.Orientation orientation)
Returns the scrollbar policy for the scrollbar defined by orientation.

See also:
setScrollBarPolicy().


scrollBarValue

public final int scrollBarValue(Qt.Orientation orientation)
Returns the current value for the scrollbar with orientation orientation, or 0 if no scrollbar is found for orientation.

See also:
setScrollBarValue(), scrollBarMinimum(), and scrollBarMaximum().


scrollPosition

public final QPoint scrollPosition()
This property holds the position the frame is currently scrolled to.


setContent

public final void setContent(QByteArray data,
                             java.lang.String mimeType)
Sets the content of this frame to the specified content data. If the mimeType argument is empty it is currently assumed that the content is HTML but in future versions we may introduce auto-detection.

External objects referenced in the content are located relative to baseUrl.

See also:
toHtml().


setContent

public final void setContent(QByteArray data)
Sets the content of this frame to the specified content data. If the mimeType argument is empty it is currently assumed that the content is HTML but in future versions we may introduce auto-detection.

External objects referenced in the content are located relative to baseUrl.

See also:
toHtml().


setContent

public final void setContent(QByteArray data,
                             java.lang.String mimeType,
                             QUrl baseUrl)
Sets the content of this frame to the specified content data. If the mimeType argument is empty it is currently assumed that the content is HTML but in future versions we may introduce auto-detection.

External objects referenced in the content are located relative to baseUrl.

See also:
toHtml().


setHtml

public final void setHtml(java.lang.String html)
Sets the content of this frame to html. baseUrl is optional and used to resolve relative URLs in the document, such as referenced images or stylesheets.

When using this method WebKit assumes that external resources such as JavaScript programs or style sheets are encoded in UTF-8 unless otherwise specified. For example, the encoding of an external script can be specified through the charset attribute of the HTML script tag. It is also possible for the encoding to be specified by web server.

See also:
toHtml().


setHtml

public final void setHtml(java.lang.String html,
                          QUrl baseUrl)
Sets the content of this frame to html. baseUrl is optional and used to resolve relative URLs in the document, such as referenced images or stylesheets.

When using this method WebKit assumes that external resources such as JavaScript programs or style sheets are encoded in UTF-8 unless otherwise specified. For example, the encoding of an external script can be specified through the charset attribute of the HTML script tag. It is also possible for the encoding to be specified by web server.

See also:
toHtml().


setScrollBarPolicy

public final void setScrollBarPolicy(Qt.Orientation orientation,
                                     Qt.ScrollBarPolicy policy)
Sets the scrollbar policy for the scrollbar defined by orientation to policy.

See also:
scrollBarPolicy().


setScrollBarValue

public final void setScrollBarValue(Qt.Orientation orientation,
                                    int value)
Sets the current value for the scrollbar with orientation orientation.

The scrollbar forces the value to be within the legal range: minimum <= value <= maximum.

Changing the value also updates the thumb position.

See also:
scrollBarValue(), scrollBarMinimum(), and scrollBarMaximum().


setScrollPosition

public final void setScrollPosition(QPoint pos)
This property holds the position the frame is currently scrolled to.


setTextSizeMultiplier

public final void setTextSizeMultiplier(double factor)
Sets the value of the multiplier used to scale the text in a Web frame to the factor specified.

See also:
textSizeMultiplier().


setUrl

public final void setUrl(QUrl url)
This property holds the url of the frame currently viewed.

See also:
urlChanged() .


setZoomFactor

public final void setZoomFactor(double factor)
This property holds the zoom factor for the frame.


textSizeMultiplier

public final double textSizeMultiplier()
Returns the value of the multiplier used to scale the text in a Web frame.

See also:
setTextSizeMultiplier().


title

public final java.lang.String title()
This property holds the title of the frame as defined by the HTML <title> element.

See also:
titleChanged() .


toHtml

public final java.lang.String toHtml()
Returns the frame's content, converted to HTML.

See also:
setHtml(), and toPlainText().


toPlainText

public final java.lang.String toPlainText()
Returns the content of this frame converted to plain text.

See also:
toHtml().


url

public final QUrl url()
This property holds the url of the frame currently viewed.

See also:
urlChanged() .


zoomFactor

public final double zoomFactor()
This property holds the zoom factor for the frame.