summaryrefslogtreecommitdiff
path: root/libopie/pim/ocontactfields.cpp
Unidiff
Diffstat (limited to 'libopie/pim/ocontactfields.cpp') (more/less context) (show whitespace changes)
-rw-r--r--libopie/pim/ocontactfields.cpp209
1 files changed, 110 insertions, 99 deletions
diff --git a/libopie/pim/ocontactfields.cpp b/libopie/pim/ocontactfields.cpp
index 7206f0d..0f08a5a 100644
--- a/libopie/pim/ocontactfields.cpp
+++ b/libopie/pim/ocontactfields.cpp
@@ -8,43 +8,56 @@
8#include <qpe/recordfields.h> 8#include <qpe/recordfields.h>
9#include <qpe/config.h> 9#include <qpe/config.h>
10#include <opie/ocontact.h> 10#include <opie/ocontact.h>
11 11
12/*! 12/*!
13 \internal 13 \internal
14 Returns a list of details field names for a contact. 14 Returns a list of personal field names for a contact.
15*/ 15*/
16QStringList OContactFields::untrdetailsfields( bool sorted ) 16QStringList OContactFields::personalfields( bool sorted, bool translated )
17{ 17{
18 QStringList list; 18 QStringList list;
19 QMap<int, QString> mapIdToStr = idToUntrFields(); 19 QMap<int, QString> mapIdToStr;
20 if ( translated )
21 mapIdToStr = idToTrFields();
22 else
23 mapIdToStr = idToUntrFields();
20 24
21 list.append( mapIdToStr[ Qtopia::Office ] ); 25 list.append( mapIdToStr[ Qtopia::AddressUid ] );
22 list.append( mapIdToStr[ Qtopia::Profession ] ); 26 list.append( mapIdToStr[ Qtopia::AddressCategory ] );
23 list.append( mapIdToStr[ Qtopia::Assistant ] );
24 list.append( mapIdToStr[ Qtopia::Manager ] );
25 27
26 list.append( mapIdToStr[ Qtopia::Spouse ] ); 28 list.append( mapIdToStr[ Qtopia::Title ] );
27 list.append( mapIdToStr[ Qtopia::Gender ] ); 29 list.append( mapIdToStr[ Qtopia::FirstName ] );
28 list.append( mapIdToStr[ Qtopia::Birthday ] ); 30 list.append( mapIdToStr[ Qtopia::MiddleName ] );
29 list.append( mapIdToStr[ Qtopia::Anniversary ] ); 31 list.append( mapIdToStr[ Qtopia::LastName ] );
30 list.append( mapIdToStr[ Qtopia::Nickname ] ); 32 list.append( mapIdToStr[ Qtopia::Suffix ] );
31 list.append( mapIdToStr[ Qtopia::Children ] ); 33 list.append( mapIdToStr[ Qtopia::FileAs ] );
34
35 list.append( mapIdToStr[ Qtopia::JobTitle ] );
36 list.append( mapIdToStr[ Qtopia::Department ] );
37 list.append( mapIdToStr[ Qtopia::Company ] );
38
39 list.append( mapIdToStr[ Qtopia::Notes ] );
40 list.append( mapIdToStr[ Qtopia::Groups ] );
32 41
33 if (sorted) list.sort(); 42 if (sorted) list.sort();
34 return list; 43 return list;
35} 44}
36 45
37/*! 46/*!
38 \internal 47 \internal
39 Returns a translated list of details field names for a contact. 48 Returns a list of details field names for a contact.
40*/ 49*/
41QStringList OContactFields::trdetailsfields( bool sorted ) 50QStringList OContactFields::detailsfields( bool sorted, bool translated )
42{ 51{
43 QStringList list; 52 QStringList list;
44 QMap<int, QString> mapIdToStr = idToTrFields(); 53 QMap<int, QString> mapIdToStr;
54 if ( translated )
55 mapIdToStr = idToTrFields();
56 else
57 mapIdToStr = idToUntrFields();
45 58
46 list.append( mapIdToStr[Qtopia::Office] ); 59 list.append( mapIdToStr[Qtopia::Office] );
47 list.append( mapIdToStr[Qtopia::Profession] ); 60 list.append( mapIdToStr[Qtopia::Profession] );
48 list.append( mapIdToStr[Qtopia::Assistant] ); 61 list.append( mapIdToStr[Qtopia::Assistant] );
49 list.append( mapIdToStr[Qtopia::Manager] ); 62 list.append( mapIdToStr[Qtopia::Manager] );
50 63
@@ -56,51 +69,24 @@ QStringList OContactFields::trdetailsfields( bool sorted )
56 list.append( mapIdToStr[Qtopia::Children] ); 69 list.append( mapIdToStr[Qtopia::Children] );
57 70
58 if (sorted) list.sort(); 71 if (sorted) list.sort();
59 return list; 72 return list;
60} 73}
61 74
62
63/*!
64 \internal
65 Returns a translated list of phone field names for a contact.
66*/
67QStringList OContactFields::trphonefields( bool sorted )
68{
69 QStringList list;
70 QMap<int, QString> mapIdToStr = idToTrFields();
71
72 list.append( mapIdToStr[Qtopia::BusinessPhone] );
73 list.append( mapIdToStr[Qtopia::BusinessFax] );
74 list.append( mapIdToStr[Qtopia::BusinessMobile] );
75 list.append( mapIdToStr[Qtopia::BusinessPager] );
76 list.append( mapIdToStr[Qtopia::BusinessWebPage] );
77
78 list.append( mapIdToStr[Qtopia::DefaultEmail] );
79 list.append( mapIdToStr[Qtopia::Emails] );
80
81 list.append( mapIdToStr[Qtopia::HomePhone] );
82 list.append( mapIdToStr[Qtopia::HomeFax] );
83 list.append( mapIdToStr[Qtopia::HomeMobile] );
84 // list.append( mapIdToStr[Qtopia::HomePager] );
85 list.append( mapIdToStr[Qtopia::HomeWebPage] );
86
87 if (sorted) list.sort();
88
89 return list;
90}
91
92
93/*! 75/*!
94 \internal 76 \internal
95 Returns a list of phone field names for a contact. 77 Returns a list of phone field names for a contact.
96*/ 78*/
97QStringList OContactFields::untrphonefields( bool sorted ) 79QStringList OContactFields::phonefields( bool sorted, bool translated )
98{ 80{
99 QStringList list; 81 QStringList list;
100 QMap<int, QString> mapIdToStr = idToUntrFields(); 82 QMap<int, QString> mapIdToStr;
83 if ( translated )
84 mapIdToStr = idToTrFields();
85 else
86 mapIdToStr = idToUntrFields();
101 87
102 list.append( mapIdToStr[ Qtopia::BusinessPhone ] ); 88 list.append( mapIdToStr[ Qtopia::BusinessPhone ] );
103 list.append( mapIdToStr[ Qtopia::BusinessFax ] ); 89 list.append( mapIdToStr[ Qtopia::BusinessFax ] );
104 list.append( mapIdToStr[ Qtopia::BusinessMobile ] ); 90 list.append( mapIdToStr[ Qtopia::BusinessMobile ] );
105 list.append( mapIdToStr[ Qtopia::BusinessPager ] ); 91 list.append( mapIdToStr[ Qtopia::BusinessPager ] );
106 list.append( mapIdToStr[ Qtopia::BusinessWebPage ] ); 92 list.append( mapIdToStr[ Qtopia::BusinessWebPage ] );
@@ -116,34 +102,28 @@ QStringList OContactFields::untrphonefields( bool sorted )
116 102
117 if (sorted) list.sort(); 103 if (sorted) list.sort();
118 104
119 return list; 105 return list;
120} 106}
121 107
122
123/*! 108/*!
124 \internal 109 \internal
125 Returns a translated list of field names for a contact. 110 Returns a list of field names for a contact.
126*/ 111*/
127QStringList OContactFields::trfields( bool sorted ) 112QStringList OContactFields::fields( bool sorted, bool translated )
128{ 113{
129 QStringList list; 114 QStringList list;
130 QMap<int, QString> mapIdToStr = idToTrFields(); 115 QMap<int, QString> mapIdToStr;
131 116 if ( translated )
132 list.append( mapIdToStr[Qtopia::Title]); 117 mapIdToStr = idToTrFields();
133 list.append( mapIdToStr[Qtopia::FirstName] ); 118 else
134 list.append( mapIdToStr[Qtopia::MiddleName] ); 119 mapIdToStr = idToUntrFields();
135 list.append( mapIdToStr[Qtopia::LastName] );
136 list.append( mapIdToStr[Qtopia::Suffix] );
137 list.append( mapIdToStr[Qtopia::FileAs] );
138 120
139 list.append( mapIdToStr[Qtopia::JobTitle] ); 121 list += personalfields( sorted, translated );
140 list.append( mapIdToStr[Qtopia::Department] );
141 list.append( mapIdToStr[Qtopia::Company] );
142 122
143 list += trphonefields( sorted ); 123 list += phonefields( sorted, translated );
144 124
145 list.append( mapIdToStr[Qtopia::BusinessStreet] ); 125 list.append( mapIdToStr[Qtopia::BusinessStreet] );
146 list.append( mapIdToStr[Qtopia::BusinessCity] ); 126 list.append( mapIdToStr[Qtopia::BusinessCity] );
147 list.append( mapIdToStr[Qtopia::BusinessState] ); 127 list.append( mapIdToStr[Qtopia::BusinessState] );
148 list.append( mapIdToStr[Qtopia::BusinessZip] ); 128 list.append( mapIdToStr[Qtopia::BusinessZip] );
149 list.append( mapIdToStr[Qtopia::BusinessCountry] ); 129 list.append( mapIdToStr[Qtopia::BusinessCountry] );
@@ -151,68 +131,97 @@ QStringList OContactFields::trfields( bool sorted )
151 list.append( mapIdToStr[Qtopia::HomeStreet] ); 131 list.append( mapIdToStr[Qtopia::HomeStreet] );
152 list.append( mapIdToStr[Qtopia::HomeCity] ); 132 list.append( mapIdToStr[Qtopia::HomeCity] );
153 list.append( mapIdToStr[Qtopia::HomeState] ); 133 list.append( mapIdToStr[Qtopia::HomeState] );
154 list.append( mapIdToStr[Qtopia::HomeZip] ); 134 list.append( mapIdToStr[Qtopia::HomeZip] );
155 list.append( mapIdToStr[Qtopia::HomeCountry] ); 135 list.append( mapIdToStr[Qtopia::HomeCountry] );
156 136
157 list += trdetailsfields( sorted ); 137 list += detailsfields( sorted, translated );
158
159 list.append( mapIdToStr[Qtopia::Notes] );
160 list.append( mapIdToStr[Qtopia::Groups] );
161 138
162 if (sorted) list.sort(); 139 if (sorted) list.sort();
163 140
164 return list; 141 return list;
165} 142}
166 143
144
167/*! 145/*!
168 \internal 146 \internal
169 Returns an untranslated list of field names for a contact. 147 Returns an untranslated list of personal field names for a contact.
170*/ 148*/
171QStringList OContactFields::untrfields( bool sorted ) 149QStringList OContactFields::untrpersonalfields( bool sorted )
172{ 150{
173 QStringList list; 151 return personalfields( sorted, false );
174 QMap<int, QString> mapIdToStr = idToUntrFields(); 152}
175 153
176 list.append( mapIdToStr[ Qtopia::AddressUid ] );
177 list.append( mapIdToStr[ Qtopia::AddressCategory ] );
178 154
179 list.append( mapIdToStr[ Qtopia::Title ] ); 155/*!
180 list.append( mapIdToStr[ Qtopia::FirstName ] ); 156 \internal
181 list.append( mapIdToStr[ Qtopia::MiddleName ] ); 157 Returns a translated list of personal field names for a contact.
182 list.append( mapIdToStr[ Qtopia::LastName ] ); 158*/
183 list.append( mapIdToStr[ Qtopia::Suffix ] ); 159QStringList OContactFields::trpersonalfields( bool sorted )
184 list.append( mapIdToStr[ Qtopia::FileAs ] ); 160{
161 return personalfields( sorted, true );
162}
185 163
186 list.append( mapIdToStr[ Qtopia::JobTitle ] );
187 list.append( mapIdToStr[ Qtopia::Department ] );
188 list.append( mapIdToStr[ Qtopia::Company ] );
189 164
190 list += untrphonefields( sorted ); 165/*!
166 \internal
167 Returns an untranslated list of details field names for a contact.
168*/
169QStringList OContactFields::untrdetailsfields( bool sorted )
170{
171 return detailsfields( sorted, false );
172}
191 173
192 list.append( mapIdToStr[ Qtopia::BusinessStreet ] );
193 list.append( mapIdToStr[ Qtopia::BusinessCity ] );
194 list.append( mapIdToStr[ Qtopia::BusinessState ] );
195 list.append( mapIdToStr[ Qtopia::BusinessZip ] );
196 list.append( mapIdToStr[ Qtopia::BusinessCountry ] );
197 174
198 list.append( mapIdToStr[ Qtopia::HomeStreet ] ); 175/*!
199 list.append( mapIdToStr[ Qtopia::HomeCity ] ); 176 \internal
200 list.append( mapIdToStr[ Qtopia::HomeState ] ); 177 Returns a translated list of details field names for a contact.
201 list.append( mapIdToStr[ Qtopia::HomeZip ] ); 178*/
202 list.append( mapIdToStr[ Qtopia::HomeCountry ] ); 179QStringList OContactFields::trdetailsfields( bool sorted )
180{
181 return detailsfields( sorted, true );
182}
203 183
204 list += untrdetailsfields( sorted );
205 184
206 list.append( mapIdToStr[ Qtopia::Notes ] ); 185/*!
207 list.append( mapIdToStr[ Qtopia::Groups ] ); 186 \internal
187 Returns a translated list of phone field names for a contact.
188*/
189QStringList OContactFields::trphonefields( bool sorted )
190{
191 return phonefields( sorted, true );
192}
208 193
209 if (sorted) list.sort(); 194/*!
195 \internal
196 Returns an untranslated list of phone field names for a contact.
197*/
198QStringList OContactFields::untrphonefields( bool sorted )
199{
200 return phonefields( sorted, false );
201}
210 202
211 return list; 203
204/*!
205 \internal
206 Returns a translated list of field names for a contact.
207*/
208QStringList OContactFields::trfields( bool sorted )
209{
210 return fields( sorted, true );
212} 211}
212
213/*!
214 \internal
215 Returns an untranslated list of field names for a contact.
216*/
217QStringList OContactFields::untrfields( bool sorted )
218{
219 return fields( sorted, false );
220}
221
213QMap<int, QString> OContactFields::idToTrFields() 222QMap<int, QString> OContactFields::idToTrFields()
214{ 223{
215 QMap<int, QString> ret_map; 224 QMap<int, QString> ret_map;
216 225
217 ret_map.insert( Qtopia::AddressUid, QObject::tr( "User Id" ) ); 226 ret_map.insert( Qtopia::AddressUid, QObject::tr( "User Id" ) );
218 ret_map.insert( Qtopia::AddressCategory, QObject::tr( "Categories" ) ); 227 ret_map.insert( Qtopia::AddressCategory, QObject::tr( "Categories" ) );
@@ -354,12 +363,14 @@ QMap<QString, int> OContactFields::trFieldsToId()
354 ret_map.insert( *it, it.key() ); 363 ret_map.insert( *it, it.key() );
355 364
356 365
357 return ret_map; 366 return ret_map;
358} 367}
359 368
369/* ======================================================================= */
370
360QMap<QString, int> OContactFields::untrFieldsToId() 371QMap<QString, int> OContactFields::untrFieldsToId()
361{ 372{
362 QMap<int, QString> idtostr = idToUntrFields(); 373 QMap<int, QString> idtostr = idToUntrFields();
363 QMap<QString, int> ret_map; 374 QMap<QString, int> ret_map;
364 375
365 376