1 pbkfields.hrh |
1 /* |
|
2 * Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: |
|
15 * This file contains declarations for resources of PbkEng.dll |
|
16 * The file can be included in C++ or resource file. |
|
17 * |
|
18 */ |
|
19 |
|
20 |
|
21 #ifndef __PbkFields_HRH__ |
|
22 #define __PbkFields_HRH__ |
|
23 |
|
24 //////////////////////////////////////////////////////////// |
|
25 // C++ compilation only section |
|
26 |
|
27 #ifdef __cplusplus |
|
28 |
|
29 #include <e32base.h> // for CArrayFixFlat |
|
30 |
|
31 /** |
|
32 * Type of Phonebook field IDs. |
|
33 */ |
|
34 typedef TInt TPbkFieldId; |
|
35 |
|
36 /** |
|
37 * Type of Phonebook group IDs. |
|
38 */ |
|
39 typedef TInt TPbkFieldGroupId; |
|
40 |
|
41 /** |
|
42 * Array of Phonebook field IDs. |
|
43 */ |
|
44 class CPbkFieldIdArray : public CArrayFixFlat<TPbkFieldId> |
|
45 { |
|
46 public: |
|
47 inline CPbkFieldIdArray() : CArrayFixFlat<TPbkFieldId>(8) |
|
48 { |
|
49 } |
|
50 |
|
51 inline TInt Find(TPbkFieldId aFieldId) const |
|
52 { |
|
53 const TInt count = Count(); |
|
54 for (TInt i=0; i < count; ++i) |
|
55 { |
|
56 if (At(i)==aFieldId) |
|
57 { |
|
58 return i; |
|
59 } |
|
60 } |
|
61 return KErrNotFound; |
|
62 } |
|
63 |
|
64 inline TBool Contains(TPbkFieldId aFieldId) const |
|
65 { |
|
66 return (Find(aFieldId) != KErrNotFound); |
|
67 } |
|
68 }; |
|
69 |
|
70 #endif |
|
71 |
|
72 |
|
73 //////////////////////////////////////////////////////////// |
|
74 // Common section for C++ and resource compilation |
|
75 |
|
76 |
|
77 // CONSTANTS |
|
78 /////////////////////////////////////////////////////////// |
|
79 // Unique Phonebook field type ids |
|
80 /////////////////////////////////////////////////////////// |
|
81 |
|
82 #define EPbkFieldIdNone 0x00 |
|
83 #define EPbkFieldIdLastName 0x01 |
|
84 #define EPbkFieldIdFirstName 0x02 |
|
85 #define EPbkFieldIdPhoneNumberGeneral 0x03 |
|
86 #define EPbkFieldIdPhoneNumberStandard EPbkFieldIdPhoneNumberGeneral |
|
87 #define EPbkFieldIdPhoneNumberHome 0x04 |
|
88 #define EPbkFieldIdPhoneNumberWork 0x05 |
|
89 #define EPbkFieldIdPhoneNumberMobile 0x06 |
|
90 #define EPbkFieldIdFaxNumber 0x07 |
|
91 #define EPbkFieldIdPagerNumber 0x08 |
|
92 #define EPbkFieldIdEmailAddress 0x09 |
|
93 #define EPbkFieldIdPostalAddress 0x0a |
|
94 #define EPbkFieldIdURL 0x0b |
|
95 #define EPbkFieldIdJobTitle 0x0c |
|
96 #define EPbkFieldIdCompanyName 0x0d |
|
97 #define EPbkFieldIdCompanyAddress EPbkFieldIdPostalAddress |
|
98 #define EPbkFieldIdDTMFString 0x0f |
|
99 #define EPbkFieldIdDate 0x10 |
|
100 #define EPbkFieldIdNote 0x11 |
|
101 #define EPbkFieldIdPicture 0x12 |
|
102 #define EPbkFieldIdThumbnailImage 0x13 |
|
103 #define EPbkFieldIdVoiceTagIndication 0x14 |
|
104 #define EPbkFieldIdSpeedDialIndication 0x15 |
|
105 #define EPbkFieldIdPersonalRingingToneIndication 0x16 |
|
106 #define EPbkFieldIdPOBox 0x17 |
|
107 #define EPbkFieldIdExtendedAddress 0x18 |
|
108 #define EPbkFieldIdStreetAddress 0x19 |
|
109 #define EPbkFieldIdPostalCode 0x1a |
|
110 #define EPbkFieldIdCity 0x1b |
|
111 #define EPbkFieldIdState 0x1c |
|
112 #define EPbkFieldIdCountry 0x1d |
|
113 #define EPbkFieldIdWVID 0x1e |
|
114 #define EPbkFieldIdSecondName 0x1f |
|
115 #define EPbkFieldIdPhoneNumberVideo 0x20 |
|
116 #define EPbkFieldIdLastNameReading 0x21 |
|
117 #define EPbkFieldIdFirstNameReading 0x22 |
|
118 #define EPbkFieldIdLocationIdIndication 0x23 |
|
119 #define EPbkFieldIdVOIP 0x24 |
|
120 #define EPbkFieldIdPushToTalk 0x25 |
|
121 #define EPbkFieldIdShareView 0x26 |
|
122 #define EPbkFieldIdSIPID 0x27 |
|
123 #define EPbkFieldIdCodTextID 0x28 |
|
124 #define EPbkFieldIdCodImageID 0x29 |
|
125 #define EPbkFieldIdMiddleName 0x2a |
|
126 #define EPbkFieldIdAssistantName 0x2b |
|
127 #define EPbkFieldIdAssistantNumber 0x2c |
|
128 #define EPbkFieldIdAnniversary 0x2d |
|
129 #define EPbkFieldIdSpouse 0x2e |
|
130 #define EPbkFieldIdChildren 0x2f |
|
131 #define EPbkFieldIdPrefix 0x30 |
|
132 #define EPbkFieldIdSuffix 0x31 |
|
133 #define EPbkFieldIdSyncronization 0x32 |
|
134 #define EPbkFieldIdDepartment 0x33 |
|
135 #define EPbkFieldIdCarNumber 0x34 |
|
136 #define EPbkFieldIdTopContact 0x35 |
|
137 #define EPbkFieldIdXsp 0x36 |
|
138 #define EPbkFieldIdGeo 0x37 |
|
139 #define EPbkFieldIdGeoHome 0x38 |
|
140 #define EPbkFieldIdGeoWork 0x39 |
|
141 |
|
142 #define KPbkFieldIdMask 0xff |
|
143 |
|
144 // Unique Phonebook field type group ids |
|
145 #define EPbkFieldGroupIdNone 0x00 |
|
146 #define EPbkFieldGroupIdPostalAddress 0x01 |
|
147 #define EPbkFieldGroupIdHomeAddress 0x02 |
|
148 #define EPbkFieldGroupIdCompanyAddress 0x03 |
|
149 #define EPbkFieldGroupIdFirstName 0x04 |
|
150 #define EPbkFieldGroupIdLastName 0x05 |
|
151 |
|
152 /// Maximum lengths for fields |
|
153 #define KPbkNameMaxLength 50 |
|
154 #define KPbkURLMaxLength 1000 |
|
155 #define KPbkAddressMaxLength 250 |
|
156 #define KPbkAddressSubFieldMaxLength 50 |
|
157 #define KPbkPostalCodeMaxLength 20 |
|
158 #define KPbkVOIPMaxLength 100 |
|
159 #define KPbkPOCMaxLength 100 |
|
160 #define KPbkSIPMaxLength 100 |
|
161 #define KPbkEMailAddressMaxLength 150 |
|
162 #define KPbkDTMFMaxLength 60 |
|
163 #define KPbkNoteMaxLength 1000 |
|
164 #define KPbkCodTextMaxLength 1000 |
|
165 #define KPbkMaxFileName 256 // must match KMaxFileName in E32std.h |
|
166 #define KPbkMDOMaxLength 10 |
|
167 |
|
168 // KPbkPhoneNumberMaxLength is deprecated. |
|
169 // Phonebook uses value from central repository |
|
170 #define KPbkPhoneNumberMaxLength 50 |
|
171 |
|
172 // Definitions for minimum and maximum date values |
|
173 #define KPbkDateMinDay 0 // from 0 to 27/28/29/30 inclusive |
|
174 #define KPbkDateMinMonth 0 // from 0 to 11 inclusive |
|
175 #define KPbkDateMinYear 0001 |
|
176 #define KPbkDateMaxDay 30 // from 0 to 27/28/29/30 inclusive |
|
177 #define KPbkDateMaxMonth 11 // from 0 to 11 inclusive |
|
178 #define KPbkDateMaxYear 2100 |
|
179 |
|
180 #ifdef __cplusplus |
|
181 /// Phonebook field type ordering group |
|
182 typedef TInt TPbkOrderingGroup; |
|
183 /// Phonebook field type ordering item |
|
184 typedef TInt TPbkOrderingItem; |
|
185 /// Phonebook additional field type ordering item |
|
186 typedef TInt TPbkAdditionalOrderingItem; |
|
187 /// Phonebook add new field ordering |
|
188 typedef TInt TPbkAddItemOrdering; |
|
189 #endif // __cplusplus |
|
190 |
|
191 #ifndef __PbkDoNotUseDeprecatedOrdering__ |
|
192 /** |
|
193 * Phonebook field type ordering groups. |
|
194 * @deprecated Deprecated in 2.6. |
|
195 */ |
|
196 enum TPbkOrderingGroup_deprecated |
|
197 { |
|
198 EPbkOrderingGroupNames = 1, |
|
199 EPbkOrderingGroupPhoneNumbers, |
|
200 EPbkOrderingGroupAddresses, |
|
201 EPbkOrderingGroupDates, |
|
202 EPbkOrderingGroupNotes, |
|
203 EPbkOrderingGroupImages, |
|
204 EPbkOrderingGroupIndicators |
|
205 }; |
|
206 |
|
207 /** |
|
208 * Phonebook field type ordering items. |
|
209 * @deprecated Deprecated in 2.6. |
|
210 */ |
|
211 enum TPbkOrderingItem_deprecated |
|
212 { |
|
213 // Names |
|
214 EPbkOrderingItemPrimaryName = 1, |
|
215 EPbkOrderingItemLastNameReading, |
|
216 EPbkOrderingItemSecondaryName, |
|
217 EPbkOrderingItemFirstNameReading, |
|
218 EPbkOrderingItemCompanyName, |
|
219 EPbkOrderingItemJobTitle, |
|
220 EPbkOrderingItemSecondName, |
|
221 |
|
222 // Phone numbers |
|
223 EPbkOrderingItemPhoneNumberGeneral, |
|
224 EPbkOrderingItemPhoneNumberHome, |
|
225 EPbkOrderingItemPhoneNumberWork, |
|
226 EPbkOrderingItemPhoneNumberMobile, |
|
227 EPbkOrderingItemPhoneNumberMobileHome, |
|
228 EPbkOrderingItemPhoneNumberMobileWork, |
|
229 EPbkOrderingItemPhoneNumberVideo, |
|
230 EPbkOrderingItemPhoneNumberVideoHome, |
|
231 EPbkOrderingItemPhoneNumberVideoWork, |
|
232 EPbkOrderingItemFaxNumber, |
|
233 EPbkOrderingItemFaxNumberHome, |
|
234 EPbkOrderingItemFaxNumberWork, |
|
235 EPbkOrderingItemPagerNumber, |
|
236 EPbkOrderingItemDTMFString, |
|
237 |
|
238 // Addresses |
|
239 EPbkOrderingItemEmailAddress, |
|
240 EPbkOrderingItemEmailAddressHome, |
|
241 EPbkOrderingItemEmailAddressWork, |
|
242 EPbkOrderingItemWVAddress, |
|
243 EPbkOrderingItemURL, |
|
244 EPbkOrderingItemURLHome, |
|
245 EPbkOrderingItemURLWork, |
|
246 EPbkOrderingItemAddress, |
|
247 EPbkOrderingItemAddressHome, |
|
248 EPbkOrderingItemAddressWork, |
|
249 EPbkOrderingItemPostalAddressPOBox, |
|
250 EPbkOrderingItemPostalAddressExtension, |
|
251 EPbkOrderingItemPostalAddressStreet, |
|
252 EPbkOrderingItemPostalAddressPostalCode, |
|
253 EPbkOrderingItemPostalAddressCity, |
|
254 EPbkOrderingItemPostalAddressState, |
|
255 EPbkOrderingItemPostalAddressCountry, |
|
256 EPbkOrderingItemHomeAddressPOBox, |
|
257 EPbkOrderingItemHomeAddressExtension, |
|
258 EPbkOrderingItemHomeAddressStreet, |
|
259 EPbkOrderingItemHomeAddressPostalCode, |
|
260 EPbkOrderingItemHomeAddressCity, |
|
261 EPbkOrderingItemHomeAddressState, |
|
262 EPbkOrderingItemHomeAddressCountry, |
|
263 EPbkOrderingItemCompanyAddressPOBox, |
|
264 EPbkOrderingItemCompanyAddressExtension, |
|
265 EPbkOrderingItemCompanyAddressStreet, |
|
266 EPbkOrderingItemCompanyAddressPostalCode, |
|
267 EPbkOrderingItemCompanyAddressCity, |
|
268 EPbkOrderingItemCompanyAddressState, |
|
269 EPbkOrderingItemCompanyAddressCountry, |
|
270 |
|
271 // Dates |
|
272 EPbkOrderingItemDate, |
|
273 |
|
274 // Notes |
|
275 EPbkOrderingItemNote, |
|
276 |
|
277 // Images |
|
278 EPbkOrderingItemPicture, |
|
279 EPbkOrderingItemThumbnailImage, |
|
280 |
|
281 // Geo |
|
282 EPbkOrderingItemPostalAddressGeo, |
|
283 EPbkOrderingItemHomeAddressGeo, |
|
284 EPbkOrderingItemCompanyAddressGeo, |
|
285 |
|
286 // Indicators |
|
287 EPbkOrderingItemRingingTone, |
|
288 EPbkOrderingItemLocationPrivacy, |
|
289 EPbkOrderingItemTopContact, |
|
290 EPbkOrderingItemXsp |
|
291 }; |
|
292 |
|
293 /** |
|
294 * Defines European name field ordering. Apac version changes the ordering |
|
295 * run-time. |
|
296 * @deprecated Deprecated in 2.6. |
|
297 */ |
|
298 enum TPbkAdditionalOrderingItem_deprecated |
|
299 { |
|
300 EPbkOrderingItemFirstName = EPbkOrderingItemPrimaryName, |
|
301 EPbkOrderingItemLastName = EPbkOrderingItemSecondaryName |
|
302 }; |
|
303 |
|
304 /** |
|
305 * Phonebook Add Item field ordering. |
|
306 * @deprecated Deprecated in 2.6. |
|
307 */ |
|
308 enum TPbkAddItemOrdering_deprecated |
|
309 { |
|
310 // Contact name |
|
311 EPbkAddItemOrderFirstName = 1, |
|
312 EPbkAddItemOrderFirstNameReading, |
|
313 EPbkAddItemOrderLastName, |
|
314 EPbkAddItemOrderLastNameReading, |
|
315 |
|
316 // Company info |
|
317 EPbkAddItemOrderCompanyName, |
|
318 EPbkAddItemOrderJobTitle, |
|
319 |
|
320 EPbkAddItemOrderSecondName, |
|
321 |
|
322 // Phone numbers |
|
323 EPbkAddItemOrderPhoneNumberGeneral, |
|
324 EPbkAddItemOrderPhoneNumberHome, |
|
325 EPbkAddItemOrderPhoneNumberWork, |
|
326 EPbkAddItemOrderPhoneNumberMobile, |
|
327 EPbkAddItemOrderPhoneNumberMobileHome, |
|
328 EPbkAddItemOrderPhoneNumberMobileWork, |
|
329 EPbkAddItemOrderPhoneNumberVideo, |
|
330 EPbkAddItemOrderPhoneNumberVideoHome, |
|
331 EPbkAddItemOrderPhoneNumberVideoWork, |
|
332 EPbkAddItemOrderPhoneNumberFax, |
|
333 EPbkAddItemOrderPhoneNumberFaxHome, |
|
334 EPbkAddItemOrderPhoneNumberFaxWork, |
|
335 EPbkAddItemOrderPhoneNumberPager, |
|
336 |
|
337 // Internet fields |
|
338 EPbkAddItemOrderEmail, |
|
339 EPbkAddItemOrderEmailHome, |
|
340 EPbkAddItemOrderEmailWork, |
|
341 EPbkAddItemOrderWVAddress, |
|
342 EPbkAddItemOrderURL, |
|
343 EPbkAddItemOrderURLHome, |
|
344 EPbkAddItemOrderURLWork, |
|
345 |
|
346 // General address |
|
347 EPbkAddItemOrderPostalAddress, // group for general address |
|
348 EPbkAddItemOrderPOBox, |
|
349 EPbkAddItemOrderExtensionAddress, |
|
350 EPbkAddItemOrderStreet, |
|
351 EPbkAddItemOrderPostalCode, |
|
352 EPbkAddItemOrderCity, |
|
353 EPbkAddItemOrderState, |
|
354 EPbkAddItemOrderCountry, |
|
355 |
|
356 // Home address |
|
357 EPbkAddItemOrderHomeAddress, // group for home address |
|
358 EPbkAddItemOrderPOBoxHome, |
|
359 EPbkAddItemOrderExtensionAddressHome, |
|
360 EPbkAddItemOrderStreetHome, |
|
361 EPbkAddItemOrderPostalCodeHome, |
|
362 EPbkAddItemOrderCityHome, |
|
363 EPbkAddItemOrderStateHome, |
|
364 EPbkAddItemOrderCountryHome, |
|
365 |
|
366 // Work address |
|
367 EPbkAddItemOrderCompanyAddress, // group for work address |
|
368 EPbkAddItemOrderPOBoxWork, |
|
369 EPbkAddItemOrderExtensionAddressWork, |
|
370 EPbkAddItemOrderStreetWork, |
|
371 EPbkAddItemOrderPostalCodeWork, |
|
372 EPbkAddItemOrderCityWork, |
|
373 EPbkAddItemOrderStateWork, |
|
374 EPbkAddItemOrderCountryWork, |
|
375 |
|
376 // Geo |
|
377 EPbkAddItemOrderGeo, |
|
378 EPbkAddItemOrderGeoHome, |
|
379 EPbkAddItemOrderGeoWork, |
|
380 |
|
381 // Additional items |
|
382 EPbkAddItemOrderDTMF, |
|
383 EPbkAddItemOrderDate, |
|
384 EPbkAddItemOrderNote, |
|
385 EPbkAddItemOrderNone |
|
386 }; |
|
387 |
|
388 #endif // __PbkDoNotUseDeprecatedOrdering__ |
|
389 |
|
390 /** |
|
391 * Phonebook field type information: |
|
392 * maximum number of fields per contact entry. |
|
393 */ |
|
394 enum TPbkFieldMultiplicity |
|
395 { |
|
396 EPbkFieldMultiplicityOne = 1, |
|
397 EPbkFieldMultiplicityMany = 2 |
|
398 }; |
|
399 |
|
400 /** |
|
401 * Phonebook field type information: editing mode of field. |
|
402 */ |
|
403 enum TPbkFieldEditMode |
|
404 { |
|
405 EPbkFieldEditModeAlpha = 1, |
|
406 EPbkFieldEditModeNumeric, |
|
407 EPbkFieldEditModeDate, |
|
408 EPbkFieldEditModeSelector, |
|
409 EPbkFieldEditModeTBD, |
|
410 EPbkFieldEditModeLatinOnly |
|
411 }; |
|
412 |
|
413 |
|
414 /** |
|
415 * Phonebook field type information: default editing character case. |
|
416 */ |
|
417 enum TPbkFieldDefaultCase |
|
418 { |
|
419 EPbkFieldDefaultCaseNone = 0, |
|
420 EPbkFieldDefaultCaseLower, |
|
421 EPbkFieldDefaultCaseText |
|
422 }; |
|
423 |
|
424 /** |
|
425 * Phonebook field type information: editor control type. |
|
426 */ |
|
427 enum TPbkFieldCtrlType |
|
428 { |
|
429 EPbkFieldCtrlTypeNone = 0, |
|
430 EPbkFieldCtrlTypeTextEditor, |
|
431 EPbkFieldCtrlTypeDateEditor, |
|
432 EPbkFieldCtrlTypeNumberEditor, |
|
433 EPbkFieldCtrlTypeChoiseItems |
|
434 }; |
|
435 |
|
436 /** |
|
437 * Phonebook field location information: work/home/none. |
|
438 */ |
|
439 enum TPbkFieldLocation |
|
440 { |
|
441 EPbkFieldLocationNone = 0, |
|
442 EPbkFieldLocationHome, |
|
443 EPbkFieldLocationWork |
|
444 }; |
|
445 |
|
446 /** |
|
447 * The storage type of data in Versit.dll. |
|
448 * Note that corresponding Uids exist in |
|
449 * vuid.h. |
|
450 */ |
|
451 enum TPbkVersitStorageType |
|
452 { |
|
453 EPbkVersitPropertyNULL = 0, |
|
454 EPbkVersitPropertyHBufC, |
|
455 EPbkVersitPropertyBinary, |
|
456 EPbkVersitPropertyCDesCArray, |
|
457 EPbkVersitPropertyMultiDateTime, |
|
458 EPbkVersitPropertyDateTime, |
|
459 EPbkVersitPropertyInt |
|
460 }; |
|
461 |
|
462 //////////////////////////////////////////////////////////// |
|
463 // Phonebook field type information flags |
|
464 |
|
465 /// No flags set |
|
466 #define KPbkFieldFlagNull 0x00000000 |
|
467 /// Field is included in the default template |
|
468 #define KPbkFieldFlagDefTemplate 0x00000001 |
|
469 /// Field can be added with "Add item" function |
|
470 #define KPbkFieldFlagUserCanAddField 0x00000002 |
|
471 /// field is not visible in editors |
|
472 #define KPbkFieldFlagDisableEdit 0x00000004 |
|
473 |
|
474 #endif // __PbkFields_HRH__ |
|
475 |
|
476 // End of File |