/usr/share/qt5/doc/qtcontacts/qml-contacts.html is in qtpim5-doc-html 5.0~git20140515~29475884-0ubuntu24~7.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 | <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- qml-contacts.qdoc -->
<title>Qt Contacts QML API | Qt 5.0</title>
<link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
<script type="text/javascript">
document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
// loading style sheet breaks anchors that were jumped to before
// so force jumping to anchor again
setTimeout(function() {
var anchor = location.hash;
// need to jump to different anchor first (e.g. none)
location.hash = "#";
setTimeout(function() {
location.hash = anchor;
}, 0);
}, 0);
</script>
</head>
<body>
<div class="header" id="qtdocheader">
<div class="main">
<div class="main-rounded">
<div class="navigationbar">
<table><tr>
<td >Qt 5.0</td><td >Qt Contacts QML API</td></tr></table><table class="buildversion"><tr>
<td id="buildversion" width="100%" align="right">Qt 5.0.0 Reference Documentation</td>
</tr></table>
</div>
</div>
<div class="content">
<div class="line">
<div class="content mainContent">
<div class="sidebar">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#overview">Overview</a></li>
<li class="level2"><a href="#contact-model">Contact Model</a></li>
<li class="level2"><a href="#filters">Filters</a></li>
<li class="level2"><a href="#contact-type">Contact type</a></li>
<li class="level1"><a href="#reference-documentation">Reference documentation</a></li>
<li class="level2"><a href="#main-classes">Main Classes</a></li>
<li class="level2"><a href="#detail-leaf-classes">Detail Leaf Classes</a></li>
<li class="level2"><a href="#item-matching-and-filtering">Item matching and filtering</a></li>
<li class="level2"><a href="#examples">Examples</a></li>
</ul>
</div>
<div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">Qt Contacts QML API</h1>
<span class="subtitle"></span>
<!-- $$$qml-contacts.html-description -->
<div class="descr"> <a name="details"></a>
<a name="overview"></a>
<h2 id="overview">Overview</h2>
<p>To be able to use this component the QML <i>import</i> statement needs to reference the module before it can used. Simply add the following to the QML file:</p>
<pre class="qml">
import QtContacts 5.0
</pre>
<p>The Contacts API enables client to search for contacts data from local backends and use filters to get only the relevant results. The QML Contacts API delivers this capability in easy to use form.</p>
<p>The following describes the API. The <a href="qml-contacts.html#examples">Examples</a> section contains sample code for the QML API.</p>
<a name="contact-model"></a>
<h3 >Contact Model</h3>
<p>The Contact itself is represented by a model called a <a href="qml-qtcontacts-contactmodel.html">ContactModel</a>. This model supplies a rich selection of properties to display or to use as filter criteria. The model is then used to perform requests on a contacts store.</p>
<a name="filters"></a>
<h3 >Filters</h3>
<p>Developers can construct a series of filters and combine them using the <a href="qml-qtcontacts-intersectionfilter.html">IntersectionFilter</a> and <a href="qml-qtcontacts-unionfilter.html">UnionFilter</a> types to represent a logical <i>and</i> and <i>or</i> of the results. There are also other properties that give control over the filter logic, such as <a href="qml-qtcontacts-detailrangefilter.html#rangeFlags-prop">RangeFlags</a> and the <a href="qml-qtcontacts-detailfilter.html#matchFlags-prop">MatchFlags</a>.</p>
<p>As an example, consider the follow QML code which has a <a href="qml-qtcontacts-contactmodel.html">ContactModel</a> type containing a filter and a list of sort orders. The contacts will be restricted to those living in Finland who are either male or born between 1970 and 1984.</p>
<p>The list of contacts in this <a href="qml-qtcontacts-contactmodel.html">ContactModel</a> will be first sorted on the contacts' organization name and then on the contacts' first name.</p>
<pre class="cpp">
import <span class="type"><a href="qtcontacts-qmlmodule.html">QtContacts</a></span> <span class="number">5.0</span>
<span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
model: ContactModel {
filter: IntersectionFilter {
DetailFilter {
detail:ContactDetail<span class="operator">.</span>Address
field: Address<span class="operator">.</span>Country
value: <span class="string">"Finland"</span>
}
UnionFilter {
DetailRangeFilter {
detail:ContactDetail<span class="operator">.</span>Birthday
field:Birthday<span class="operator">.</span>Birthday
min: <span class="char">'1970-01-01'</span>
max: <span class="char">'1984-12-31'</span>
}
DetailFilter {
detail:ContactDetail<span class="operator">.</span>Gender
field:Gender<span class="operator">.</span>Gender
value:Gender<span class="operator">.</span>Male
}
}
}
sortOrders: <span class="operator">[</span>
SortOrder {
detail:ContactDetail<span class="operator">.</span>Organization
field:Organization<span class="operator">.</span>Name
direction:<span class="type">Qt</span><span class="operator">.</span>AscendingOrder
}<span class="operator">,</span>
SortOrder {
detail:ContactDetail<span class="operator">.</span>Name
field:Name<span class="operator">.</span>FirstName
direction:<span class="type">Qt</span><span class="operator">.</span>AscendingOrder
}
<span class="operator">]</span>
}
</pre>
<a name="contact-type"></a>
<h3 >Contact type</h3>
<p>The <a href="qtcontacts-overview.html#contact">Contact</a> type represents a single contact instance from the contacts store. All contact details are organized as group properties.</p>
<p>The following snippet shows how you can construct a Contact object in QML:</p>
<pre class="cpp">
Rectangle {
id: topItem
width: <span class="number">360</span>
height: <span class="number">640</span>
x: <span class="number">0</span>
y: <span class="number">0</span>
Contact {
id: myContact
Name {
firstName:<span class="string">"John"</span>
lastName:<span class="string">"Gates"</span>
}
EmailAddress {
emailAddress:<span class="string">"john@example.com"</span>
}
EmailAddress {
emailAddress:<span class="string">"mygmailaccount@gmail.com"</span>
}
address<span class="operator">.</span>street:<span class="string">"53 Mysteet St"</span>
address<span class="operator">.</span>locality: <span class="string">"My City"</span>
address<span class="operator">.</span>region: <span class="string">"My Region"</span>
address<span class="operator">.</span>postcode:<span class="string">"1111"</span>
address<span class="operator">.</span>country:<span class="string">"My Country"</span>
address<span class="operator">.</span>subTypes:<span class="operator">[</span>Address<span class="operator">.</span>Postal<span class="operator">,</span> Address<span class="operator">.</span>Domestic<span class="operator">]</span>
address<span class="operator">.</span>postOfficeBox:<span class="string">"1111"</span>
Nickname {
nickname:<span class="string">"John"</span>
}
PhoneNumber {
number: <span class="string">"1111111111"</span>
subTypes:<span class="operator">[</span>PhoneNumber<span class="operator">.</span>Mobile<span class="operator">]</span>
}
PhoneNumber {
number: <span class="string">"2222222222"</span>
subTypes:<span class="operator">[</span>PhoneNumber<span class="operator">.</span>Fax<span class="operator">]</span>
}
PhoneNumber {
number: <span class="string">"3333333333"</span>
subTypes:<span class="operator">[</span>PhoneNumber<span class="operator">.</span>Landline<span class="operator">]</span>
}
}
Column {
spacing:<span class="number">4</span>
<span class="comment">//access the same property with different syntaxes</span>
Text { text:<span class="string">"Name(from property name):"</span> <span class="operator">+</span> myContact<span class="operator">.</span>name<span class="operator">.</span>firstName <span class="operator">+</span> <span class="string">" "</span> <span class="operator">+</span> myContact<span class="operator">.</span>name<span class="operator">.</span>lastName }
Text { text:<span class="string">"Name(from detail type):"</span> <span class="operator">+</span> myContact<span class="operator">.</span>detail(ContactDetail<span class="operator">.</span>Name)<span class="operator">.</span>firstName <span class="operator">+</span> <span class="string">" "</span> <span class="operator">+</span> myContact<span class="operator">.</span>name<span class="operator">.</span>lastName }
Text { text:<span class="string">"Address:"</span> <span class="operator">+</span> myContact<span class="operator">.</span>address<span class="operator">.</span>street <span class="operator">+</span> <span class="string">" "</span> <span class="operator">+</span> myContact<span class="operator">.</span>address<span class="operator">.</span>locality <span class="operator">+</span> <span class="string">" "</span> <span class="operator">+</span> myContact<span class="operator">.</span>address<span class="operator">.</span>region <span class="operator">+</span> <span class="string">" "</span> <span class="operator">+</span> myContact<span class="operator">.</span>address<span class="operator">.</span>postcode }
<span class="comment">//If a contact contains multiple details for the same detail type, you can access them with the property in plural</span>
Text { text:<span class="string">"How many email accounts?:"</span> <span class="operator">+</span> myContact<span class="operator">.</span>emails<span class="operator">.</span>length }
Text { text:<span class="string">"Email[0]:"</span> <span class="operator">+</span> myContact<span class="operator">.</span>emails<span class="operator">[</span><span class="number">0</span><span class="operator">]</span><span class="operator">.</span>emailAddress }
Text { text:<span class="string">"How many phone numbers?:"</span> <span class="operator">+</span> myContact<span class="operator">.</span>phoneNumbers<span class="operator">.</span>length }
Text { text:<span class="string">"phone number[0]:"</span> <span class="operator">+</span> myContact<span class="operator">.</span>phoneNumbers<span class="operator">[</span><span class="number">0</span><span class="operator">]</span><span class="operator">.</span>number }
Text { text:<span class="string">"phone number[1]:"</span> <span class="operator">+</span> myContact<span class="operator">.</span>phoneNumbers<span class="operator">[</span><span class="number">1</span><span class="operator">]</span><span class="operator">.</span>number }
Text { text:<span class="string">"phone number[2]:"</span> <span class="operator">+</span> myContact<span class="operator">.</span>phoneNumbers<span class="operator">[</span><span class="number">2</span><span class="operator">]</span><span class="operator">.</span>number }
}
}
</pre>
<a name="reference-documentation"></a>
<h2 id="reference-documentation">Reference documentation</h2>
<a name="main-classes"></a>
<h3 >Main Classes</h3>
<div class="table"><table class="annotated">
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-contact.html">Contact</a></p></td><td class="tblDescr"><p>Element represents an addressbook contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-contactdetail.html">ContactDetail</a></p></td><td class="tblDescr"><p>Element represents a single, complete detail about a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-fetchhint.html">FetchHint</a></p></td><td class="tblDescr"><p>Element provides hints to the manager about which contact information needs to be retrieved in an asynchronous fetch request or a synchronous function call</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-filter.html">Filter</a></p></td><td class="tblDescr"><p>Element is used as a property of ContactModel, to allow selection of contacts which have certain details or properties</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-contactmodel.html">ContactModel</a></p></td><td class="tblDescr"><p>Element provides access to contacts from the contacts store</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-relationship.html">Relationship</a></p></td><td class="tblDescr"><p>Element describes a one-to-one relationship between a locally-stored contact and another (possibly remote) contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-relationshipmodel.html">RelationshipModel</a></p></td><td class="tblDescr"><p>Model of contact relationships from the contacts store</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-sortorder.html">SortOrder</a></p></td><td class="tblDescr"><p>Element defines how a list of contacts should be ordered according to some criteria</p></td></tr>
</table></div>
<a name="detail-leaf-classes"></a>
<h3 >Detail Leaf Classes</h3>
<div class="table"><table class="annotated">
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-address.html">Address</a></p></td><td class="tblDescr"><p>Element contains an address of a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-anniversary.html">Anniversary</a></p></td><td class="tblDescr"><p>Element contains an anniversary of a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-avatar.html">Avatar</a></p></td><td class="tblDescr"><p>Element contains avatar URLs of a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-birthday.html">Birthday</a></p></td><td class="tblDescr"><p>Element contains a birthday of a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-displaylabel.html">DisplayLabel</a></p></td><td class="tblDescr"><p>Element contains a label that can be used by clients when displaying a contact, for example in a list</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-emailaddress.html">EmailAddress</a></p></td><td class="tblDescr"><p>Element contains an email address of a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-extendeddetail.html">ExtendedDetail</a></p></td><td class="tblDescr"><p>Element contains an extended detail of a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-family.html">Family</a></p></td><td class="tblDescr"><p>Element contains names of family members of a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-favorite.html">Favorite</a></p></td><td class="tblDescr"><p>Element indicates if a contact is a favorite contact as well as the position it should appear in an ordered list of favorites</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-gender.html">Gender</a></p></td><td class="tblDescr"><p>Element contains the gender of a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-geolocation.html">GeoLocation</a></p></td><td class="tblDescr"><p>Element contains a global location coordinate associated with a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-globalpresence.html">GlobalPresence</a></p></td><td class="tblDescr"><p>Element provides aggregated presence information for a contact, synthesized or supplied by the backend</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-guid.html">Guid</a></p></td><td class="tblDescr"><p>Element contains a globally unique Id of a contact, for use in synchronization with other datastores</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-hobby.html">Hobby</a></p></td><td class="tblDescr"><p>Element contains a hobby of the contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-name.html">Name</a></p></td><td class="tblDescr"><p>Element contains a name of a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-nickname.html">Nickname</a></p></td><td class="tblDescr"><p>Element contains a nickname of a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-note.html">Note</a></p></td><td class="tblDescr"><p>Element contains a note associated with a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-onlineaccount.html">OnlineAccount</a></p></td><td class="tblDescr"><p>Element contains a note associated with a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-organization.html">Organization</a></p></td><td class="tblDescr"><p>Element provides details about an organization that the contact is either a part of, or stands for</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-phonenumber.html">PhoneNumber</a></p></td><td class="tblDescr"><p>Element provides a phone number of a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-presence.html">Presence</a></p></td><td class="tblDescr"><p>Element provides presence information for an online account of a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-ringtone.html">Ringtone</a></p></td><td class="tblDescr"><p>Element provides a ringtone associated with a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-synctarget.html">SyncTarget</a></p></td><td class="tblDescr"><p>Element provides a sync target for a contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-tag.html">Tag</a></p></td><td class="tblDescr"><p>Element provides a contains a tag associated with a contact</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-timestamp.html">Timestamp</a></p></td><td class="tblDescr"><p>Element contains the creation and last-modified timestamp associated with the contact</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-url.html">Url</a></p></td><td class="tblDescr"><p>Element contains a url associated with a contact</p></td></tr>
</table></div>
<a name="item-matching-and-filtering"></a>
<h3 >Item matching and filtering</h3>
<div class="table"><table class="annotated">
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-actionfilter.html">ActionFilter</a></p></td><td class="tblDescr"><p>Element provides a filter based around an action availability criterion</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-changelogfilter.html">ChangeLogFilter</a></p></td><td class="tblDescr"><p>Element provides a filter based around a contact timestamp criterion</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-detailfilter.html">DetailFilter</a></p></td><td class="tblDescr"><p>Element provides a filter based around a detail value criterion</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-detailrangefilter.html">DetailRangeFilter</a></p></td><td class="tblDescr"><p>Element provides a filter based around a detail value range criterion</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-idfilter.html">IdFilter</a></p></td><td class="tblDescr"><p>Element provides a filter based around a list of contact ids</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-intersectionfilter.html">IntersectionFilter</a></p></td><td class="tblDescr"><p>Element provides a filter which intersects the results of other filters</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-invalidfilter.html">InvalidFilter</a></p></td><td class="tblDescr"><p>The InvalidFilter element provides a filter which will never match any contacts</p></td></tr>
<tr class="even topAlign"><td class="tblName"><p><a href="qml-qtcontacts-relationshipfilter.html">RelationshipFilter</a></p></td><td class="tblDescr"><p>Element provides a filter based around relationship criteria</p></td></tr>
<tr class="odd topAlign"><td class="tblName"><p><a href="qml-qtcontacts-unionfilter.html">UnionFilter</a></p></td><td class="tblDescr"><p>Element provides a filter which unions the results of other filters</p></td></tr>
</table></div>
<a name="examples"></a>
<h3 >Examples</h3>
<p>The following sample applications show examples of API usage:</p>
<ul>
<li><a href="qtcontacts-qmlcontactslistview-example.html">Qt Quick Contacts List view</a></li>
</ul>
</div>
<!-- @@@qml-contacts.html -->
</div>
</div>
</div>
</div>
</div>
<div class="footer">
<p>
<acronym title="Copyright">©</acronym> 2017 The Qt Company Ltd.
Documentation contributions included herein are the copyrights of
their respective owners.<br> 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.<br> Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property
of their respective owners. </p>
</div>
</body>
</html>
|