• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepimlibs API Reference
  • KDE Home
  • Contact Us
 

kabc

  • sources
  • kde-4.12
  • kdepimlibs
  • kabc
field.cpp
1 /*
2  This file is part of libkabc.
3  Copyright (c) 2002 Cornelius Schumacher <schumacher@kde.org>
4 
5  This library is free software; you can redistribute it and/or
6  modify it under the terms of the GNU Library General Public
7  License as published by the Free Software Foundation; either
8  version 2 of the License, or (at your option) any later version.
9 
10  This library is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Library General Public License for more details.
14 
15  You should have received a copy of the GNU Library General Public License
16  along with this library; see the file COPYING.LIB. If not, write to
17  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18  Boston, MA 02110-1301, USA.
19 */
20 
21 #include <klocale.h>
22 #include <klocalizedstring.h>
23 #include <kconfig.h>
24 #include <kglobal.h>
25 #include <kconfiggroup.h>
26 
27 #include "field.h"
28 
29 using namespace KABC;
30 
31 class Field::Private
32 {
33  public:
34  Private( int fieldId, int category = 0,
35  const QString &label = QString(),
36  const QString &key = QString(),
37  const QString &app = QString() )
38  : mFieldId( fieldId ), mCategory( category ), mLabel( label ),
39  mKey( key ), mApp( app ) {}
40 
41  enum FieldId
42  {
43  CustomField,
44  FormattedName,
45  FamilyName,
46  GivenName,
47  AdditionalName,
48  Prefix,
49  Suffix,
50  NickName,
51  Birthday,
52  HomeAddressStreet,
53  HomeAddressPostOfficeBox,
54  HomeAddressLocality,
55  HomeAddressRegion,
56  HomeAddressPostalCode,
57  HomeAddressCountry,
58  HomeAddressLabel,
59  BusinessAddressStreet,
60  BusinessAddressPostOfficeBox,
61  BusinessAddressLocality,
62  BusinessAddressRegion,
63  BusinessAddressPostalCode,
64  BusinessAddressCountry,
65  BusinessAddressLabel,
66  HomePhone,
67  BusinessPhone,
68  MobilePhone,
69  HomeFax,
70  BusinessFax,
71  CarPhone,
72  Isdn,
73  Pager,
74  Email,
75  Mailer,
76  Title,
77  Role,
78  Organization,
79  Department,
80  Note,
81  Url
82  };
83 
84  int fieldId() { return mFieldId; }
85  int category() { return mCategory; }
86 
87  QString label() { return mLabel; }
88  QString key() { return mKey; }
89  QString app() { return mApp; }
90 
91  static Field::List mAllFields;
92  static Field::List mDefaultFields;
93  static Field::List mCustomFields;
94 
95  private:
96  int mFieldId;
97  int mCategory;
98 
99  QString mLabel;
100  QString mKey;
101  QString mApp;
102 };
103 
104 Field::List Field::Private::mAllFields;
105 Field::List Field::Private::mDefaultFields;
106 Field::List Field::Private::mCustomFields;
107 
108 Field::Field( Private *p )
109  : d( p )
110 {
111 }
112 
113 Field::~Field()
114 {
115  delete d;
116 }
117 
118 QString Field::label()
119 {
120  switch ( d->fieldId() ) {
121  case Private::FormattedName:
122  return Addressee::formattedNameLabel();
123  case Private::FamilyName:
124  return Addressee::familyNameLabel();
125  case Private::GivenName:
126  return Addressee::givenNameLabel();
127  case Private::AdditionalName:
128  return Addressee::additionalNameLabel();
129  case Private::Prefix:
130  return Addressee::prefixLabel();
131  case Private::Suffix:
132  return Addressee::suffixLabel();
133  case Private::NickName:
134  return Addressee::nickNameLabel();
135  case Private::Birthday:
136  return Addressee::birthdayLabel();
137  case Private::HomeAddressStreet:
138  return Addressee::homeAddressStreetLabel();
139  case Private::HomeAddressPostOfficeBox:
140  return Addressee::homeAddressPostOfficeBoxLabel();
141  case Private::HomeAddressLocality:
142  return Addressee::homeAddressLocalityLabel();
143  case Private::HomeAddressRegion:
144  return Addressee::homeAddressRegionLabel();
145  case Private::HomeAddressPostalCode:
146  return Addressee::homeAddressPostalCodeLabel();
147  case Private::HomeAddressCountry:
148  return Addressee::homeAddressCountryLabel();
149  case Private::HomeAddressLabel:
150  return Addressee::homeAddressLabelLabel();
151  case Private::BusinessAddressStreet:
152  return Addressee::businessAddressStreetLabel();
153  case Private::BusinessAddressPostOfficeBox:
154  return Addressee::businessAddressPostOfficeBoxLabel();
155  case Private::BusinessAddressLocality:
156  return Addressee::businessAddressLocalityLabel();
157  case Private::BusinessAddressRegion:
158  return Addressee::businessAddressRegionLabel();
159  case Private::BusinessAddressPostalCode:
160  return Addressee::businessAddressPostalCodeLabel();
161  case Private::BusinessAddressCountry:
162  return Addressee::businessAddressCountryLabel();
163  case Private::BusinessAddressLabel:
164  return Addressee::businessAddressLabelLabel();
165  case Private::HomePhone:
166  return Addressee::homePhoneLabel();
167  case Private::BusinessPhone:
168  return Addressee::businessPhoneLabel();
169  case Private::MobilePhone:
170  return Addressee::mobilePhoneLabel();
171  case Private::HomeFax:
172  return Addressee::homeFaxLabel();
173  case Private::BusinessFax:
174  return Addressee::businessFaxLabel();
175  case Private::CarPhone:
176  return Addressee::carPhoneLabel();
177  case Private::Isdn:
178  return Addressee::isdnLabel();
179  case Private::Pager:
180  return Addressee::pagerLabel();
181  case Private::Email:
182  return Addressee::emailLabel();
183  case Private::Mailer:
184  return Addressee::mailerLabel();
185  case Private::Title:
186  return Addressee::titleLabel();
187  case Private::Role:
188  return Addressee::roleLabel();
189  case Private::Organization:
190  return Addressee::organizationLabel();
191  case Private::Department:
192  return Addressee::departmentLabel();
193  case Private::Note:
194  return Addressee::noteLabel();
195  case Private::Url:
196  return Addressee::urlLabel();
197  case Private::CustomField:
198  return d->label();
199  default:
200  return i18n( "Unknown Field" );
201  }
202 }
203 
204 int Field::category()
205 {
206  return d->category();
207 }
208 
209 QString Field::categoryLabel( int category )
210 {
211  switch ( category ) {
212  case All:
213  return i18n( "All" );
214  case Frequent:
215  return i18n( "Frequent" );
216  case Address:
217  return i18nc( "street/postal","Address" );
218  case Email:
219  return i18n( "Email" );
220  case Personal:
221  return i18n( "Personal" );
222  case Organization:
223  return i18n( "Organization" );
224  case CustomCategory:
225  return i18n( "Custom" );
226  default:
227  return i18n( "Undefined" );
228  }
229 }
230 
231 QString Field::value( const KABC::Addressee &a )
232 {
233  switch ( d->fieldId() ) {
234  case Private::FormattedName:
235  return a.formattedName();
236  case Private::FamilyName:
237  return a.familyName();
238  case Private::GivenName:
239  return a.givenName();
240  case Private::AdditionalName:
241  return a.additionalName();
242  case Private::Prefix:
243  return a.prefix();
244  case Private::Suffix:
245  return a.suffix();
246  case Private::NickName:
247  return a.nickName();
248  case Private::Mailer:
249  return a.mailer();
250  case Private::Title:
251  return a.title();
252  case Private::Role:
253  return a.role();
254  case Private::Organization:
255  return a.organization();
256  case Private::Department:
257  return a.department();
258  case Private::Note:
259  return a.note();
260  case Private::Email:
261  return a.preferredEmail();
262  case Private::Birthday:
263  if ( a.birthday().isValid() )
264  return a.birthday().date().toString( Qt::ISODate );
265  else
266  return QString();
267  case Private::Url:
268  return a.url().prettyUrl();
269  case Private::HomePhone:
270  {
271  PhoneNumber::List::ConstIterator it;
272 
273  {
274  // check for preferred number
275  const PhoneNumber::List list = a.phoneNumbers( PhoneNumber::Home | PhoneNumber::Pref );
276  for ( it = list.begin(); it != list.end(); ++it ) {
277  if ( ( ( *it ).type() & ~( PhoneNumber::Pref ) ) == PhoneNumber::Home ) {
278  return ( *it ).number();
279  }
280  }
281  }
282 
283  {
284  // check for normal home number
285  const PhoneNumber::List list = a.phoneNumbers( PhoneNumber::Home );
286  for ( it = list.begin(); it != list.end(); ++it ) {
287  if ( ( ( *it ).type() & ~(PhoneNumber::Pref) ) == PhoneNumber::Home ) {
288  return ( *it ).number();
289  }
290  }
291  }
292 
293  return QString();
294  }
295  case Private::BusinessPhone:
296  {
297  PhoneNumber::List::ConstIterator it;
298 
299  {
300  // check for preferred number
301  const PhoneNumber::List list = a.phoneNumbers( PhoneNumber::Work | PhoneNumber::Pref );
302  for ( it = list.begin(); it != list.end(); ++it ) {
303  if ( ( ( *it ).type() & ~(PhoneNumber::Pref) ) == PhoneNumber::Work ) {
304  return ( *it ).number();
305  }
306  }
307  }
308 
309  {
310  // check for normal work number
311  const PhoneNumber::List list = a.phoneNumbers( PhoneNumber::Work );
312  for ( it = list.begin(); it != list.end(); ++it ) {
313  if ( ( ( *it ).type() & ~(PhoneNumber::Pref) ) == PhoneNumber::Work ) {
314  return ( *it ).number();
315  }
316  }
317  }
318 
319  return QString();
320  }
321  case Private::MobilePhone:
322  return a.phoneNumber( PhoneNumber::Cell ).number();
323  case Private::HomeFax:
324  return a.phoneNumber( PhoneNumber::Home | PhoneNumber::Fax ).number();
325  case Private::BusinessFax:
326  return a.phoneNumber( PhoneNumber::Work | PhoneNumber::Fax ).number();
327  case Private::CarPhone:
328  return a.phoneNumber( PhoneNumber::Car ).number();
329  case Private::Isdn:
330  return a.phoneNumber( PhoneNumber::Isdn ).number();
331  case Private::Pager:
332  return a.phoneNumber( PhoneNumber::Pager ).number();
333  case Private::HomeAddressStreet:
334  return a.address( Address::Home ).street();
335  case Private::HomeAddressPostOfficeBox:
336  return a.address( Address::Home ).postOfficeBox();
337  case Private::HomeAddressLocality:
338  return a.address( Address::Home ).locality();
339  case Private::HomeAddressRegion:
340  return a.address( Address::Home ).region();
341  case Private::HomeAddressPostalCode:
342  return a.address( Address::Home ).postalCode();
343  case Private::HomeAddressCountry:
344  return a.address( Address::Home ).country();
345  case Private::BusinessAddressStreet:
346  return a.address( Address::Work ).street();
347  case Private::BusinessAddressPostOfficeBox:
348  return a.address( Address::Work ).postOfficeBox();
349  case Private::BusinessAddressLocality:
350  return a.address( Address::Work ).locality();
351  case Private::BusinessAddressRegion:
352  return a.address( Address::Work ).region();
353  case Private::BusinessAddressPostalCode:
354  return a.address( Address::Work ).postalCode();
355  case Private::BusinessAddressCountry:
356  return a.address( Address::Work ).country();
357  case Private::CustomField:
358  return a.custom( d->app(), d->key() );
359  default:
360  return QString();
361  }
362 }
363 
364 bool Field::setValue( KABC::Addressee &a, const QString &value )
365 {
366  switch ( d->fieldId() ) {
367  case Private::FormattedName:
368  a.setFormattedName( value );
369  return true;
370  case Private::FamilyName:
371  a.setFamilyName( value );
372  return true;
373  case Private::GivenName:
374  a.setGivenName( value );
375  return true;
376  case Private::AdditionalName:
377  a.setAdditionalName( value );
378  return true;
379  case Private::Prefix:
380  a.setPrefix( value );
381  return true;
382  case Private::Suffix:
383  a.setSuffix( value );
384  return true;
385  case Private::NickName:
386  a.setNickName( value );
387  return true;
388  case Private::Mailer:
389  a.setMailer( value );
390  return true;
391  case Private::Title:
392  a.setTitle( value );
393  return true;
394  case Private::Role:
395  a.setRole( value );
396  return true;
397  case Private::Organization:
398  a.setOrganization( value );
399  return true;
400  case Private::Department:
401  a.setDepartment( value );
402  return true;
403  case Private::Note:
404  a.setNote( value );
405  return true;
406  case Private::Birthday:
407  a.setBirthday( QDateTime::fromString( value, Qt::ISODate ) );
408  return true;
409  case Private::CustomField:
410  a.insertCustom( d->app(), d->key(), value );
411  return true;
412  default:
413  return false;
414  }
415 }
416 
417 QString Field::sortKey( const KABC::Addressee &a )
418 {
419  switch ( d->fieldId() ) {
420  case Private::FormattedName:
421  return a.formattedName();
422  case Private::FamilyName:
423  return a.familyName();
424  case Private::GivenName:
425  return a.givenName();
426  case Private::AdditionalName:
427  return a.additionalName();
428  case Private::Prefix:
429  return a.prefix();
430  case Private::Suffix:
431  return a.suffix();
432  case Private::NickName:
433  return a.nickName();
434  case Private::Mailer:
435  return a.mailer();
436  case Private::Title:
437  return a.title();
438  case Private::Role:
439  return a.role();
440  case Private::Organization:
441  return a.organization();
442  case Private::Department:
443  return a.department();
444  case Private::Note:
445  return a.note();
446  case Private::Birthday:
447  if ( a.birthday().isValid() ) {
448  QDate date = a.birthday().date();
449  QString key;
450  key.sprintf( "%02d-%02d", date.month(), date.day() );
451  return key;
452  } else
453  return QLatin1String( "00-00" );
454  default:
455  return value( a ).toLower();
456  }
457 }
458 
459 bool Field::isCustom()
460 {
461  return d->fieldId() == Private::CustomField;
462 }
463 
464 Field::List Field::allFields()
465 {
466  if ( Private::mAllFields.isEmpty() ) {
467  createField( Private::FormattedName, Frequent );
468  createField( Private::FamilyName, Frequent );
469  createField( Private::GivenName, Frequent );
470  createField( Private::AdditionalName );
471  createField( Private::Prefix );
472  createField( Private::Suffix );
473  createField( Private::NickName, Personal );
474  createField( Private::Birthday, Personal );
475  createField( Private::HomeAddressStreet, Address|Personal );
476  createField( Private::HomeAddressPostOfficeBox, Address|Personal );
477  createField( Private::HomeAddressLocality, Address|Personal );
478  createField( Private::HomeAddressRegion, Address|Personal );
479  createField( Private::HomeAddressPostalCode, Address|Personal );
480  createField( Private::HomeAddressCountry, Address|Personal );
481  createField( Private::HomeAddressLabel, Address|Personal );
482  createField( Private::BusinessAddressStreet, Address|Organization );
483  createField( Private::BusinessAddressPostOfficeBox, Address|Organization );
484  createField( Private::BusinessAddressLocality, Address|Organization );
485  createField( Private::BusinessAddressRegion, Address|Organization );
486  createField( Private::BusinessAddressPostalCode, Address|Organization );
487  createField( Private::BusinessAddressCountry, Address|Organization );
488  createField( Private::BusinessAddressLabel, Address|Organization );
489  createField( Private::HomePhone, Personal|Frequent );
490  createField( Private::BusinessPhone, Organization|Frequent );
491  createField( Private::MobilePhone, Frequent );
492  createField( Private::HomeFax );
493  createField( Private::BusinessFax );
494  createField( Private::CarPhone );
495  createField( Private::Isdn );
496  createField( Private::Pager );
497  createField( Private::Email, Email|Frequent );
498  createField( Private::Mailer, Email );
499  createField( Private::Title, Organization );
500  createField( Private::Role, Organization );
501  createField( Private::Organization, Organization );
502  createField( Private::Department, Organization );
503  createField( Private::Note );
504  createField( Private::Url );
505  }
506 
507  return Private::mAllFields;
508 }
509 
510 Field::List Field::defaultFields()
511 {
512  if ( Private::mDefaultFields.isEmpty() ) {
513  createDefaultField( Private::FormattedName );
514  createDefaultField( Private::Email );
515  }
516 
517  return Private::mDefaultFields;
518 }
519 
520 void Field::createField( int id, int category )
521 {
522  Private::mAllFields.append( new Field( new Private( id, category ) ) );
523 }
524 
525 void Field::createDefaultField( int id, int category )
526 {
527  Private::mDefaultFields.append( new Field( new Private( id, category ) ) );
528 }
529 
530 void Field::deleteFields()
531 {
532  Field::List::ConstIterator it;
533 
534  for ( it = Private::mAllFields.constBegin(); it != Private::mAllFields.constEnd(); ++it ) {
535  delete ( *it );
536  }
537  Private::mAllFields.clear();
538 
539  for ( it = Private::mDefaultFields.constBegin(); it != Private::mDefaultFields.constEnd(); ++it ) {
540  delete ( *it );
541  }
542  Private::mDefaultFields.clear();
543 
544  for ( it = Private::mCustomFields.constBegin(); it != Private::mCustomFields.constEnd(); ++it ) {
545  delete ( *it );
546  }
547  Private::mCustomFields.clear();
548 }
549 
550 void Field::saveFields( const QString &identifier,
551  const Field::List &fields )
552 {
553  KConfigGroup cg( KGlobal::config(), "KABCFields" );
554 
555  saveFields( cg, identifier, fields );
556 }
557 
558 void Field::saveFields( KConfigGroup &cfg, const QString &identifier,
559  const Field::List &fields )
560 {
561  QList<int> fieldIds;
562 
563  int custom = 0;
564  Field::List::ConstIterator it;
565  for ( it = fields.begin(); it != fields.end(); ++it ) {
566  fieldIds.append( ( *it )->d->fieldId() );
567  if ( ( *it )->isCustom() ) {
568  QStringList customEntry;
569  customEntry << ( *it )->d->label();
570  customEntry << ( *it )->d->key();
571  customEntry << ( *it )->d->app();
572  cfg.writeEntry( QLatin1String( "KABC_CustomEntry_" ) + identifier + QLatin1Char( '_' ) +
573  QString::number( custom++ ), customEntry );
574  }
575  }
576 
577  cfg.writeEntry( identifier, fieldIds );
578 }
579 
580 Field::List Field::restoreFields( const QString &identifier )
581 {
582  KConfigGroup cg( KGlobal::config(), "KABCFields" );
583 
584  return restoreFields( cg, identifier );
585 }
586 
587 Field::List Field::restoreFields( const KConfigGroup &cfg, const QString &identifier )
588 {
589  const QList<int> fieldIds = cfg.readEntry( identifier,QList<int>() );
590 
591  Field::List fields;
592 
593  int custom = 0;
594  QList<int>::ConstIterator it;
595  for ( it = fieldIds.begin(); it != fieldIds.end(); ++it ) {
596  Private *f = 0;
597  if ( ( *it ) == Private::CustomField ) {
598  QStringList customEntry = cfg.readEntry( QLatin1String( "KABC_CustomEntry_" ) +
599  identifier + QLatin1Char( '_' ) +
600  QString::number( custom++ ),QStringList() );
601  f = new Private( *it, CustomCategory, customEntry[ 0 ],
602  customEntry[ 1 ], customEntry[ 2 ] );
603  } else {
604  f = new Private( *it );
605  }
606  fields.append( new Field( f ) );
607  }
608 
609  return fields;
610 }
611 
612 bool Field::equals( Field *field )
613 {
614  bool sameId = ( d->fieldId() == field->d->fieldId() );
615 
616  if ( !sameId ) return false;
617 
618  if ( d->fieldId() != Private::CustomField ) return true;
619 
620  return d->key() == field->d->key();
621 }
622 
623 Field *Field::createCustomField( const QString &label, int category,
624  const QString &key, const QString &app )
625 {
626  Field *field = new Field( new Private( Private::CustomField,
627  category | CustomCategory,
628  label, key, app ) );
629  Private::mCustomFields.append( field );
630 
631  return field;
632 }
KABC::Addressee::homePhoneLabel
static QString homePhoneLabel()
Return translated label for homePhone field.
Definition: addressee.cpp:651
KABC::Addressee::custom
QString custom(const QString &app, const QString &name) const
Return value of custom entry, identified by app and entry name.
Definition: addressee.cpp:1646
KABC::Addressee::department
QString department() const
Return department.
Definition: addressee.cpp:834
KABC::Address
Postal address information.
Definition: address.h:37
KABC::Addressee::setNickName
void setNickName(const QString &nickName)
Set nick name.
Definition: addressee.cpp:527
KABC::Addressee::pagerLabel
static QString pagerLabel()
Return translated label for pager field.
Definition: addressee.cpp:693
KABC::Address::street
QString street() const
Returns the street.
Definition: address.cpp:394
KABC::Addressee::noteLabel
static QString noteLabel()
Return translated label for note field.
Definition: addressee.cpp:859
KABC::Addressee::title
QString title() const
Return title.
Definition: addressee.cpp:774
KABC::Addressee::setMailer
void setMailer(const QString &mailer)
Set mail client.
Definition: addressee.cpp:705
KABC::Field::createField
static void createField(int id, int category=0)
Definition: field.cpp:520
KABC::PhoneNumber::number
QString number() const
Returns the phone number.
Definition: phonenumber.cpp:128
KABC::Field::restoreFields
static Field::List restoreFields(const KConfigGroup &cfg, const QString &identifier)
Load the field settings from a config file.
Definition: field.cpp:587
KABC::Addressee::homeAddressCountryLabel
static QString homeAddressCountryLabel()
Return translated label for homeAddressCountry field.
Definition: addressee.cpp:597
KABC::Addressee::setSuffix
void setSuffix(const QString &suffix)
Set honorific suffixes.
Definition: addressee.cpp:507
KABC::Addressee::homeAddressLocalityLabel
static QString homeAddressLocalityLabel()
Return translated label for homeAddressLocality field.
Definition: addressee.cpp:579
KABC::Addressee::setFormattedName
void setFormattedName(const QString &formattedName)
Set formatted name.
Definition: addressee.cpp:407
KABC::Field::sortKey
QString sortKey(const KABC::Addressee &)
Returns a string, that can be used for sorting.
Definition: field.cpp:417
KABC::Addressee::setRole
void setRole(const QString &role)
Set role.
Definition: addressee.cpp:785
KABC::Addressee::organizationLabel
static QString organizationLabel()
Return translated label for organization field.
Definition: addressee.cpp:819
KABC::Addressee::familyName
QString familyName() const
Return family name.
Definition: addressee.cpp:436
KABC::Addressee::prefix
QString prefix() const
Return honorific prefixes.
Definition: addressee.cpp:496
KABC::Addressee::setGivenName
void setGivenName(const QString &givenName)
Set given name.
Definition: addressee.cpp:447
KABC::Addressee::formattedName
QString formattedName() const
Return formatted name.
Definition: addressee.cpp:416
KABC::Field::deleteFields
static void deleteFields()
Delete all fields from list.
Definition: field.cpp:530
KABC::Addressee::note
QString note() const
Return note.
Definition: addressee.cpp:854
KABC::Addressee::nickNameLabel
static QString nickNameLabel()
Return translated label for nickName field.
Definition: addressee.cpp:541
KABC::Addressee::homeFaxLabel
static QString homeFaxLabel()
Return translated label for homeFax field.
Definition: addressee.cpp:669
KABC::Field::equals
virtual bool equals(Field *field)
Returns, if the field is equal with field.
Definition: field.cpp:612
KABC::Addressee::setAdditionalName
void setAdditionalName(const QString &additionalName)
Set additional names.
Definition: addressee.cpp:467
KABC::PhoneNumber::Fax
Fax machine.
Definition: phonenumber.h:53
KABC::Addressee::homeAddressStreetLabel
static QString homeAddressStreetLabel()
Return translated label for homeAddressStreet field.
Definition: addressee.cpp:567
KABC::Addressee::setFamilyName
void setFamilyName(const QString &familyName)
Set family name.
Definition: addressee.cpp:427
KABC::Address::Home
home address
Definition: address.h:56
KABC::Address::postalCode
QString postalCode() const
Returns the postal code.
Definition: address.cpp:442
KABC::Addressee::birthday
QDateTime birthday() const
Return birthday.
Definition: addressee.cpp:556
KABC::Address::country
QString country() const
Returns the country.
Definition: address.cpp:458
KABC::Addressee::preferredEmail
QString preferredEmail() const
Return preferred email address.
Definition: addressee.cpp:1259
KABC::Addressee::formattedNameLabel
static QString formattedNameLabel()
Return translated label for formattedName field.
Definition: addressee.cpp:421
KABC::Addressee::setPrefix
void setPrefix(const QString &prefix)
Set honorific prefixes.
Definition: addressee.cpp:487
KABC::Field::category
virtual int category()
Returns the ored categories the field belongs to.
Definition: field.cpp:204
KABC::Addressee::homeAddressPostalCodeLabel
static QString homeAddressPostalCodeLabel()
Return translated label for homeAddressPostalCode field.
Definition: addressee.cpp:591
KABC::Field::CustomCategory
Custom (user-defined) fields.
Definition: field.h:87
KABC::Addressee::suffixLabel
static QString suffixLabel()
Return translated label for suffix field.
Definition: addressee.cpp:521
KABC::Addressee::role
QString role() const
Return role.
Definition: addressee.cpp:794
KABC::Addressee::phoneNumber
PhoneNumber phoneNumber(PhoneNumber::Type type) const
Return phone number, which matches the given type.
Definition: addressee.cpp:1302
KABC::PhoneNumber::Cell
Cell phone.
Definition: phonenumber.h:54
KABC::Addressee::roleLabel
static QString roleLabel()
Return translated label for role field.
Definition: addressee.cpp:799
KABC::Addressee::setTitle
void setTitle(const QString &title)
Set title.
Definition: addressee.cpp:765
KABC::Field::Frequent
Frequently used fields.
Definition: field.h:65
KABC::Addressee::businessAddressLabelLabel
static QString businessAddressLabelLabel()
Return translated label for businessAddressLabel field.
Definition: addressee.cpp:645
KABC::Addressee::businessAddressPostOfficeBoxLabel
static QString businessAddressPostOfficeBoxLabel()
Return translated label for businessAddressPostOfficeBox field.
Definition: addressee.cpp:615
KABC::Addressee::mailer
QString mailer() const
Return mail client.
Definition: addressee.cpp:714
KABC::Addressee::setDepartment
void setDepartment(const QString &department)
Set department.
Definition: addressee.cpp:825
KABC::Field::setValue
virtual bool setValue(KABC::Addressee &, const QString &)
Sets the value of the field in the given Addressee.
Definition: field.cpp:364
KABC::PhoneNumber::List
QList< PhoneNumber > List
List of phone numbers.
Definition: phonenumber.h:74
KABC::Addressee::homeAddressRegionLabel
static QString homeAddressRegionLabel()
Return translated label for homeAddressRegion field.
Definition: addressee.cpp:585
KABC::Addressee::additionalName
QString additionalName() const
Return additional names.
Definition: addressee.cpp:476
KABC::Field::allFields
static Field::List allFields()
Returns a list of all fields.
Definition: field.cpp:464
KABC::Addressee::businessAddressRegionLabel
static QString businessAddressRegionLabel()
Return translated label for businessAddressRegion field.
Definition: addressee.cpp:627
KABC::Addressee::phoneNumbers
PhoneNumber::List phoneNumbers() const
Return list of all phone numbers.
Definition: addressee.cpp:1319
KABC::Addressee::businessFaxLabel
static QString businessFaxLabel()
Return translated label for businessFax field.
Definition: addressee.cpp:675
KABC::Addressee::setOrganization
void setOrganization(const QString &organization)
Set organization.
Definition: addressee.cpp:805
KABC::Field::label
virtual QString label()
Returns the translated label for this field.
Definition: field.cpp:118
KABC::Field::List
QList< Field * > List
This type is used for a list of fields.
Definition: field.h:52
KABC::Addressee::businessAddressLocalityLabel
static QString businessAddressLocalityLabel()
Return translated label for businessAddressLocality field.
Definition: addressee.cpp:621
KABC::Addressee::givenName
QString givenName() const
Return given name.
Definition: addressee.cpp:456
KABC::Addressee::homeAddressLabelLabel
static QString homeAddressLabelLabel()
Return translated label for homeAddressLabel field.
Definition: addressee.cpp:603
KABC::Field::Email
Fields which store information about the e-mail contact, such as e-mail address or mail client...
Definition: field.h:74
KABC::Field::createDefaultField
static void createDefaultField(int id, int category=0)
Definition: field.cpp:525
KABC::Addressee::carPhoneLabel
static QString carPhoneLabel()
Return translated label for carPhone field.
Definition: addressee.cpp:681
KABC::Field
Represents a field in the Addressbook.
Definition: field.h:46
KABC::PhoneNumber::Home
Home number.
Definition: phonenumber.h:48
KABC::Addressee::birthdayLabel
static QString birthdayLabel()
Return translated label for birthday field.
Definition: addressee.cpp:561
KABC::Addressee::businessAddressCountryLabel
static QString businessAddressCountryLabel()
Return translated label for businessAddressCountry field.
Definition: addressee.cpp:639
KABC::Addressee::titleLabel
static QString titleLabel()
Return translated label for title field.
Definition: addressee.cpp:779
KABC::Addressee
address book entry
Definition: addressee.h:74
KABC::Addressee::setNote
void setNote(const QString &note)
Set note.
Definition: addressee.cpp:845
KABC::Field::Organization
Fields about the organization, such as Business Address fields, Department, Profession, etc.
Definition: field.h:83
KABC::PhoneNumber::Work
Office number.
Definition: phonenumber.h:49
KABC::Field::saveFields
static void saveFields(KConfigGroup &cfg, const QString &identifier, const Field::List &fields)
Save the field settings to a config file.
Definition: field.cpp:558
KABC::Addressee::departmentLabel
static QString departmentLabel()
Return translated label for department field.
Definition: addressee.cpp:839
KABC::Addressee::insertCustom
void insertCustom(const QString &app, const QString &name, const QString &value)
Insert custom entry.
Definition: addressee.cpp:1625
KABC::Addressee::organization
QString organization() const
Return organization.
Definition: addressee.cpp:814
KABC::Addressee::emailLabel
static QString emailLabel()
Return translated label for email field.
Definition: addressee.cpp:699
KABC::Addressee::additionalNameLabel
static QString additionalNameLabel()
Return translated label for additionalName field.
Definition: addressee.cpp:481
KABC::Addressee::businessPhoneLabel
static QString businessPhoneLabel()
Return translated label for businessPhone field.
Definition: addressee.cpp:657
KABC::Address::locality
QString locality() const
Returns the locality.
Definition: address.cpp:410
KABC::Address::region
QString region() const
Returns the region.
Definition: address.cpp:426
KABC::Addressee::urlLabel
static QString urlLabel()
Return translated label for url field.
Definition: addressee.cpp:939
KABC::PhoneNumber::Pager
Pager.
Definition: phonenumber.h:61
KABC::Address::Work
address at work
Definition: address.h:57
KABC::Field::isCustom
virtual bool isCustom()
Returns, if the field is a user-defined field.
Definition: field.cpp:459
KABC::Addressee::setBirthday
void setBirthday(const QDateTime &birthday)
Set birthday.
Definition: addressee.cpp:547
KABC::Field::createCustomField
static Field * createCustomField(const QString &label, int category, const QString &key, const QString &app)
Creates a custom field.
Definition: field.cpp:623
KABC::PhoneNumber::Pref
Preferred number.
Definition: phonenumber.h:51
KABC::PhoneNumber::Car
Car phone.
Definition: phonenumber.h:58
KABC::Field::value
virtual QString value(const KABC::Addressee &)
Returns a string representation of the value the field has in the given Addressee.
Definition: field.cpp:231
KABC::PhoneNumber::Isdn
ISDN connection.
Definition: phonenumber.h:59
KABC::Addressee::suffix
QString suffix() const
Return honorific suffixes.
Definition: addressee.cpp:516
KABC::Field::Personal
Personal fields, such as Birthday, Home Address fields, IM Address, etc.
Definition: field.h:78
KABC::Addressee::url
KUrl url() const
Return homepage.
Definition: addressee.cpp:934
KABC::Addressee::prefixLabel
static QString prefixLabel()
Return translated label for prefix field.
Definition: addressee.cpp:501
KABC::Addressee::familyNameLabel
static QString familyNameLabel()
Return translated label for familyName field.
Definition: addressee.cpp:441
KABC::Field::categoryLabel
static QString categoryLabel(int category)
Returns the translated label for category.
Definition: field.cpp:209
KABC::Addressee::givenNameLabel
static QString givenNameLabel()
Return translated label for givenName field.
Definition: addressee.cpp:461
KABC::Addressee::homeAddressPostOfficeBoxLabel
static QString homeAddressPostOfficeBoxLabel()
Return translated label for homeAddressPostOfficeBox field.
Definition: addressee.cpp:573
KABC::Field::All
All fields.
Definition: field.h:61
KABC::Addressee::mobilePhoneLabel
static QString mobilePhoneLabel()
Return translated label for mobilePhone field.
Definition: addressee.cpp:663
KABC::Addressee::isdnLabel
static QString isdnLabel()
Return translated label for isdn field.
Definition: addressee.cpp:687
KABC::Addressee::address
Address address(Address::Type type) const
Return address, which matches the given type.
Definition: addressee.cpp:1541
KABC::Address::postOfficeBox
QString postOfficeBox() const
Returns the post office box.
Definition: address.cpp:362
KABC::Field::defaultFields
static Field::List defaultFields()
Returns a list of the default fields.
Definition: field.cpp:510
KABC::Addressee::businessAddressStreetLabel
static QString businessAddressStreetLabel()
Return translated label for businessAddressStreet field.
Definition: addressee.cpp:609
KABC::Addressee::nickName
QString nickName() const
Return nick name.
Definition: addressee.cpp:536
KABC::Addressee::mailerLabel
static QString mailerLabel()
Return translated label for mailer field.
Definition: addressee.cpp:719
KABC::Addressee::businessAddressPostalCodeLabel
static QString businessAddressPostalCodeLabel()
Return translated label for businessAddressPostalCode field.
Definition: addressee.cpp:633
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:01:05 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kabc

Skip menu "kabc"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • Related Pages

kdepimlibs API Reference

Skip menu "kdepimlibs API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kldap
  • kmbox
  • kmime
  • kpimidentities
  • kpimtextedit
  • kresources
  • ktnef
  • kxmlrpcclient
  • microblog

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal