File: qml-listelement.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 (103 lines) | stat: -rw-r--r-- 5,873 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
<?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" />
<!-- qdeclarativelistmodel.cpp -->
  <title>Qt 4.8: QML ListElement Element</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="qdeclarativeelements.html">QML Elements</a></li>
<li>QML ListElement Element</li>
    </ul>
  </div>
</div>
<div class="content mainContent">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#details">Detailed Description</a></li>
<li class="level2"><a href="#referencing-roles">Referencing Roles</a></li>
<li class="level2"><a href="#example-usage">Example Usage</a></li>
</ul>
</div>
<h1 class="title">QML ListElement Element</h1>
<span class="subtitle"></span>
<!-- $$$ListElement-brief -->
<p>The ListElement element defines a data item in a <a href="qml-listmodel.html">ListModel</a>. <a href="#details">More...</a></p>
<!-- @@@ListElement -->
<p>This element was introduced in Qt 4.7.</p>
<!-- $$$ListElement-description -->
<a name="details"></a>
<h2>Detailed Description</h2>
<p>List elements are defined inside <a href="qml-listmodel.html">ListModel</a> definitions, and represent items in a list that will be displayed using <a href="qml-listview.html">ListView</a> or <a href="qml-repeater.html">Repeater</a> items.</p>
<p>List elements are defined like other QML elements except that they contain a collection of <i>role</i> definitions instead of properties. Using the same syntax as property definitions, roles both define how the data is accessed and include the data itself.</p>
<p>The names used for roles must begin with a lower-case letter and should be common to all elements in a given model. Values must be simple constants; either strings (quoted and optionally within a call to QT_TR_NOOP), boolean values (true, false), numbers, or enumeration values (such as AlignText.AlignHCenter).</p>
<a name="referencing-roles"></a>
<h2>Referencing Roles</h2>
<p>The role names are used by delegates to obtain data from list elements. Each role name is accessible in the delegate's scope, and refers to the corresponding role in the current element. Where a role name would be ambiguous to use, it can be accessed via the <a href="qml-listview.html#model-prop">model</a> property (e.g&#x2e;, <tt>model.cost</tt> instead of <tt>cost</tt>).</p>
<a name="example-usage"></a>
<h2>Example Usage</h2>
<p>The following model defines a series of list elements, each of which contain &quot;name&quot; and &quot;cost&quot; roles and their associated values.</p>
<pre class="qml"> <span class="type"><a href="qml-listmodel.html">ListModel</a></span> {
     <span class="name">id</span>: <span class="name">fruitModel</span>

     <span class="type">ListElement</span> {
         <span class="name">name</span>: <span class="string">&quot;Apple&quot;</span>
         <span class="name">cost</span>: <span class="number">2.45</span>
     }
     <span class="type">ListElement</span> {
         <span class="name">name</span>: <span class="string">&quot;Orange&quot;</span>
         <span class="name">cost</span>: <span class="number">3.25</span>
     }
     <span class="type">ListElement</span> {
         <span class="name">name</span>: <span class="string">&quot;Banana&quot;</span>
         <span class="name">cost</span>: <span class="number">1.95</span>
     }
 }</pre>
<p>The delegate obtains the name and cost for each element by simply referring to <tt>name</tt> and <tt>cost</tt>:</p>
<pre class="qml"> <span class="type"><a href="qml-listview.html">ListView</a></span> {
     <span class="name">anchors</span>.fill: <span class="name">parent</span>
     <span class="name">model</span>: <span class="name">fruitModel</span>
     <span class="name">delegate</span>: <span class="name">Row</span> {
         <span class="type"><a href="qml-text.html">Text</a></span> { <span class="name">text</span>: <span class="string">&quot;Fruit: &quot;</span> <span class="operator">+</span> <span class="name">name</span> }
         <span class="type"><a href="qml-text.html">Text</a></span> { <span class="name">text</span>: <span class="string">&quot;Cost: $&quot;</span> <span class="operator">+</span> <span class="name">cost</span> }
     }
 }</pre>
<p><b>See also </b><a href="qml-listmodel.html">ListModel</a>.</p>
<!-- @@@ListElement -->
  <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>