File: qscriptextensionplugin.html

package info (click to toggle)
qt4-x11 4%3A4.8.2%2Bdfsg-11
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 701,696 kB
  • sloc: cpp: 2,686,179; ansic: 375,485; python: 25,859; sh: 19,349; xml: 17,091; perl: 14,765; yacc: 5,383; asm: 5,038; makefile: 1,259; lex: 555; ruby: 526; objc: 347; cs: 112; pascal: 112; php: 54; sed: 34
file content (131 lines) | stat: -rw-r--r-- 9,557 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- qscriptextensionplugin.cpp -->
  <title>Qt 4.8: QScriptExtensionPlugin Class Reference</title>
  <link rel="stylesheet" type="text/css" href="style/offline.css" />
</head>
<body>
<div class="header" id="qtdocheader">
  <div class="content"> 
    <a href="index.html" class="qtref"><span>Qt Reference Documentation</span></a>
  </div>
  <div class="breadcrumb toolblock">
    <ul>
      <li class="first"><a href="index.html">Home</a></li>
      <!--  Breadcrumbs go here -->
<li><a href="modules.html">Modules</a></li>
<li><a href="qtscript.html">QtScript</a></li>
<li>QScriptExtensionPlugin</li>
    </ul>
  </div>
</div>
<div class="content mainContent">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#public-functions">Public Functions</a></li>
<li class="level1"><a href="#details">Detailed Description</a></li>
</ul>
</div>
<h1 class="title">QScriptExtensionPlugin Class Reference</h1>
<!-- $$$QScriptExtensionPlugin-brief -->
<p>The QScriptExtensionPlugin class provides an abstract base for custom QScript extension plugins. <a href="#details">More...</a></p>
<!-- @@@QScriptExtensionPlugin -->
<pre class="cpp"> <span class="preprocessor">#include &lt;QScriptExtensionPlugin&gt;</span></pre><p><b>Inherits: </b><a href="qobject.html">QObject</a>.</p>
<p>This class was introduced in Qt 4.3.</p>
<ul>
<li><a href="qscriptextensionplugin-members.html">List of all members, including inherited members</a></li>
</ul>
<a name="public-functions"></a>
<h2>Public Functions</h2>
<table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qscriptextensionplugin.html#QScriptExtensionPlugin">QScriptExtensionPlugin</a></b> ( QObject * <i>parent</i> = 0 )</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qscriptextensionplugin.html#dtor.QScriptExtensionPlugin">~QScriptExtensionPlugin</a></b> ()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> QScriptValue </td><td class="memItemRight bottomAlign"><b><a href="qscriptextensionplugin.html#setupPackage">setupPackage</a></b> ( const QString &amp; <i>key</i>, QScriptEngine * <i>engine</i> ) const</td></tr>
</table>
<a name="reimplemented-public-functions"></a>
<h2>Reimplemented Public Functions</h2>
<table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> virtual void </td><td class="memItemRight bottomAlign"><b><a href="qscriptextensionplugin.html#initialize">initialize</a></b> ( const QString &amp; <i>key</i>, QScriptEngine * <i>engine</i> ) = 0</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual QStringList </td><td class="memItemRight bottomAlign"><b><a href="qscriptextensionplugin.html#keys">keys</a></b> () const = 0</td></tr>
</table>
<ul>
<li class="fn">29 public functions inherited from <a href="qobject.html#public-functions">QObject</a></li>
</ul>
<h3>Additional Inherited Members</h3>
<ul>
<li class="fn">1 property inherited from <a href="qobject.html#properties">QObject</a></li>
<li class="fn">1 public slot inherited from <a href="qobject.html#public-slots">QObject</a></li>
<li class="fn">1 signal inherited from <a href="qobject.html#signals">QObject</a></li>
<li class="fn">7 static public members inherited from <a href="qobject.html#static-public-members">QObject</a></li>
<li class="fn">8 protected functions inherited from <a href="qobject.html#protected-functions">QObject</a></li>
</ul>
<a name="details"></a>
<!-- $$$QScriptExtensionPlugin-description -->
<div class="descr">
<h2>Detailed Description</h2>
<p>The QScriptExtensionPlugin class provides an abstract base for custom QScript extension plugins.</p>
<p>QScriptExtensionPlugin is a plugin interface that makes it possible to offer extensions that can be loaded dynamically into applications using the <a href="qscriptengine.html">QScriptEngine</a> class.</p>
<p>Writing a script extension plugin is achieved by subclassing this base class, reimplementing the pure virtual <a href="qscriptextensionplugin.html#keys">keys</a>() and <a href="qscriptextensionplugin.html#initialize">initialize</a>() functions, and exporting the class using the <a href="qtplugin.html#Q_EXPORT_PLUGIN2">Q_EXPORT_PLUGIN2</a>() macro. See <a href="plugins-howto.html">How to Create Qt Plugins</a> for details.</p>
</div>
<p><b>See also </b><a href="qscriptengine.html#importExtension">QScriptEngine::importExtension</a>() and <a href="qtscriptextensions.html">Creating QtScript Extensions</a>.</p>
<!-- @@@QScriptExtensionPlugin -->
<div class="func">
<h2>Member Function Documentation</h2>
<!-- $$$QScriptExtensionPlugin[overload1]$$$QScriptExtensionPluginQObject* -->
<h3 class="fn"><a name="QScriptExtensionPlugin"></a>QScriptExtensionPlugin::<span class="name">QScriptExtensionPlugin</span> ( <span class="type"><a href="qobject.html">QObject</a></span> * <i>parent</i> = 0 )</h3>
<p>Constructs a script extension plugin with the given <i>parent</i>.</p>
<p>Note that this constructor is invoked automatically by the <a href="qtplugin.html#Q_EXPORT_PLUGIN2">Q_EXPORT_PLUGIN2</a>() macro, so there is no need for calling it explicitly.</p>
<!-- @@@QScriptExtensionPlugin -->
<!-- $$$~QScriptExtensionPlugin[overload1]$$$~QScriptExtensionPlugin -->
<h3 class="fn"><a name="dtor.QScriptExtensionPlugin"></a>QScriptExtensionPlugin::<span class="name">~QScriptExtensionPlugin</span> ()</h3>
<p>Destroys the script extension plugin.</p>
<p>Note that Qt destroys a plugin automatically when it is no longer used, so there is no need for calling the destructor explicitly.</p>
<!-- @@@~QScriptExtensionPlugin -->
<!-- $$$initialize[overload1]$$$initializeconstQString&QScriptEngine* -->
<h3 class="fn"><a name="initialize"></a><span class="type">void</span> QScriptExtensionPlugin::<span class="name">initialize</span> ( const <span class="type"><a href="qstring.html">QString</a></span> &amp; <i>key</i>, <span class="type"><a href="qscriptengine.html">QScriptEngine</a></span> * <i>engine</i> )<tt> [pure virtual]</tt></h3>
<p>Initializes the extension specified by <i>key</i> in the given <i>engine</i>. The key must come from the set of <a href="qscriptextensionplugin.html#keys">keys</a>().</p>
<p><b>See also </b><a href="qscriptextensionplugin.html#keys">keys</a>().</p>
<!-- @@@initialize -->
<!-- $$$keys[overload1]$$$keys -->
<h3 class="fn"><a name="keys"></a><span class="type"><a href="qstringlist.html">QStringList</a></span> QScriptExtensionPlugin::<span class="name">keys</span> () const<tt> [pure virtual]</tt></h3>
<p>Returns the list of keys this plugin supports.</p>
<p>These keys are usually the names of the &quot;modules&quot; or &quot;packages&quot; that are implemented in the plugin (e.g&#x2e; <tt>com.mycompany.MyProduct</tt>).</p>
<p><b>See also </b><a href="qscriptextensionplugin.html#initialize">initialize</a>().</p>
<!-- @@@keys -->
<!-- $$$setupPackage[overload1]$$$setupPackageconstQString&QScriptEngine* -->
<h3 class="fn"><a name="setupPackage"></a><span class="type"><a href="qscriptvalue.html">QScriptValue</a></span> QScriptExtensionPlugin::<span class="name">setupPackage</span> ( const <span class="type"><a href="qstring.html">QString</a></span> &amp; <i>key</i>, <span class="type"><a href="qscriptengine.html">QScriptEngine</a></span> * <i>engine</i> ) const</h3>
<p>This function is provided for convenience when reimplementing <a href="qscriptextensionplugin.html#initialize">initialize</a>(). It splits the given <i>key</i> on <tt>'.'</tt> (dot), and ensures that there's a corresponding path of objects in the environment of the given <i>engine</i>, creating new objects to complete the path if necessary. E.g&#x2e; if the key is &quot;com.trolltech&quot;, after the call to setupPackage() the script expression <tt>com.trolltech</tt> will evaluate to an object. More specifically, the engine's Global Object will have a property called &quot;com&quot;, which in turn has a property called &quot;trolltech&quot;.</p>
<p>Use this function to avoid global namespace pollution when installing your extensions in the engine.</p>
<p><b>See also </b><a href="qscriptextensionplugin.html#initialize">initialize</a>().</p>
<!-- @@@setupPackage -->
</div>
  <div class="ft">
    <span></span>
  </div>
</div> 
<div class="footer">
    <p>
      <acronym title="Copyright">&copy;</acronym> 2012 Nokia Corporation and/or its
      subsidiaries. Documentation contributions included herein are the copyrights of
      their respective owners.</p>
    <br />
    <p>
      The documentation provided herein is licensed under the terms of the
      <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation
      License version 1.3</a> as published by the Free Software Foundation.</p>
    <p>
      Documentation sources may be obtained from <a href="http://www.qt-project.org">
      www.qt-project.org</a>.</p>
    <br />
    <p>
      Nokia, Qt and their respective logos are trademarks of Nokia Corporation 
      in Finland and/or other countries worldwide. All other trademarks are property
      of their respective owners. <a title="Privacy Policy"
      href="http://en.gitorious.org/privacy_policy/">Privacy Policy</a></p>
</div>
</body>
</html>