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 132 133 134 135 136 137 138 139
|
<?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" />
<!-- qstyleplugin.cpp -->
<title>Qt 4.8: QStylePlugin 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="qtgui.html">QtGui</a></li>
<li>QStylePlugin</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">QStylePlugin Class Reference</h1>
<!-- $$$QStylePlugin-brief -->
<p>The QStylePlugin class provides an abstract base for custom <a href="qstyle.html">QStyle</a> plugins. <a href="#details">More...</a></p>
<!-- @@@QStylePlugin -->
<pre class="cpp"> <span class="preprocessor">#include <QStylePlugin></span></pre><p><b>Inherits: </b><a href="qobject.html">QObject</a>.</p>
<ul>
<li><a href="qstyleplugin-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="qstyleplugin.html#QStylePlugin">QStylePlugin</a></b> ( QObject * <i>parent</i> = 0 )</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qstyleplugin.html#dtor.QStylePlugin">~QStylePlugin</a></b> ()</td></tr>
</table>
<a name="reimplemented-public-functions"></a>
<h2>Reimplemented Public Functions</h2>
<table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> virtual QStyle * </td><td class="memItemRight bottomAlign"><b><a href="qstyleplugin.html#create">create</a></b> ( const QString & <i>key</i> ) = 0</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual QStringList </td><td class="memItemRight bottomAlign"><b><a href="qstyleplugin.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>
<!-- $$$QStylePlugin-description -->
<div class="descr">
<h2>Detailed Description</h2>
<p>The QStylePlugin class provides an abstract base for custom <a href="qstyle.html">QStyle</a> plugins.</p>
<p>QStylePlugin is a simple plugin interface that makes it easy to create custom styles that can be loaded dynamically into applications using the <a href="qstylefactory.html">QStyleFactory</a> class.</p>
<p>Writing a style plugin is achieved by subclassing this base class, reimplementing the pure virtual <a href="qstyleplugin.html#keys">keys</a>() and <a href="qstyleplugin.html#create">create</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="qstylefactory.html">QStyleFactory</a> and <a href="qstyle.html">QStyle</a>.</p>
<!-- @@@QStylePlugin -->
<div class="func">
<h2>Member Function Documentation</h2>
<!-- $$$QStylePlugin[overload1]$$$QStylePluginQObject* -->
<h3 class="fn"><a name="QStylePlugin"></a>QStylePlugin::<span class="name">QStylePlugin</span> ( <span class="type"><a href="qobject.html">QObject</a></span> * <i>parent</i> = 0 )</h3>
<p>Constructs a style 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>
<!-- @@@QStylePlugin -->
<!-- $$$~QStylePlugin[overload1]$$$~QStylePlugin -->
<h3 class="fn"><a name="dtor.QStylePlugin"></a>QStylePlugin::<span class="name">~QStylePlugin</span> ()</h3>
<p>Destroys the style 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>
<!-- @@@~QStylePlugin -->
<!-- $$$create[overload1]$$$createconstQString& -->
<h3 class="fn"><a name="create"></a><span class="type"><a href="qstyle.html">QStyle</a></span> * QStylePlugin::<span class="name">create</span> ( const <span class="type"><a href="qstring.html">QString</a></span> & <i>key</i> )<tt> [pure virtual]</tt></h3>
<p>Creates and returns a <a href="qstyle.html">QStyle</a> object for the given style <i>key</i>. If a plugin cannot create a style, it should return 0 instead.</p>
<p>The style key is usually the class name of the required style. Note that the keys are case insensitive. For example:</p>
<pre class="cpp"> <span class="type"><a href="qstringlist.html">QStringList</a></span> MyStylePlugin<span class="operator">::</span><a href="qstyleplugin.html#keys">keys</a>() <span class="keyword">const</span>
{
<span class="keyword">return</span> <span class="type"><a href="qstringlist.html">QStringList</a></span>() <span class="operator"><</span><span class="operator"><</span> <span class="string">"Rocket"</span> <span class="operator"><</span><span class="operator"><</span> <span class="string">"StarBuster"</span>;
}
<span class="type"><a href="qstyle.html">QStyle</a></span> <span class="operator">*</span>MyStylePlugin<span class="operator">::</span>create(<span class="keyword">const</span> <span class="type"><a href="qstring.html">QString</a></span> <span class="operator">&</span>key)
{
<span class="type"><a href="qstring.html">QString</a></span> lcKey <span class="operator">=</span> key;
<span class="keyword">if</span> (lcKey <span class="operator">=</span><span class="operator">=</span> <span class="string">"rocket"</span>) {
<span class="keyword">return</span> <span class="keyword">new</span> RocketStyle;
} <span class="keyword">else</span> <span class="keyword">if</span> (lcKey <span class="operator">=</span><span class="operator">=</span> <span class="string">"starbuster"</span>) {
<span class="keyword">return</span> <span class="keyword">new</span> StarBusterStyle;
}
<span class="keyword">return</span> <span class="number">0</span>;
}</pre>
<p><b>See also </b><a href="qstyleplugin.html#keys">keys</a>().</p>
<!-- @@@create -->
<!-- $$$keys[overload1]$$$keys -->
<h3 class="fn"><a name="keys"></a><span class="type"><a href="qstringlist.html">QStringList</a></span> QStylePlugin::<span class="name">keys</span> () const<tt> [pure virtual]</tt></h3>
<p>Returns the list of style keys this plugin supports.</p>
<p>These keys are usually the class names of the custom styles that are implemented in the plugin.</p>
<p><b>See also </b><a href="qstyleplugin.html#create">create</a>().</p>
<!-- @@@keys -->
</div>
<div class="ft">
<span></span>
</div>
</div>
<div class="footer">
<p>
<acronym title="Copyright">©</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>
|