File: qmetatype.html

package info (click to toggle)
python-qt4 4.7.3-1%2Bsqueeze1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 28,504 kB
  • ctags: 4,680
  • sloc: python: 28,738; cpp: 8,897; sh: 245; xml: 243; makefile: 150
file content (102 lines) | stat: -rw-r--r-- 14,911 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
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html><head><title>QMetaType Class Reference</title><style>h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
td.postheader { font-family: sans-serif }
tr.address { font-family: sans-serif }
body { background: #ffffff; color: black; }
</style></head><body><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr /><td align="left" valign="top" width="32"><img align="left" border="0" height="32" src="images/rb-logo.png" width="32" /></td><td width="1">&#160;&#160;</td><td class="postheader" valign="center"><a href="../pyqt4ref.html"><font color="#004faf">Home</font></a>&#160;&#183; <a href="classes.html"><font color="#004faf">All Classes</font></a>&#160;&#183; <a href="modules.html"><font color="#004faf">Modules</font></a></td></table><h1 align="center">QMetaType Class Reference<br /><sup><sup>[<a href="qtcore.html">QtCore</a> module]</sup></sup></h1><p>The QMetaType class manages named types in the meta-object system. <a href="#details">More...</a></p>
<h3>Types</h3><ul><li><div class="fn" />enum <b><a href="qmetatype.html#Type-enum">Type</a></b> { Void, Bool, Int, UInt, ..., User }</li></ul><h3>Methods</h3><ul><li><div class="fn" /><b><a href="qmetatype.html#QMetaType">__init__</a></b> (<i>self</i>)</li><li><div class="fn" /><b><a href="qmetatype.html#QMetaType-2">__init__</a></b> (<i>self</i>, QMetaType)</li></ul><h3>Static Methods</h3><ul><li><div class="fn" />bool <b><a href="qmetatype.html#isRegistered">isRegistered</a></b> (int)</li><li><div class="fn" />int <b><a href="qmetatype.html#type">type</a></b> (str)</li><li><div class="fn" />str <b><a href="qmetatype.html#typeName">typeName</a></b> (int)</li></ul><a name="details" /><hr /><h2>Detailed Description</h2><p>The QMetaType class manages named types in the meta-object system.</p>
<p>The class is used as a helper to marshall types in <a href="qvariant.html">QVariant</a> and in queued signals and slots connections. It associates a type name to a type so that it can be created and destructed dynamically at run-time. Declare new types with <a href="qmetatype.html#Q_DECLARE_METATYPE">Q_DECLARE_METATYPE</a>() to make them available to <a href="qvariant.html">QVariant</a> and other template-based functions. Call <a href="qmetatype.html#qRegisterMetaType">qRegisterMetaType</a>() to make type available to non-template based functions, such as the queued signal and slot connections.</p>
<p>Any class or struct that has a public default constructor, a public copy constructor, and a public destructor can be registered.</p>
<p>The following code allocates and destructs an instance of <tt>MyClass</tt>:</p>
<pre> int id = QMetaType.type("MyClass");
 if (id == 0) {
     void *myClassPtr = QMetaType.construct(id);
     ...
     QMetaType.destroy(id, myClassPtr);
     myClassPtr = 0;
 }</pre>
<p>If we want the stream operators <tt>operator&lt;&lt;()</tt> and <tt>operator&gt;&gt;()</tt> to work on <a href="qvariant.html">QVariant</a> objects that store custom types, the custom type must provide <tt>operator&lt;&lt;()</tt> and <tt>operator&gt;&gt;()</tt> operators.</p>
<p>See also <a href="qmetatype.html#Q_DECLARE_METATYPE">Q_DECLARE_METATYPE</a>(), <a href="qvariant.html#setValue">QVariant.setValue</a>(), <a href="qvariant.html#value">QVariant.value</a>(), and <a href="qvariant.html#fromValue">QVariant.fromValue</a>().</p>
<hr /><h2>Type Documentation</h2><h3 class="fn"><a name="Type-enum" />QMetaType.Type</h3><p>These are the built-in types supported by <a href="qmetatype.html">QMetaType</a>:</p>
<p><table border="1" cellpadding="2" cellspacing="1" class="valuelist" width="100%">
<tr><th width="25%">Constant</th><th width="15%">Value</th><th width="60%">Description</th></tr>
<tr><td valign="top"><tt>QMetaType.Void</tt></td><td align="center" valign="top"><tt>0</tt></td><td valign="top"><tt>void</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.Bool</tt></td><td align="center" valign="top"><tt>1</tt></td><td valign="top"><tt>bool</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.Int</tt></td><td align="center" valign="top"><tt>2</tt></td><td valign="top"><tt>int</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.UInt</tt></td><td align="center" valign="top"><tt>3</tt></td><td valign="top"><tt>unsigned int</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.Double</tt></td><td align="center" valign="top"><tt>6</tt></td><td valign="top"><tt>double</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.QChar</tt></td><td align="center" valign="top"><tt>7</tt></td><td valign="top">QChar</td></tr>
<tr><td valign="top"><tt>QMetaType.QString</tt></td><td align="center" valign="top"><tt>10</tt></td><td valign="top">QString</td></tr>
<tr><td valign="top"><tt>QMetaType.QByteArray</tt></td><td align="center" valign="top"><tt>12</tt></td><td valign="top">QByteArray</td></tr>
<tr><td valign="top"><tt>QMetaType.VoidStar</tt></td><td align="center" valign="top"><tt>128</tt></td><td valign="top"><tt>void *</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.Long</tt></td><td align="center" valign="top"><tt>129</tt></td><td valign="top"><tt>long</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.LongLong</tt></td><td align="center" valign="top"><tt>4</tt></td><td valign="top">LongLong</td></tr>
<tr><td valign="top"><tt>QMetaType.Short</tt></td><td align="center" valign="top"><tt>130</tt></td><td valign="top"><tt>short</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.Char</tt></td><td align="center" valign="top"><tt>131</tt></td><td valign="top"><tt>char</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.ULong</tt></td><td align="center" valign="top"><tt>132</tt></td><td valign="top"><tt>unsigned long</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.ULongLong</tt></td><td align="center" valign="top"><tt>5</tt></td><td valign="top">ULongLong</td></tr>
<tr><td valign="top"><tt>QMetaType.UShort</tt></td><td align="center" valign="top"><tt>133</tt></td><td valign="top"><tt>unsigned short</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.UChar</tt></td><td align="center" valign="top"><tt>134</tt></td><td valign="top"><tt>unsigned char</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.Float</tt></td><td align="center" valign="top"><tt>135</tt></td><td valign="top"><tt>float</tt></td></tr>
<tr><td valign="top"><tt>QMetaType.QObjectStar</tt></td><td align="center" valign="top"><tt>136</tt></td><td valign="top"><a href="qobject.html">QObject</a> *</td></tr>
<tr><td valign="top"><tt>QMetaType.QWidgetStar</tt></td><td align="center" valign="top"><tt>137</tt></td><td valign="top"><a href="qwidget.html">QWidget</a> *</td></tr>
<tr><td valign="top"><tt>QMetaType.QColorGroup</tt></td><td align="center" valign="top"><tt>63</tt></td><td valign="top">QColorGroup</td></tr>
<tr><td valign="top"><tt>QMetaType.QCursor</tt></td><td align="center" valign="top"><tt>74</tt></td><td valign="top">QCursor</td></tr>
<tr><td valign="top"><tt>QMetaType.QDate</tt></td><td align="center" valign="top"><tt>14</tt></td><td valign="top">QDate</td></tr>
<tr><td valign="top"><tt>QMetaType.QSize</tt></td><td align="center" valign="top"><tt>21</tt></td><td valign="top">QSize</td></tr>
<tr><td valign="top"><tt>QMetaType.QTime</tt></td><td align="center" valign="top"><tt>15</tt></td><td valign="top">QTime</td></tr>
<tr><td valign="top"><tt>QMetaType.QVariantList</tt></td><td align="center" valign="top"><tt>9</tt></td><td valign="top">QVariantList</td></tr>
<tr><td valign="top"><tt>QMetaType.QPolygon</tt></td><td align="center" valign="top"><tt>71</tt></td><td valign="top">QPolygon</td></tr>
<tr><td valign="top"><tt>QMetaType.QColor</tt></td><td align="center" valign="top"><tt>67</tt></td><td valign="top">QColor</td></tr>
<tr><td valign="top"><tt>QMetaType.QSizeF</tt></td><td align="center" valign="top"><tt>22</tt></td><td valign="top">QSizeF</td></tr>
<tr><td valign="top"><tt>QMetaType.QRectF</tt></td><td align="center" valign="top"><tt>20</tt></td><td valign="top">QRectF</td></tr>
<tr><td valign="top"><tt>QMetaType.QLine</tt></td><td align="center" valign="top"><tt>23</tt></td><td valign="top">QLine</td></tr>
<tr><td valign="top"><tt>QMetaType.QTextLength</tt></td><td align="center" valign="top"><tt>78</tt></td><td valign="top">QTextLength</td></tr>
<tr><td valign="top"><tt>QMetaType.QStringList</tt></td><td align="center" valign="top"><tt>11</tt></td><td valign="top">QStringList</td></tr>
<tr><td valign="top"><tt>QMetaType.QVariantMap</tt></td><td align="center" valign="top"><tt>8</tt></td><td valign="top">QVariantMap</td></tr>
<tr><td valign="top"><tt>QMetaType.QVariantHash</tt></td><td align="center" valign="top"><tt>28</tt></td><td valign="top">QVariantHash</td></tr>
<tr><td valign="top"><tt>QMetaType.QIcon</tt></td><td align="center" valign="top"><tt>69</tt></td><td valign="top">QIcon</td></tr>
<tr><td valign="top"><tt>QMetaType.QPen</tt></td><td align="center" valign="top"><tt>77</tt></td><td valign="top">QPen</td></tr>
<tr><td valign="top"><tt>QMetaType.QLineF</tt></td><td align="center" valign="top"><tt>24</tt></td><td valign="top">QLineF</td></tr>
<tr><td valign="top"><tt>QMetaType.QTextFormat</tt></td><td align="center" valign="top"><tt>79</tt></td><td valign="top">QTextFormat</td></tr>
<tr><td valign="top"><tt>QMetaType.QRect</tt></td><td align="center" valign="top"><tt>19</tt></td><td valign="top">QRect</td></tr>
<tr><td valign="top"><tt>QMetaType.QPoint</tt></td><td align="center" valign="top"><tt>25</tt></td><td valign="top">QPoint</td></tr>
<tr><td valign="top"><tt>QMetaType.QUrl</tt></td><td align="center" valign="top"><tt>17</tt></td><td valign="top">QUrl</td></tr>
<tr><td valign="top"><tt>QMetaType.QRegExp</tt></td><td align="center" valign="top"><tt>27</tt></td><td valign="top">QRegExp</td></tr>
<tr><td valign="top"><tt>QMetaType.QDateTime</tt></td><td align="center" valign="top"><tt>16</tt></td><td valign="top">QDateTime</td></tr>
<tr><td valign="top"><tt>QMetaType.QPointF</tt></td><td align="center" valign="top"><tt>26</tt></td><td valign="top">QPointF</td></tr>
<tr><td valign="top"><tt>QMetaType.QPalette</tt></td><td align="center" valign="top"><tt>68</tt></td><td valign="top">QPalette</td></tr>
<tr><td valign="top"><tt>QMetaType.QFont</tt></td><td align="center" valign="top"><tt>64</tt></td><td valign="top">QFont</td></tr>
<tr><td valign="top"><tt>QMetaType.QBrush</tt></td><td align="center" valign="top"><tt>66</tt></td><td valign="top">QBrush</td></tr>
<tr><td valign="top"><tt>QMetaType.QRegion</tt></td><td align="center" valign="top"><tt>72</tt></td><td valign="top">QRegion</td></tr>
<tr><td valign="top"><tt>QMetaType.QBitArray</tt></td><td align="center" valign="top"><tt>13</tt></td><td valign="top">QBitArray</td></tr>
<tr><td valign="top"><tt>QMetaType.QImage</tt></td><td align="center" valign="top"><tt>70</tt></td><td valign="top">QImage</td></tr>
<tr><td valign="top"><tt>QMetaType.QKeySequence</tt></td><td align="center" valign="top"><tt>76</tt></td><td valign="top">QKeySequence</td></tr>
<tr><td valign="top"><tt>QMetaType.QSizePolicy</tt></td><td align="center" valign="top"><tt>75</tt></td><td valign="top">QSizePolicy</td></tr>
<tr><td valign="top"><tt>QMetaType.QPixmap</tt></td><td align="center" valign="top"><tt>65</tt></td><td valign="top">QPixmap</td></tr>
<tr><td valign="top"><tt>QMetaType.QLocale</tt></td><td align="center" valign="top"><tt>18</tt></td><td valign="top">QLocale</td></tr>
<tr><td valign="top"><tt>QMetaType.QBitmap</tt></td><td align="center" valign="top"><tt>73</tt></td><td valign="top">QBitmap</td></tr>
<tr><td valign="top"><tt>QMetaType.QMatrix</tt></td><td align="center" valign="top"><tt>80</tt></td><td valign="top">QMatrix</td></tr>
<tr><td valign="top"><tt>QMetaType.QTransform</tt></td><td align="center" valign="top"><tt>81</tt></td><td valign="top">QTransform</td></tr>
<tr><td valign="top"><tt>QMetaType.QMatrix4x4</tt></td><td align="center" valign="top"><tt>82</tt></td><td valign="top">QMatrix4x4</td></tr>
<tr><td valign="top"><tt>QMetaType.QVector2D</tt></td><td align="center" valign="top"><tt>83</tt></td><td valign="top">QVector2D</td></tr>
<tr><td valign="top"><tt>QMetaType.QVector3D</tt></td><td align="center" valign="top"><tt>84</tt></td><td valign="top">QVector3D</td></tr>
<tr><td valign="top"><tt>QMetaType.QVector4D</tt></td><td align="center" valign="top"><tt>85</tt></td><td valign="top">QVector4D</td></tr>
<tr><td valign="top"><tt>QMetaType.QQuaternion</tt></td><td align="center" valign="top"><tt>86</tt></td><td valign="top">QQuaternion</td></tr>
<tr><td valign="top"><tt>QMetaType.User</tt></td><td align="center" valign="top"><tt>256</tt></td><td valign="top">Base value for user types</td></tr>
</table></p>
<p>Additional types can be registered using <a href="qmetatype.html#Q_DECLARE_METATYPE">Q_DECLARE_METATYPE</a>().</p>
<p>See also <a href="qmetatype.html#type">type</a>() and <a href="qmetatype.html#typeName">typeName</a>().</p>
<hr /><h2>Method Documentation</h2><h3 class="fn"><a name="QMetaType" />QMetaType.__init__ (<i>self</i>)</h3><h3 class="fn"><a name="QMetaType-2" />QMetaType.__init__ (<i>self</i>, <a href="qmetatype.html">QMetaType</a>)</h3><h3 class="fn"><a name="isRegistered" />bool QMetaType.isRegistered (int)</h3><p>Returns true if the datatype with ID <i>type</i> is registered; otherwise returns false.</p>
<p>See also <a href="qmetatype.html#type">type</a>(), <a href="qmetatype.html#typeName">typeName</a>(), and <a href="qmetatype.html#Type-enum">Type</a>.</p>
<a name="//apple_ref/cpp/clm/QMetaType/load" />
<h3 class="fn"><a name="type" />int QMetaType.type (str)</h3><p>Returns a handle to the type called <i>typeName</i>, or 0 if there is no such type.</p>
<p>See also <a href="qmetatype.html#isRegistered">isRegistered</a>(), <a href="qmetatype.html#typeName">typeName</a>(), and <a href="qmetatype.html#Type-enum">Type</a>.</p>
<a name="//apple_ref/cpp/clm/QMetaType/typeName" />
<h3 class="fn"><a name="typeName" />str QMetaType.typeName (int)</h3><p>Returns the type name associated with the given <i>type</i>, or 0 if no matching type was found. The returned pointer must not be deleted.</p>
<p>See also <a href="qmetatype.html#type">type</a>(), <a href="qmetatype.html#isRegistered">isRegistered</a>(), and <a href="qmetatype.html#Type-enum">Type</a>.</p>
<a name="//apple_ref/cpp/clm/QMetaType/unregisterType" />
<address><hr /><div align="center"><table border="0" cellspacing="0" width="100%"><tr class="address"><td align="left" width="25%">PyQt&#160;4.7.3 for X11</td><td align="center" width="50%">Copyright &#169; <a href="http://www.riverbankcomputing.com">Riverbank&#160;Computing&#160;Ltd</a> and <a href="http://www.qtsoftware.com">Nokia</a> 2010</td><td align="right" width="25%">Qt&#160;4.6.2</td></tr></table></div></address></body></html>