Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > e63754dc5af9f9ec95223fcea9485104 > files > 1437

python3-PyQt4-devel-4.8.3-2.fc14.x86_64.rpm

<?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>QDeclarativePropertyMap 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">QDeclarativePropertyMap Class Reference<br /><sup><sup>[<a href="qtdeclarative.html">QtDeclarative</a> module]</sup></sup></h1><p>The QDeclarativePropertyMap class allows you to set key-value
pairs that can be used in QML bindings. <a href="#details">More...</a></p>

<p>Inherits <a href="qobject.html">QObject</a>.</p><h3>Methods</h3><ul><li><div class="fn" /><b><a href="qdeclarativepropertymap.html#QDeclarativePropertyMap">__init__</a></b> (<i>self</i>, QObject&#160;<i>parent</i>&#160;=&#160;None)</li><li><div class="fn" /><b><a href="qdeclarativepropertymap.html#clear">clear</a></b> (<i>self</i>, QString&#160;<i>key</i>)</li><li><div class="fn" />bool <b><a href="qdeclarativepropertymap.html#contains">contains</a></b> (<i>self</i>, QString&#160;<i>key</i>)</li><li><div class="fn" />int <b><a href="qdeclarativepropertymap.html#count">count</a></b> (<i>self</i>)</li><li><div class="fn" /><b><a href="qdeclarativepropertymap.html#insert">insert</a></b> (<i>self</i>, QString&#160;<i>key</i>, QVariant&#160;<i>value</i>)</li><li><div class="fn" />bool <b><a href="qdeclarativepropertymap.html#isEmpty">isEmpty</a></b> (<i>self</i>)</li><li><div class="fn" />QStringList <b><a href="qdeclarativepropertymap.html#keys">keys</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qdeclarativepropertymap.html#size">size</a></b> (<i>self</i>)</li><li><div class="fn" />QVariant <b><a href="qdeclarativepropertymap.html#value">value</a></b> (<i>self</i>, QString&#160;<i>key</i>)</li></ul><h3>Special Methods</h3><ul><li><div class="fn" />QVariant <b><a href="qdeclarativepropertymap.html#__getitem__">__getitem__</a></b> (<i>self</i>, QString&#160;<i>key</i>)</li><li><div class="fn" /> <b><a href="qdeclarativepropertymap.html#__len__">__len__</a></b> (<i>self</i>)</li></ul><h3>Qt Signals</h3><ul><li><div class="fn" />void <b><a href="qdeclarativepropertymap.html#valueChanged">valueChanged</a></b> (const QString&amp;,const QVariant&amp;)</li></ul><a name="details" /><hr /><h2>Detailed Description</h2><p>The QDeclarativePropertyMap class allows you to set key-value
pairs that can be used in QML bindings.</p>
<p>QDeclarativePropertyMap provides a convenient way to expose
domain data to the UI layer. The following example shows how you
might declare data in C++ and then access it in QML.</p>
<p>In the C++ file:</p>
<pre class="highlightedCode brush: cpp">
 // create our data
 QDeclarativePropertyMap ownerData;
 ownerData.insert("name", QVariant(QString("John Smith")));
 ownerData.insert("phone", QVariant(QString("555-5555")));

<span class="comment"> // expose it to the UI layer</span>
 QDeclarativeView view;
 QDeclarativeContext *ctxt = view.rootContext();
 ctxt-&gt;setContextProperty("owner", &amp;ownerData);

 view.setSource(QUrl.fromLocalFile("main.qml"));
 view.show();
</pre>
<p>Then, in <tt>main.qml</tt>:</p>
<pre class="highlightedCode brush: cpp">
 Text { text: owner.name + " " + owner.phone }
</pre>
<p>The binding is dynamic - whenever a key's value is updated,
anything bound to that key will be updated as well.</p>
<p>To detect value changes made in the UI layer you can connect to
the <a href="qdeclarativepropertymap.html#valueChanged">valueChanged</a>()
signal. However, note that <a href="qdeclarativepropertymap.html#valueChanged">valueChanged</a>() is
<b>NOT</b> emitted when changes are made by calling <a href="qdeclarativepropertymap.html#insert">insert</a>() or <a href="qdeclarativepropertymap.html#clear">clear</a>() - it is only
emitted when a value is updated from QML.</p>
<p><b>Note:</b> It is not possible to remove keys from the map;
once a key has been added, you can only modify or clear its
associated value.</p>
<hr /><h2>Method Documentation</h2><h3 class="fn"><a name="QDeclarativePropertyMap" />QDeclarativePropertyMap.__init__ (<i>self</i>, <a href="qobject.html">QObject</a>&#160;<i>parent</i>&#160;=&#160;None)</h3><p>The <i>parent</i> argument, if not None, causes <i>self</i> to be owned by Qt instead of PyQt.</p><p>Constructs a bindable map with parent object <i>parent</i>.</p>


<h3 class="fn"><a name="clear" />QDeclarativePropertyMap.clear (<i>self</i>, QString&#160;<i>key</i>)</h3><p>Clears the value (if any) associated with <i>key</i>.</p>


<h3 class="fn"><a name="contains" />bool QDeclarativePropertyMap.contains (<i>self</i>, QString&#160;<i>key</i>)</h3><p>Returns true if the map contains <i>key</i>.</p>
<p>See also <a href="qdeclarativepropertymap.html#size">size</a>().</p>


<h3 class="fn"><a name="count" />int QDeclarativePropertyMap.count (<i>self</i>)</h3><p>This is an overloaded function.</p>
<p>Same as <a href="qdeclarativepropertymap.html#size">size</a>().</p>


<h3 class="fn"><a name="insert" />QDeclarativePropertyMap.insert (<i>self</i>, QString&#160;<i>key</i>, QVariant&#160;<i>value</i>)</h3><p>Sets the value associated with <i>key</i> to <i>value</i>.</p>
<p>If the key doesn't exist, it is automatically created.</p>


<h3 class="fn"><a name="isEmpty" />bool QDeclarativePropertyMap.isEmpty (<i>self</i>)</h3><p>Returns true if the map contains no keys; otherwise returns
false.</p>
<p>See also <a href="qdeclarativepropertymap.html#size">size</a>().</p>


<h3 class="fn"><a name="keys" />QStringList QDeclarativePropertyMap.keys (<i>self</i>)</h3><h3 class="fn"><a name="size" />int QDeclarativePropertyMap.size (<i>self</i>)</h3><p>Returns the number of keys in the map.</p>
<p>See also <a href="qdeclarativepropertymap.html#isEmpty">isEmpty</a>() and <a href="qdeclarativepropertymap.html#count">count</a>().</p>


<h3 class="fn"><a name="value" />QVariant QDeclarativePropertyMap.value (<i>self</i>, QString&#160;<i>key</i>)</h3><p>Returns the value associated with <i>key</i>.</p>
<p>If no value has been set for this key (or if the value has been
cleared), an invalid <a href="qvariant.html">QVariant</a> is
returned.</p>


<h3 class="fn"><a name="__getitem__" />QVariant QDeclarativePropertyMap.__getitem__ (<i>self</i>, QString&#160;<i>key</i>)</h3><h3 class="fn"><a name="__len__" /> QDeclarativePropertyMap.__len__ (<i>self</i>)</h3><hr /><h2>Qt Signal Documentation</h2><h3 class="fn"><a name="valueChanged" />void valueChanged (const QString&amp;,const QVariant&amp;)</h3><p>This is the default overload of this signal.</p><p>This signal is emitted whenever one of the values in the map is
changed. <i>key</i> is the key corresponding to the <i>value</i>
that was changed.</p>
<p><b>Note:</b> valueChanged() is <b>NOT</b> emitted when changes
are made by calling <a href="qdeclarativepropertymap.html#insert">insert</a>() or <a href="qdeclarativepropertymap.html#clear">clear</a>() - it is only
emitted when a value is updated from QML.</p>


<address><hr /><div align="center"><table border="0" cellspacing="0" width="100%"><tr class="address"><td align="left" width="25%">PyQt&#160;4.8.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> 2011</td><td align="right" width="25%">Qt&#160;4.7.1</td></tr></table></div></address></body></html>