diff options
Diffstat (limited to 'Source/WebKit/qt/docs/qtwebkit.qdoc')
| -rw-r--r-- | Source/WebKit/qt/docs/qtwebkit.qdoc | 194 |
1 files changed, 194 insertions, 0 deletions
diff --git a/Source/WebKit/qt/docs/qtwebkit.qdoc b/Source/WebKit/qt/docs/qtwebkit.qdoc new file mode 100644 index 000000000..710d19478 --- /dev/null +++ b/Source/WebKit/qt/docs/qtwebkit.qdoc @@ -0,0 +1,194 @@ +/*! + \module QtWebKit + \title WebKit in Qt + \contentspage All Qt Modules + \previouspage QtSvg + \nextpage QtXml + \ingroup modules + \ingroup technology-apis + + \brief The QtWebKit module provides a web browser engine as well as + classes to render and interact with web content. + + QtWebKit provides a Web browser engine that makes it easy to embed content + from the World Wide Web into your Qt application. At the same time Web + content can be enhanced with native controls. + + QtWebKit provides facilities for rendering of HyperText Markup Language + (HTML), Extensible HyperText Markup Language (XHTML) and Scalable Vector + Graphics (SVG) documents, styled using Cascading Style Sheets (CSS) and + scripted with JavaScript. + + A bridge between the JavaScript execution environment and the Qt object + model makes it possible for custom QObjects to be scripted. For detailed + documentation see \l{The QtWebkit Bridge}. + Integration with the Qt networking module enables Web pages to be transparently loaded + from Web servers, the local file system or even the Qt resource system. + + In addition to providing pure rendering features, HTML documents can be + made fully editable to the user through the use of the \c{contenteditable} + attribute on HTML elements. + + QtWebKit has been enhanced to become more attractive on the mobile front as well. + For more information see \l{QtWebKit Goes Mobile}. + + QtWebKit is based on the Open Source WebKit engine. More information about + WebKit itself can be found on the \l{WebKit Open Source Project} Web site. + + \section1 Including In Your Project + + To include the definitions of the module's classes, use the + following directive: + + \snippet webkitsnippets/qtwebkit_build_snippet.qdoc 1 + + To link against the module, add this line to your \l qmake \c + .pro file: + + \snippet webkitsnippets/qtwebkit_build_snippet.qdoc 0 + + \section1 Notes + + \note Building the QtWebKit module with debugging symbols is problematic + on many platforms due to the size of the WebKit engine. We recommend + building the module only in release mode for embedded platforms. + Currently QtWebKit will always be compiled without debugging symbols + when using gcc. Take a look at the last lines of + \c{src/3rdparty/webkit/Source/WebCore/WebCore.pro} if you need to change this. + + \note Web site icons, also known as "FavIcons", are currently not supported + on Windows. We plan to address this in a future release. + + \note WebKit has certain minimum requirements that must be met on + Embedded Linux systems. See the \l{Qt for Embedded Linux Requirements} + document for more information. + + \section1 Architecture + + The easiest way to render content is through the QWebView class. As a + widget it can be embedded into your forms or a graphics view, and it + provides convenience functions for downloading and rendering web sites. + + \snippet webkitsnippets/simple/main.cpp Using QWebView + + QWebView is used to view Web pages. An instance of QWebView has one + QWebPage. QWebPage provides access to the document structure in a page, + describing features such as frames, the navigation history, and the + undo/redo stack for editable content. + + HTML documents can be nested using frames in a frameset. An individual + frame in HTML is represented using the QWebFrame class. This class includes the + bridge to the JavaScript window object and can be painted using QPainter. + Each QWebPage has one QWebFrame object as its main frame, and the main frame + may contain many child frames. + + Individual elements of an HTML document can be accessed via DOM JavaScript + interfaces from within a web page. The equivalent of this API in QtWebKit + is represented by QWebElement. QWebElement objects are obtained using QWebFrame's + \l{QWebFrame::}{findAllElements()} and \l{QWebFrame::}{findFirstElement()} + functions with CSS selector queries. + + Common web browser features, defaults and other settings can be configured + through the QWebSettings class. It is possible to provide defaults for all + QWebPage instances through the default settings. Individual attributes + can be overidden by the page specific settings object. + + \section1 Netscape Plugin Support + + \note Netscape plugin support is only available on desktop platforms. + + Since WebKit supports the Netscape Plugin API, Qt applications can display + Web pages that embed common plugins on platforms for which those plugins + are available. To enable plugin support, the user must have the appropriate + binary files for those plugins installed and the \l{QWebSettings::PluginsEnabled} + attribute must be enabled for the application. + + The following locations are searched for plugins: + + \table + \header \o Linux/Unix (X11) + \row \o + \list + \o \c{.mozilla/plugins} in the user's home directory + \o \c{.netscape/plugins} in the user's home directory + \o System locations, such as + \list + \o \c{/usr/lib/browser/plugins} + \o \c{/usr/local/lib/mozilla/plugins} + \o \c{/usr/lib/firefox/plugins} + \o \c{/usr/lib64/browser-plugins} + \o \c{/usr/lib/browser-plugins} + \o \c{/usr/lib/mozilla/plugins} + \o \c{/usr/local/netscape/plugins} + \o \c{/opt/mozilla/plugins} + \o \c{/opt/mozilla/lib/plugins} + \o \c{/opt/netscape/plugins} + \o \c{/opt/netscape/communicator/plugins} + \o \c{/usr/lib/netscape/plugins} + \o \c{/usr/lib/netscape/plugins-libc5} + \o \c{/usr/lib/netscape/plugins-libc6} + \o \c{/usr/lib64/netscape/plugins} + \o \c{/usr/lib64/mozilla/plugins} + \endlist + \o Locations specified by environment variables: + \list + \o \c{$MOZILLA_HOME/plugins} + \o \c{$MOZ_PLUGIN_PATH} + \o \c{$QTWEBKIT_PLUGIN_PATH} + \endlist + \endlist + \endtable + + \table + \header \o Windows + \row \o + \list + \o The user's \c{Application Data\Mozilla\plugins} directory + \o Standard system locations of plugins for Quicktime, Flash, etc. + \endlist + \endtable + + \table + \header \o Mac OS X + \row \o + \list + \o \c{Library/Internet Plug-Ins} in the user's home directory + \o The system \c{/Library/Internet Plug-Ins} directory + \endlist + \endtable + + + \section1 License Information + + This is a snapshot of the Qt port of WebKit. The exact version information + can be found in the \c{src/3rdparty/webkit/VERSION} file supplied with Qt. + + Qt Commercial Edition licensees that wish to distribute applications that + use the QtWebKit module need to be aware of their obligations under the + GNU Library General Public License (LGPL). + + Developers using the Open Source Edition can choose to redistribute + the module under the appropriate version of the GNU LGPL. + + \legalese + WebKit is licensed under the GNU Library General Public License. + Individual contributor names and copyright dates can be found + inline in the code. + + 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. + \endlegalese +*/ + |
