summaryrefslogtreecommitdiffabout
path: root/kabc/addressee.h
Unidiff
Diffstat (limited to 'kabc/addressee.h') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/addressee.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/kabc/addressee.h b/kabc/addressee.h
index 3ba7777..8baa888 100644
--- a/kabc/addressee.h
+++ b/kabc/addressee.h
@@ -1,841 +1,843 @@
1/*** Warning! This file has been generated by the script makeaddressee ***/ 1/*** Warning! This file has been generated by the script makeaddressee ***/
2/* 2/*
3 This file is part of libkabc. 3 This file is part of libkabc.
4 Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> 4 Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
5 5
6 This library is free software; you can redistribute it and/or 6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Library General Public 7 modify it under the terms of the GNU Library General Public
8 License as published by the Free Software Foundation; either 8 License as published by the Free Software Foundation; either
9 version 2 of the License, or (at your option) any later version. 9 version 2 of the License, or (at your option) any later version.
10 10
11 This library is distributed in the hope that it will be useful, 11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Library General Public License for more details. 14 Library General Public License for more details.
15 15
16 You should have received a copy of the GNU Library General Public License 16 You should have received a copy of the GNU Library General Public License
17 along with this library; see the file COPYING.LIB. If not, write to 17 along with this library; see the file COPYING.LIB. If not, write to
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. 19 Boston, MA 02111-1307, USA.
20*/ 20*/
21 21
22/* 22/*
23Enhanced Version of the file for platform independent KDE tools. 23Enhanced Version of the file for platform independent KDE tools.
24Copyright (c) 2004 Ulf Schenk 24Copyright (c) 2004 Ulf Schenk
25 25
26$Id$ 26$Id$
27*/ 27*/
28 28
29#ifndef KABC_ADDRESSEE_H 29#ifndef KABC_ADDRESSEE_H
30#define KABC_ADDRESSEE_H 30#define KABC_ADDRESSEE_H
31 31
32#include <qdatetime.h> 32#include <qdatetime.h>
33#include <qstring.h> 33#include <qstring.h>
34#include <qstringlist.h> 34#include <qstringlist.h>
35#include <qvaluelist.h> 35#include <qvaluelist.h>
36 36
37#include <ksharedptr.h> 37#include <ksharedptr.h>
38#include <kurl.h> 38#include <kurl.h>
39 39
40#include "address.h" 40#include "address.h"
41#include "agent.h" 41#include "agent.h"
42#include "geo.h" 42#include "geo.h"
43#include "key.h" 43#include "key.h"
44#include "phonenumber.h" 44#include "phonenumber.h"
45#include "picture.h" 45#include "picture.h"
46#include "secrecy.h" 46#include "secrecy.h"
47#include "sound.h" 47#include "sound.h"
48#include "timezone.h" 48#include "timezone.h"
49 49
50namespace KABC { 50namespace KABC {
51 51
52class Resource; 52class Resource;
53 53
54/** 54/**
55 @short address book entry 55 @short address book entry
56 56
57 This class represents an entry in the address book. 57 This class represents an entry in the address book.
58 58
59 The data of this class is implicitly shared. You can pass this class by value. 59 The data of this class is implicitly shared. You can pass this class by value.
60 60
61 If you need the name of a field for presenting it to the user you should use 61 If you need the name of a field for presenting it to the user you should use
62 the functions ending in Label(). They return a translated string which can be 62 the functions ending in Label(). They return a translated string which can be
63 used as label for the corresponding field. 63 used as label for the corresponding field.
64 64
65 About the name fields: 65 About the name fields:
66 66
67 givenName() is the first name and familyName() the last name. In some 67 givenName() is the first name and familyName() the last name. In some
68 countries the family name comes first, that's the reason for the 68 countries the family name comes first, that's the reason for the
69 naming. formattedName() is the full name with the correct formatting. 69 naming. formattedName() is the full name with the correct formatting.
70 It is used as an override, when the correct formatting can't be generated 70 It is used as an override, when the correct formatting can't be generated
71 from the other name fields automatically. 71 from the other name fields automatically.
72 72
73 realName() returns a fully formatted name(). It uses formattedName, if set, 73 realName() returns a fully formatted name(). It uses formattedName, if set,
74 otherwise it constucts the name from the name fields. As fallback, if 74 otherwise it constucts the name from the name fields. As fallback, if
75 nothing else is set it uses name(). 75 nothing else is set it uses name().
76 76
77 name() is the NAME type of RFC2426. It can be used as internal name for the 77 name() is the NAME type of RFC2426. It can be used as internal name for the
78 data enty, but shouldn't be used for displaying the data to the user. 78 data enty, but shouldn't be used for displaying the data to the user.
79 */ 79 */
80class Addressee 80class Addressee
81{ 81{
82 friend QDataStream &operator<<( QDataStream &, const Addressee & ); 82 friend QDataStream &operator<<( QDataStream &, const Addressee & );
83 friend QDataStream &operator>>( QDataStream &, Addressee & ); 83 friend QDataStream &operator>>( QDataStream &, Addressee & );
84 84
85 public: 85 public:
86 typedef QValueList<Addressee> List; 86 typedef QValueList<Addressee> List;
87 87
88 /** 88 /**
89 Construct an empty address book entry. 89 Construct an empty address book entry.
90 */ 90 */
91 Addressee(); 91 Addressee();
92 ~Addressee(); 92 ~Addressee();
93 93
94 Addressee( const Addressee & ); 94 Addressee( const Addressee & );
95 Addressee &operator=( const Addressee & ); 95 Addressee &operator=( const Addressee & );
96 96
97 bool operator==( const Addressee & ) const; 97 bool operator==( const Addressee & ) const;
98 bool operator!=( const Addressee & ) const; 98 bool operator!=( const Addressee & ) const;
99 // sync stuff 99 // sync stuff
100 void setTempSyncStat(int id); 100 void setTempSyncStat(int id);
101 int tempSyncStat() const; 101 int tempSyncStat() const;
102 void setIDStr( const QString & ); 102 void setIDStr( const QString & );
103 QString IDStr() const; 103 QString IDStr() const;
104 void setID( const QString &, const QString & ); 104 void setID( const QString &, const QString & );
105 QString getID( const QString & ); 105 QString getID( const QString & );
106 void setCsum( const QString &, const QString & ); 106 void setCsum( const QString &, const QString & );
107 QString getCsum( const QString & ); 107 QString getCsum( const QString & );
108 void removeID(const QString &); 108 void removeID(const QString &);
109 void computeCsum(const QString &dev); 109 void computeCsum(const QString &dev);
110 ulong getCsum4List( const QStringList & attList); 110 ulong getCsum4List( const QStringList & attList);
111 /** 111 /**
112 Return, if the address book entry is empty. 112 Return, if the address book entry is empty.
113 */ 113 */
114 bool isEmpty() const; 114 bool isEmpty() const;
115 void setExternalUID( const QString &id ); 115 void setExternalUID( const QString &id );
116 QString externalUID() const; 116 QString externalUID() const;
117 void setOriginalExternalUID( const QString &id );
118 QString originalExternalUID() const;
117 void mergeContact( const Addressee& ad ); 119 void mergeContact( const Addressee& ad );
118 /** 120 /**
119 Set unique identifier. 121 Set unique identifier.
120 */ 122 */
121 void setUid( const QString &uid ); 123 void setUid( const QString &uid );
122 /** 124 /**
123 Return unique identifier. 125 Return unique identifier.
124 */ 126 */
125 QString uid() const; 127 QString uid() const;
126 /** 128 /**
127 Return translated label for uid field. 129 Return translated label for uid field.
128 */ 130 */
129 static QString uidLabel(); 131 static QString uidLabel();
130 132
131 /** 133 /**
132 Set name. 134 Set name.
133 */ 135 */
134 void setName( const QString &name ); 136 void setName( const QString &name );
135 /** 137 /**
136 Return name. 138 Return name.
137 */ 139 */
138 QString name() const; 140 QString name() const;
139 /** 141 /**
140 Return translated label for name field. 142 Return translated label for name field.
141 */ 143 */
142 static QString nameLabel(); 144 static QString nameLabel();
143 145
144 /** 146 /**
145 Set formatted name. 147 Set formatted name.
146 */ 148 */
147 void setFormattedName( const QString &formattedName ); 149 void setFormattedName( const QString &formattedName );
148 /** 150 /**
149 Return formatted name. 151 Return formatted name.
150 */ 152 */
151 QString formattedName() const; 153 QString formattedName() const;
152 /** 154 /**
153 Return translated label for formattedName field. 155 Return translated label for formattedName field.
154 */ 156 */
155 static QString formattedNameLabel(); 157 static QString formattedNameLabel();
156 158
157 /** 159 /**
158 Set family name. 160 Set family name.
159 */ 161 */
160 void setFamilyName( const QString &familyName ); 162 void setFamilyName( const QString &familyName );
161 /** 163 /**
162 Return family name. 164 Return family name.
163 */ 165 */
164 QString familyName() const; 166 QString familyName() const;
165 /** 167 /**
166 Return translated label for familyName field. 168 Return translated label for familyName field.
167 */ 169 */
168 static QString familyNameLabel(); 170 static QString familyNameLabel();
169 171
170 /** 172 /**
171 Set given name. 173 Set given name.
172 */ 174 */
173 void setGivenName( const QString &givenName ); 175 void setGivenName( const QString &givenName );
174 /** 176 /**
175 Return given name. 177 Return given name.
176 */ 178 */
177 QString givenName() const; 179 QString givenName() const;
178 /** 180 /**
179 Return translated label for givenName field. 181 Return translated label for givenName field.
180 */ 182 */
181 static QString givenNameLabel(); 183 static QString givenNameLabel();
182 184
183 /** 185 /**
184 Set additional names. 186 Set additional names.
185 */ 187 */
186 void setAdditionalName( const QString &additionalName ); 188 void setAdditionalName( const QString &additionalName );
187 /** 189 /**
188 Return additional names. 190 Return additional names.
189 */ 191 */
190 QString additionalName() const; 192 QString additionalName() const;
191 /** 193 /**
192 Return translated label for additionalName field. 194 Return translated label for additionalName field.
193 */ 195 */
194 static QString additionalNameLabel(); 196 static QString additionalNameLabel();
195 197
196 /** 198 /**
197 Set honorific prefixes. 199 Set honorific prefixes.
198 */ 200 */
199 void setPrefix( const QString &prefix ); 201 void setPrefix( const QString &prefix );
200 /** 202 /**
201 Return honorific prefixes. 203 Return honorific prefixes.
202 */ 204 */
203 QString prefix() const; 205 QString prefix() const;
204 /** 206 /**
205 Return translated label for prefix field. 207 Return translated label for prefix field.
206 */ 208 */
207 static QString prefixLabel(); 209 static QString prefixLabel();
208 210
209 /** 211 /**
210 Set honorific suffixes. 212 Set honorific suffixes.
211 */ 213 */
212 void setSuffix( const QString &suffix ); 214 void setSuffix( const QString &suffix );
213 /** 215 /**
214 Return honorific suffixes. 216 Return honorific suffixes.
215 */ 217 */
216 QString suffix() const; 218 QString suffix() const;
217 /** 219 /**
218 Return translated label for suffix field. 220 Return translated label for suffix field.
219 */ 221 */
220 static QString suffixLabel(); 222 static QString suffixLabel();
221 223
222 /** 224 /**
223 Set nick name. 225 Set nick name.
224 */ 226 */
225 void setNickName( const QString &nickName ); 227 void setNickName( const QString &nickName );
226 /** 228 /**
227 Return nick name. 229 Return nick name.
228 */ 230 */
229 QString nickName() const; 231 QString nickName() const;
230 /** 232 /**
231 Return translated label for nickName field. 233 Return translated label for nickName field.
232 */ 234 */
233 static QString nickNameLabel(); 235 static QString nickNameLabel();
234 236
235 /** 237 /**
236 Set birthday. 238 Set birthday.
237 */ 239 */
238 void setBirthday( const QDateTime &birthday ); 240 void setBirthday( const QDateTime &birthday );
239 /** 241 /**
240 Return birthday. 242 Return birthday.
241 */ 243 */
242 QDateTime birthday() const; 244 QDateTime birthday() const;
243 /** 245 /**
244 Return translated label for birthday field. 246 Return translated label for birthday field.
245 */ 247 */
246 static QString birthdayLabel(); 248 static QString birthdayLabel();
247 249
248 /** 250 /**
249 Return translated label for homeAddressStreet field. 251 Return translated label for homeAddressStreet field.
250 */ 252 */
251 static QString homeAddressStreetLabel(); 253 static QString homeAddressStreetLabel();
252 254
253 /** 255 /**
254 Return translated label for homeAddressLocality field. 256 Return translated label for homeAddressLocality field.
255 */ 257 */
256 static QString homeAddressLocalityLabel(); 258 static QString homeAddressLocalityLabel();
257 259
258 /** 260 /**
259 Return translated label for homeAddressRegion field. 261 Return translated label for homeAddressRegion field.
260 */ 262 */
261 static QString homeAddressRegionLabel(); 263 static QString homeAddressRegionLabel();
262 264
263 /** 265 /**
264 Return translated label for homeAddressPostalCode field. 266 Return translated label for homeAddressPostalCode field.
265 */ 267 */
266 static QString homeAddressPostalCodeLabel(); 268 static QString homeAddressPostalCodeLabel();
267 269
268 /** 270 /**
269 Return translated label for homeAddressCountry field. 271 Return translated label for homeAddressCountry field.
270 */ 272 */
271 static QString homeAddressCountryLabel(); 273 static QString homeAddressCountryLabel();
272 274
273 /** 275 /**
274 Return translated label for homeAddressLabel field. 276 Return translated label for homeAddressLabel field.
275 */ 277 */
276 static QString homeAddressLabelLabel(); 278 static QString homeAddressLabelLabel();
277 279
278 /** 280 /**
279 Return translated label for businessAddressStreet field. 281 Return translated label for businessAddressStreet field.
280 */ 282 */
281 static QString businessAddressStreetLabel(); 283 static QString businessAddressStreetLabel();
282 284
283 /** 285 /**
284 Return translated label for businessAddressLocality field. 286 Return translated label for businessAddressLocality field.
285 */ 287 */
286 static QString businessAddressLocalityLabel(); 288 static QString businessAddressLocalityLabel();
287 289
288 /** 290 /**
289 Return translated label for businessAddressRegion field. 291 Return translated label for businessAddressRegion field.
290 */ 292 */
291 static QString businessAddressRegionLabel(); 293 static QString businessAddressRegionLabel();
292 294
293 /** 295 /**
294 Return translated label for businessAddressPostalCode field. 296 Return translated label for businessAddressPostalCode field.
295 */ 297 */
296 static QString businessAddressPostalCodeLabel(); 298 static QString businessAddressPostalCodeLabel();
297 299
298 /** 300 /**
299 Return translated label for businessAddressCountry field. 301 Return translated label for businessAddressCountry field.
300 */ 302 */
301 static QString businessAddressCountryLabel(); 303 static QString businessAddressCountryLabel();
302 304
303 /** 305 /**
304 Return translated label for businessAddressLabel field. 306 Return translated label for businessAddressLabel field.
305 */ 307 */
306 static QString businessAddressLabelLabel(); 308 static QString businessAddressLabelLabel();
307 309
308 /** 310 /**
309 Return translated label for homePhone field. 311 Return translated label for homePhone field.
310 */ 312 */
311 static QString homePhoneLabel(); 313 static QString homePhoneLabel();
312 314
313 /** 315 /**
314 Return translated label for businessPhone field. 316 Return translated label for businessPhone field.
315 */ 317 */
316 static QString businessPhoneLabel(); 318 static QString businessPhoneLabel();
317 319
318 /** 320 /**
319 Return translated label for mobilePhone field. 321 Return translated label for mobilePhone field.
320 */ 322 */
321 static QString mobilePhoneLabel(); 323 static QString mobilePhoneLabel();
322 324
323 /** 325 /**
324 Return translated label for homeFax field. 326 Return translated label for homeFax field.
325 */ 327 */
326 static QString homeFaxLabel(); 328 static QString homeFaxLabel();
327 329
328 /** 330 /**
329 Return translated label for businessFax field. 331 Return translated label for businessFax field.
330 */ 332 */
331 static QString businessFaxLabel(); 333 static QString businessFaxLabel();
332 334
333 /** 335 /**
334 Return translated label for carPhone field. 336 Return translated label for carPhone field.
335 */ 337 */
336 static QString carPhoneLabel(); 338 static QString carPhoneLabel();
337 339
338 /** 340 /**
339 Return translated label for isdn field. 341 Return translated label for isdn field.
340 */ 342 */
341 static QString isdnLabel(); 343 static QString isdnLabel();
342 344
343 /** 345 /**
344 Return translated label for pager field. 346 Return translated label for pager field.
345 */ 347 */
346 static QString pagerLabel(); 348 static QString pagerLabel();
347 349
348 /** 350 /**
349 Return translated label for sip field. 351 Return translated label for sip field.
350 */ 352 */
351 static QString sipLabel(); 353 static QString sipLabel();
352 354
353 /** 355 /**
354 Return translated label for email field. 356 Return translated label for email field.
355 */ 357 */
356 static QString emailLabel(); 358 static QString emailLabel();
357 359
358 /** 360 /**
359 Set mail client. 361 Set mail client.
360 */ 362 */
361 void setMailer( const QString &mailer ); 363 void setMailer( const QString &mailer );
362 /** 364 /**
363 Return mail client. 365 Return mail client.
364 */ 366 */
365 QString mailer() const; 367 QString mailer() const;
366 /** 368 /**
367 Return translated label for mailer field. 369 Return translated label for mailer field.
368 */ 370 */
369 static QString mailerLabel(); 371 static QString mailerLabel();
370 372
371 /** 373 /**
372 Set time zone. 374 Set time zone.
373 */ 375 */
374 void setTimeZone( const TimeZone &timeZone ); 376 void setTimeZone( const TimeZone &timeZone );
375 /** 377 /**
376 Return time zone. 378 Return time zone.
377 */ 379 */
378 TimeZone timeZone() const; 380 TimeZone timeZone() const;
379 /** 381 /**
380 Return translated label for timeZone field. 382 Return translated label for timeZone field.
381 */ 383 */
382 static QString timeZoneLabel(); 384 static QString timeZoneLabel();
383 385
384 /** 386 /**
385 Set geographic position. 387 Set geographic position.
386 */ 388 */
387 void setGeo( const Geo &geo ); 389 void setGeo( const Geo &geo );
388 /** 390 /**
389 Return geographic position. 391 Return geographic position.
390 */ 392 */
391 Geo geo() const; 393 Geo geo() const;
392 /** 394 /**
393 Return translated label for geo field. 395 Return translated label for geo field.
394 */ 396 */
395 static QString geoLabel(); 397 static QString geoLabel();
396 398
397 /** 399 /**
398 Set title. 400 Set title.
399 */ 401 */
400 void setTitle( const QString &title ); 402 void setTitle( const QString &title );
401 /** 403 /**
402 Return title. 404 Return title.
403 */ 405 */
404 QString title() const; 406 QString title() const;
405 /** 407 /**
406 Return translated label for title field. 408 Return translated label for title field.
407 */ 409 */
408 static QString titleLabel(); 410 static QString titleLabel();
409 411
410 /** 412 /**
411 Set role. 413 Set role.
412 */ 414 */
413 void setRole( const QString &role ); 415 void setRole( const QString &role );
414 /** 416 /**
415 Return role. 417 Return role.
416 */ 418 */
417 QString role() const; 419 QString role() const;
418 /** 420 /**
419 Return translated label for role field. 421 Return translated label for role field.
420 */ 422 */
421 static QString roleLabel(); 423 static QString roleLabel();
422 424
423 /** 425 /**
424 Set organization. 426 Set organization.
425 */ 427 */
426 void setOrganization( const QString &organization ); 428 void setOrganization( const QString &organization );
427 /** 429 /**
428 Return organization. 430 Return organization.
429 */ 431 */
430 QString organization() const; 432 QString organization() const;
431 /** 433 /**
432 Return translated label for organization field. 434 Return translated label for organization field.
433 */ 435 */
434 static QString organizationLabel(); 436 static QString organizationLabel();
435 437
436 /** 438 /**
437 Set note. 439 Set note.
438 */ 440 */
439 void setNote( const QString &note ); 441 void setNote( const QString &note );
440 /** 442 /**
441 Return note. 443 Return note.
442 */ 444 */
443 QString note() const; 445 QString note() const;
444 /** 446 /**
445 Return translated label for note field. 447 Return translated label for note field.
446 */ 448 */
447 static QString noteLabel(); 449 static QString noteLabel();
448 450
449 /** 451 /**
450 Set product identifier. 452 Set product identifier.
451 */ 453 */
452 void setProductId( const QString &productId ); 454 void setProductId( const QString &productId );
453 /** 455 /**
454 Return product identifier. 456 Return product identifier.
455 */ 457 */
456 QString productId() const; 458 QString productId() const;
457 /** 459 /**
458 Return translated label for productId field. 460 Return translated label for productId field.
459 */ 461 */
460 static QString productIdLabel(); 462 static QString productIdLabel();
461 463
462 /** 464 /**
463 Set revision date. 465 Set revision date.
464 */ 466 */
465 void setRevision( const QDateTime &revision ); 467 void setRevision( const QDateTime &revision );
466 /** 468 /**
467 Return revision date. 469 Return revision date.
468 */ 470 */
469 QDateTime revision() const; 471 QDateTime revision() const;
470 /** 472 /**
471 Return translated label for revision field. 473 Return translated label for revision field.
472 */ 474 */
473 static QString revisionLabel(); 475 static QString revisionLabel();
474 476
475 /** 477 /**
476 Set sort string. 478 Set sort string.
477 */ 479 */
478 void setSortString( const QString &sortString ); 480 void setSortString( const QString &sortString );
479 /** 481 /**
480 Return sort string. 482 Return sort string.
481 */ 483 */
482 QString sortString() const; 484 QString sortString() const;
483 /** 485 /**
484 Return translated label for sortString field. 486 Return translated label for sortString field.
485 */ 487 */
486 static QString sortStringLabel(); 488 static QString sortStringLabel();
487 489
488 /** 490 /**
489 Set URL. 491 Set URL.
490 */ 492 */
491 void setUrl( const KURL &url ); 493 void setUrl( const KURL &url );
492 /** 494 /**
493 Return URL. 495 Return URL.
494 */ 496 */
495 KURL url() const; 497 KURL url() const;
496 /** 498 /**
497 Return translated label for url field. 499 Return translated label for url field.
498 */ 500 */
499 static QString urlLabel(); 501 static QString urlLabel();
500 502
501 /** 503 /**
502 Set security class. 504 Set security class.
503 */ 505 */
504 void setSecrecy( const Secrecy &secrecy ); 506 void setSecrecy( const Secrecy &secrecy );
505 /** 507 /**
506 Return security class. 508 Return security class.
507 */ 509 */
508 Secrecy secrecy() const; 510 Secrecy secrecy() const;
509 /** 511 /**
510 Return translated label for secrecy field. 512 Return translated label for secrecy field.
511 */ 513 */
512 static QString secrecyLabel(); 514 static QString secrecyLabel();
513 515
514 /** 516 /**
515 Set logo. 517 Set logo.
516 */ 518 */
517 void setLogo( const Picture &logo ); 519 void setLogo( const Picture &logo );
518 /** 520 /**
519 Return logo. 521 Return logo.
520 */ 522 */
521 Picture logo() const; 523 Picture logo() const;
522 /** 524 /**
523 Return translated label for logo field. 525 Return translated label for logo field.
524 */ 526 */
525 static QString logoLabel(); 527 static QString logoLabel();
526 528
527 /** 529 /**
528 Set photo. 530 Set photo.
529 */ 531 */
530 void setPhoto( const Picture &photo ); 532 void setPhoto( const Picture &photo );
531 /** 533 /**
532 Return photo. 534 Return photo.
533 */ 535 */
534 Picture photo() const; 536 Picture photo() const;
535 /** 537 /**
536 Return translated label for photo field. 538 Return translated label for photo field.
537 */ 539 */
538 static QString photoLabel(); 540 static QString photoLabel();
539 541
540 /** 542 /**
541 Set sound. 543 Set sound.
542 */ 544 */
543 void setSound( const Sound &sound ); 545 void setSound( const Sound &sound );
544 /** 546 /**
545 Return sound. 547 Return sound.
546 */ 548 */
547 Sound sound() const; 549 Sound sound() const;
548 /** 550 /**
549 Return translated label for sound field. 551 Return translated label for sound field.
550 */ 552 */
551 static QString soundLabel(); 553 static QString soundLabel();
552 554
553 /** 555 /**
554 Set agent. 556 Set agent.
555 */ 557 */
556 void setAgent( const Agent &agent ); 558 void setAgent( const Agent &agent );
557 /** 559 /**
558 Return agent. 560 Return agent.
559 */ 561 */
560 Agent agent() const; 562 Agent agent() const;
561 /** 563 /**
562 Return translated label for agent field. 564 Return translated label for agent field.
563 */ 565 */
564 static QString agentLabel(); 566 static QString agentLabel();
565 567
566 /** 568 /**
567 Set name fields by parsing the given string and trying to associate the 569 Set name fields by parsing the given string and trying to associate the
568 parts of the string with according fields. This function should probably 570 parts of the string with according fields. This function should probably
569 be a bit more clever. 571 be a bit more clever.
570 */ 572 */
571 void setNameFromString( const QString & ); 573 void setNameFromString( const QString & );
572 574
573 /** 575 /**
574 Return the name of the addressee. This is calculated from all the name 576 Return the name of the addressee. This is calculated from all the name
575 fields. 577 fields.
576 */ 578 */
577 QString realName() const; 579 QString realName() const;
578 580
579 /** 581 /**
580 Return the name that consists of all name parts. 582 Return the name that consists of all name parts.
581 */ 583 */
582 QString assembledName() const; 584 QString assembledName() const;
583 585
584 /** 586 /**
585 Return email address including real name. 587 Return email address including real name.
586 588
587 @param email Email address to be used to construct the full email string. 589 @param email Email address to be used to construct the full email string.
588 If this is QString::null the preferred email address is used. 590 If this is QString::null the preferred email address is used.
589 */ 591 */
590 QString fullEmail( const QString &email=QString::null ) const; 592 QString fullEmail( const QString &email=QString::null ) const;
591 593
592 /** 594 /**
593 Insert an email address. If the email address already exists in this 595 Insert an email address. If the email address already exists in this
594 addressee it is not duplicated. 596 addressee it is not duplicated.
595 597
596 @param email Email address 598 @param email Email address
597 @param preferred Set to true, if this is the preferred email address of 599 @param preferred Set to true, if this is the preferred email address of
598 the addressee. 600 the addressee.
599 */ 601 */
600 void insertEmail( const QString &email, bool preferred=false ); 602 void insertEmail( const QString &email, bool preferred=false );
601 603
602 /** 604 /**
603 Remove email address. If the email address doesn't exist, nothing happens. 605 Remove email address. If the email address doesn't exist, nothing happens.
604 */ 606 */
605 void removeEmail( const QString &email ); 607 void removeEmail( const QString &email );
606 608
607 /** 609 /**
608 Return preferred email address. This is the first email address or the 610 Return preferred email address. This is the first email address or the
609 last one added with @ref insertEmail() with a set preferred parameter. 611 last one added with @ref insertEmail() with a set preferred parameter.
610 */ 612 */
611 QString preferredEmail() const; 613 QString preferredEmail() const;
612 614
613 /** 615 /**
614 Return list of all email addresses. 616 Return list of all email addresses.
615 */ 617 */
616 QStringList emails() const; 618 QStringList emails() const;
617 619
618 /** 620 /**
619 Set the emails to @param. 621 Set the emails to @param.
620 The first email address gets the preferred one! 622 The first email address gets the preferred one!
621 @param list The list of email addresses. 623 @param list The list of email addresses.
622 */ 624 */
623 void setEmails( const QStringList& list); 625 void setEmails( const QStringList& list);
624 626
625 /** 627 /**
626 Insert a phone number. If a phone number with the same id already exists 628 Insert a phone number. If a phone number with the same id already exists
627 in this addressee it is not duplicated. 629 in this addressee it is not duplicated.
628 */ 630 */
629 void insertPhoneNumber( const PhoneNumber &phoneNumber ); 631 void insertPhoneNumber( const PhoneNumber &phoneNumber );
630 632
631 /** 633 /**
632 Remove phone number. If no phone number with the given id exists for this 634 Remove phone number. If no phone number with the given id exists for this
633 addresse nothing happens. 635 addresse nothing happens.
634 */ 636 */
635 void removePhoneNumber( const PhoneNumber &phoneNumber ); 637 void removePhoneNumber( const PhoneNumber &phoneNumber );
636 638
637 /** 639 /**
638 Return phone number, which matches the given type. 640 Return phone number, which matches the given type.
639 */ 641 */
640 PhoneNumber phoneNumber( int type ) const; 642 PhoneNumber phoneNumber( int type ) const;
641 643
642 /** 644 /**
643 Return list of all phone numbers. 645 Return list of all phone numbers.
644 */ 646 */
645 PhoneNumber::List phoneNumbers() const; 647 PhoneNumber::List phoneNumbers() const;
646 648
647 /** 649 /**
648 Return list of phone numbers with a special type. 650 Return list of phone numbers with a special type.
649 */ 651 */
650 PhoneNumber::List phoneNumbers( int type ) const; 652 PhoneNumber::List phoneNumbers( int type ) const;
651 653
652 /** 654 /**
653 Return phone number with the given id. 655 Return phone number with the given id.
654 */ 656 */
655 PhoneNumber findPhoneNumber( const QString &id ) const; 657 PhoneNumber findPhoneNumber( const QString &id ) const;
656 658
657 /** 659 /**
658 Insert a key. If a key with the same id already exists 660 Insert a key. If a key with the same id already exists
659 in this addressee it is not duplicated. 661 in this addressee it is not duplicated.
660 */ 662 */
661 void insertKey( const Key &key ); 663 void insertKey( const Key &key );
662 664
663 /** 665 /**
664 Remove a key. If no key with the given id exists for this 666 Remove a key. If no key with the given id exists for this
665 addresse nothing happens. 667 addresse nothing happens.
666 */ 668 */
667 void removeKey( const Key &key ); 669 void removeKey( const Key &key );
668 670
669 /** 671 /**
670 Return key, which matches the given type. 672 Return key, which matches the given type.
671 If @p type == Key::Custom you can specify a string 673 If @p type == Key::Custom you can specify a string
672 that should match. If you leave the string empty, the first 674 that should match. If you leave the string empty, the first
673 key with a custom value is returned. 675 key with a custom value is returned.
674 */ 676 */
675 Key key( int type, QString customTypeString = QString::null ) const; 677 Key key( int type, QString customTypeString = QString::null ) const;
676 678
677 /** 679 /**
678 Return list of all keys. 680 Return list of all keys.
679 */ 681 */
680 Key::List keys() const; 682 Key::List keys() const;
681 683
682 /** 684 /**
683 Set the list of keys 685 Set the list of keys
684 @param keys The keys to be set. 686 @param keys The keys to be set.
685 */ 687 */
686 void setKeys( const Key::List& keys); 688 void setKeys( const Key::List& keys);
687 689
688 /** 690 /**
689 Return list of keys with a special type. 691 Return list of keys with a special type.
690 If @p type == Key::Custom you can specify a string 692 If @p type == Key::Custom you can specify a string
691 that should match. If you leave the string empty, all custom 693 that should match. If you leave the string empty, all custom
692 keys will be returned. 694 keys will be returned.
693 */ 695 */
694 Key::List keys( int type, QString customTypeString = QString::null ) const; 696 Key::List keys( int type, QString customTypeString = QString::null ) const;
695 697
696 /** 698 /**
697 Return key with the given id. 699 Return key with the given id.
698 */ 700 */
699 Key findKey( const QString &id ) const; 701 Key findKey( const QString &id ) const;
700 702
701 /** 703 /**
702 Insert an address. If an address with the same id already exists 704 Insert an address. If an address with the same id already exists
703 in this addressee it is not duplicated. 705 in this addressee it is not duplicated.
704 */ 706 */
705 void insertAddress( const Address &address ); 707 void insertAddress( const Address &address );
706 708
707 /** 709 /**
708 Remove address. If no address with the given id exists for this 710 Remove address. If no address with the given id exists for this
709 addresse nothing happens. 711 addresse nothing happens.
710 */ 712 */
711 void removeAddress( const Address &address ); 713 void removeAddress( const Address &address );
712 714
713 /** 715 /**
714 Return address, which matches the given type. 716 Return address, which matches the given type.
715 */ 717 */
716 Address address( int type ) const; 718 Address address( int type ) const;
717 719
718 /** 720 /**
719 Return list of all addresses. 721 Return list of all addresses.
720 */ 722 */
721 Address::List addresses() const; 723 Address::List addresses() const;
722 724
723 /** 725 /**
724 Return list of addresses with a special type. 726 Return list of addresses with a special type.
725 */ 727 */
726 Address::List addresses( int type ) const; 728 Address::List addresses( int type ) const;
727 729
728 /** 730 /**
729 Return address with the given id. 731 Return address with the given id.
730 */ 732 */
731 Address findAddress( const QString &id ) const; 733 Address findAddress( const QString &id ) const;
732 734
733 /** 735 /**
734 Insert category. If the category already exists it is not duplicated. 736 Insert category. If the category already exists it is not duplicated.
735 */ 737 */
736 void insertCategory( const QString & ); 738 void insertCategory( const QString & );
737 739
738 /** 740 /**
739 Remove category. 741 Remove category.
740 */ 742 */
741 void removeCategory( const QString & ); 743 void removeCategory( const QString & );
742 744
743 /** 745 /**
744 Return, if addressee has the given category. 746 Return, if addressee has the given category.
745 */ 747 */
746 bool hasCategory( const QString & ) const; 748 bool hasCategory( const QString & ) const;
747 749
748 /** 750 /**
749 Set categories to given value. 751 Set categories to given value.
750 */ 752 */
751 void setCategories( const QStringList & ); 753 void setCategories( const QStringList & );
752 754
753 /** 755 /**
754 Return list of all set categories. 756 Return list of all set categories.
755 */ 757 */
756 QStringList categories() const; 758 QStringList categories() const;
757 759
758 /** 760 /**
759 Insert custom entry. The entry is identified by the name of the inserting 761 Insert custom entry. The entry is identified by the name of the inserting
760 application and a unique name. If an entry with the given app and name 762 application and a unique name. If an entry with the given app and name
761 already exists its value is replaced with the new given value. 763 already exists its value is replaced with the new given value.
762 */ 764 */
763 void insertCustom( const QString &app, const QString &name, 765 void insertCustom( const QString &app, const QString &name,
764 const QString &value ); 766 const QString &value );
765 767
766 /** 768 /**
767 Remove custom entry. 769 Remove custom entry.
768 */ 770 */
769 void removeCustom( const QString &app, const QString &name ); 771 void removeCustom( const QString &app, const QString &name );
770 772
771 /** 773 /**
772 Return value of custom entry, identified by app and entry name. 774 Return value of custom entry, identified by app and entry name.
773 */ 775 */
774 QString custom( const QString &app, const QString &name ) const; 776 QString custom( const QString &app, const QString &name ) const;
775 777
776 /** 778 /**
777 Set all custom entries. 779 Set all custom entries.
778 */ 780 */
779 void setCustoms( const QStringList & ); 781 void setCustoms( const QStringList & );
780 782
781 /** 783 /**
782 Return list of all custom entries. 784 Return list of all custom entries.
783 */ 785 */
784 QStringList customs() const; 786 QStringList customs() const;
785 787
786 /** 788 /**
787 Parse full email address. The result is given back in fullName and email. 789 Parse full email address. The result is given back in fullName and email.
788 */ 790 */
789 static void parseEmailAddress( const QString &rawEmail, QString &fullName, 791 static void parseEmailAddress( const QString &rawEmail, QString &fullName,
790 QString &email ); 792 QString &email );
791 793
792 /** 794 /**
793 Debug output. 795 Debug output.
794 */ 796 */
795 void dump() const; 797 void dump() const;
796 798
797 /** 799 /**
798 Returns string representation of the addressee. 800 Returns string representation of the addressee.
799 */ 801 */
800 QString asString() const; 802 QString asString() const;
801 803
802 /** 804 /**
803 Set resource where the addressee is from. 805 Set resource where the addressee is from.
804 */ 806 */
805 void setResource( Resource *resource ); 807 void setResource( Resource *resource );
806 808
807 /** 809 /**
808 Return pointer to resource. 810 Return pointer to resource.
809 */ 811 */
810 Resource *resource() const; 812 Resource *resource() const;
811 813
812 /** 814 /**
813 Return resourcelabel. 815 Return resourcelabel.
814 */ 816 */
815 //US 817 //US
816 static QString resourceLabel(); 818 static QString resourceLabel();
817 819
818 /** 820 /**
819 Mark addressee as changed. 821 Mark addressee as changed.
820 */ 822 */
821 void setChanged( bool value ); 823 void setChanged( bool value );
822 824
823 /** 825 /**
824 Return whether the addressee is changed. 826 Return whether the addressee is changed.
825 */ 827 */
826 bool changed() const; 828 bool changed() const;
827 829
828 private: 830 private:
829 Addressee copy(); 831 Addressee copy();
830 void detach(); 832 void detach();
831 833
832 struct AddresseeData; 834 struct AddresseeData;
833 mutable KSharedPtr<AddresseeData> mData; 835 mutable KSharedPtr<AddresseeData> mData;
834}; 836};
835 837
836QDataStream &operator<<( QDataStream &, const Addressee & ); 838QDataStream &operator<<( QDataStream &, const Addressee & );
837QDataStream &operator>>( QDataStream &, Addressee & ); 839QDataStream &operator>>( QDataStream &, Addressee & );
838 840
839} 841}
840 842
841#endif 843#endif