QWebPluginFactory Class Reference

[ QtWebKit module]

The QWebPluginFactory class is used to embed custom data types in web pages. 更多...

继承 QObject .

类型

方法


详细描述

The QWebPluginFactory class is used to embed custom data types in web pages.

The HTML <object> tag is used to embed arbitrary content into a web page, for example:

 <object type="application/x-pdf" data="http://qt.nokia.com/document.pdf" width="500" height="400"></object>
			

QtWebkit will natively handle the most basic data types like text/html and image/jpeg , but for any advanced or custom data types you will need to provide a handler yourself.

QWebPluginFactory is a factory for creating plugins for QWebPage , where each plugin provides support for one or more data types. A plugin factory can be installed on a QWebPage 使用 QWebPage.setPluginFactory ().

注意: The plugin factory is only used if plugins are enabled through QWebSettings .

You provide a QWebPluginFactory by implementing the plugins () 和 create () methods. For plugins () it is necessary to describe the plugins the factory can create, including a description and the supported MIME types. The MIME types each plugin can handle should match the ones specified in in the HTML <object> tag of your content.

create () method is called if the requested MIME type is supported. The implementation has to return a new instance of the plugin requested for the given MIME type and the specified URL.

The plugins themselves are subclasses of QObject , but currently only plugins based on either QWidget or QGraphicsWidget are supported.


类型文档编制

QWebPluginFactory.Extension


方法文档编制

QWebPluginFactory.__init__ ( self , QObject   parent  = None)

parent argument, if not None, causes self to be owned by Qt instead of PyQt.

构造 QWebPluginFactory 采用父级 parent .

QObject QWebPluginFactory.create ( self , QString  mimeType , QUrl   url , QStringList  argumentNames , QStringList  argumentValues )

This method is abstract and should be reimplemented in any sub-class.

Implemented in subclasses to create a new plugin that can display content of the MIME type given by mimeType . The URL of the content is provided in url . The returned object should be a QWidget .

The HTML object element can provide parameters through the <param> tag. The name and the value attributes of these tags are specified by the argumentNames and argumentValues string lists.

例如:

 <object type="application/x-pdf" data="http://qt.nokia.com/document.pdf" width="500" height="400">
     <param name="showTableOfContents" value="true" />
     <param name="hideThumbnails" value="false" />
 </object>
			

The above object element will result in a call to create() with the following arguments:

Parameter
mimeType "application/x-pdf"
url "http://qt.nokia.com/document.pdf"
argumentNames "showTableOfContents" "hideThumbnails"
argumentVaues "true" "false"

注意: Ownership of the returned object will be transferred to the caller.

bool QWebPluginFactory.extension ( self , Extension   extension , ExtensionOption   option  = None, ExtensionReturn   output  = None)

list-of-QWebPluginFactory.Plugin QWebPluginFactory.plugins ( self )

This method is abstract and should be reimplemented in any sub-class.

This function is reimplemented in subclasses to return a list of supported plugins the factory can create.

注意: Currently, this function is only called when JavaScript programs access the global plugins or mimetypes 对象。

QWebPluginFactory.refreshPlugins ( self )

This function is called to refresh the list of supported plugins. It may be called after a new plugin has been installed in the system.

bool QWebPluginFactory.supportsExtension ( self , Extension   extension )