summaryrefslogtreecommitdiffstats
path: root/doc/html/tqdictiterator.html
blob: 45cac8ace1228b09b0b41c96543300d64edba146 (plain)
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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/doc/tqdict.doc:410 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>TQDictIterator Class</title>
<style type="text/css"><!--
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
 <a href="index.html">
<font color="#004faf">Home</font></a>
 | <a href="classes.html">
<font color="#004faf">All&nbsp;Classes</font></a>
 | <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
 | <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
 | <a href="groups.html">
<font color="#004faf">Grouped&nbsp;Classes</font></a>
 | <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>TQDictIterator Class Reference</h1>

<p>The TQDictIterator class provides an iterator for TQDict collections.
<a href="#details">More...</a>
<p><tt>#include &lt;<a href="tqdict-h.html">tqdict.h</a>&gt;</tt>
<p><a href="tqdictiterator-members.html">List of all member functions.</a>
<h2>Public Members</h2>
<ul>
<li class=fn><a href="#TQDictIterator"><b>TQDictIterator</b></a> ( const&nbsp;TQDict&lt;type&gt;&nbsp;&amp;&nbsp;dict )</li>
<li class=fn><a href="#~TQDictIterator"><b>~TQDictIterator</b></a> ()</li>
<li class=fn>uint <a href="#count"><b>count</b></a> () const</li>
<li class=fn>bool <a href="#isEmpty"><b>isEmpty</b></a> () const</li>
<li class=fn>type * <a href="#toFirst"><b>toFirst</b></a> ()</li>
<li class=fn><a href="#operator-type-*"><b>operator type *</b></a> () const</li>
<li class=fn>type * <a href="#current"><b>current</b></a> () const</li>
<li class=fn>TQString <a href="#currentKey"><b>currentKey</b></a> () const</li>
<li class=fn>type * <a href="#operator()"><b>operator()</b></a> ()</li>
<li class=fn>type * <a href="#operator++"><b>operator++</b></a> ()</li>
</ul>
<hr><a name="details"></a><h2>Detailed Description</h2>


The TQDictIterator class provides an iterator for <a href="tqdict.html">TQDict</a> collections.
<p> 

<p> TQDictIterator is implemented as a template class. Define a
template instance TQDictIterator&lt;X&gt; to create a dictionary
iterator that operates on TQDict&lt;X&gt; (dictionary of X*).
<p> The traversal order is arbitrary; when we speak of the "first",
"last" and "next" item we are talking in terms of this arbitrary
order.
<p> Multiple iterators may independently traverse the same dictionary.
A TQDict knows about all the iterators that are operating on the
dictionary. When an item is removed from the dictionary, TQDict
updates all iterators that are referring to the removed item to
point to the next item in the (arbitrary) traversal order.
<p> Example:
<pre>
    <a href="tqdict.html">TQDict</a>&lt;TQLineEdit&gt; fields;
    fields.<a href="tqdict.html#insert">insert</a>( "forename", new <a href="ntqlineedit.html">TQLineEdit</a>( this ) );
    fields.<a href="tqdict.html#insert">insert</a>( "surname", new <a href="ntqlineedit.html">TQLineEdit</a>( this ) );
    fields.<a href="tqdict.html#insert">insert</a>( "age", new <a href="ntqlineedit.html">TQLineEdit</a>( this ) );

    fields["forename"]-&gt;setText( "Homer" );
    fields["surname"]-&gt;setText( "Simpson" );
    fields["age"]-&gt;setText( "45" );

    TQDictIterator&lt;TQLineEdit&gt; it( fields );
    for( ; it.<a href="#current">current</a>(); ++it )
        cout &lt;&lt; it.<a href="#currentKey">currentKey</a>() &lt;&lt; ": " &lt;&lt; it.<a href="#current">current</a>()-&gt;text() &lt;&lt; endl;
    cout &lt;&lt; endl;

    // Output (random order):
    //  age: 45
    //  surname: Simpson
    //  forename: Homer
    </pre>
 
In the example we insert some pointers to line edits into a
dictionary, then iterate over the dictionary printing the strings
associated with the line edits.
<p> <p>See also <a href="tqdict.html">TQDict</a>, <a href="collection.html">Collection Classes</a>, and <a href="tools.html">Non-GUI Classes</a>.

<hr><h2>Member Function Documentation</h2>
<h3 class=fn><a name="TQDictIterator"></a>TQDictIterator::TQDictIterator ( const&nbsp;<a href="tqdict.html">TQDict</a>&lt;type&gt;&nbsp;&amp;&nbsp;dict )
</h3>

<p> Constructs an iterator for <em>dict</em>. The current iterator item is
set to point to the first item in the dictionary, <em>dict</em>. First
in this context means first in the arbitrary traversal order.

<h3 class=fn><a name="~TQDictIterator"></a>TQDictIterator::~TQDictIterator ()
</h3>

<p> Destroys the iterator.

<h3 class=fn>uint <a name="count"></a>TQDictIterator::count () const
</h3>

<p> Returns the number of items in the dictionary over which the
iterator is operating.
<p> <p>See also <a href="#isEmpty">isEmpty</a>().

<h3 class=fn>type * <a name="current"></a>TQDictIterator::current () const
</h3>

<p> Returns a pointer to the current iterator item's value.

<h3 class=fn><a href="tqstring.html">TQString</a> <a name="currentKey"></a>TQDictIterator::currentKey () const
</h3>

<p> Returns the current iterator item's key.

<h3 class=fn>bool <a name="isEmpty"></a>TQDictIterator::isEmpty () const
</h3>

<p> Returns TRUE if the dictionary is empty, i.e. <a href="#count">count</a>() == 0;
otherwise returns FALSE.
<p> <p>See also <a href="#count">count</a>().

<h3 class=fn><a name="operator-type-*"></a>TQDictIterator::operator type * () const
</h3>

<p> Cast operator. Returns a pointer to the current iterator item.
Same as <a href="#current">current</a>().

<h3 class=fn>type * <a name="operator()"></a>TQDictIterator::operator() ()
</h3>

<p> Makes the next item current and returns the original current item.
<p> If the current iterator item was the last item in the dictionary
or if it was 0, 0 is returned.

<h3 class=fn>type * <a name="operator++"></a>TQDictIterator::operator++ ()
</h3>

<p> Prefix ++ makes the next item current and returns the new current
item.
<p> If the current iterator item was the last item in the dictionary
or if it was 0, 0 is returned.

<h3 class=fn>type * <a name="toFirst"></a>TQDictIterator::toFirst ()
</h3>

<p> Resets the iterator, making the first item the first current item.
First in this context means first in the arbitrary traversal
order. Returns a pointer to this item.
<p> If the dictionary is empty it sets the current item to 0 and
returns 0.

<!-- eof -->
<hr><p>
This file is part of the <a href="index.html">TQt toolkit</a>.
Copyright &copy; 1995-2007
<a href="http://www.trolltech.com/">Trolltech</a>. All Rights Reserved.<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright &copy; 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>TQt 3.3.8</div>
</table></div></address></body>
</html>