summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-10-28 14:43:31 (UTC)
committer zautrix <zautrix>2005-10-28 14:43:31 (UTC)
commitab099bc1be027fe01dc252a9d7a0f8821e782d65 (patch) (unidiff)
tree85bfb03f334da60dffcc52d54202f51d0f947e3f
parentcaaa030d8bc2aa82c53e5d30abc314b992d7226f (diff)
downloadkdepimpi-ab099bc1be027fe01dc252a9d7a0f8821e782d65.zip
kdepimpi-ab099bc1be027fe01dc252a9d7a0f8821e782d65.tar.gz
kdepimpi-ab099bc1be027fe01dc252a9d7a0f8821e782d65.tar.bz2
fixxxx
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/kaddressbook/germantranslation.txt6
-rw-r--r--kabc/addressee.cpp4
-rw-r--r--kabc/addressee.h2
-rw-r--r--kabc/field.cpp8
-rw-r--r--kaddressbook/phoneeditwidget.cpp33
5 files changed, 36 insertions, 17 deletions
diff --git a/bin/kdepim/kaddressbook/germantranslation.txt b/bin/kdepim/kaddressbook/germantranslation.txt
index f12f880..06f25e9 100644
--- a/bin/kdepim/kaddressbook/germantranslation.txt
+++ b/bin/kdepim/kaddressbook/germantranslation.txt
@@ -379,49 +379,49 @@
379{ "Country:","Staat:" }, 379{ "Country:","Staat:" },
380{ "This is the preferred address","Dies ist die bevorzugte Adresse" }, 380{ "This is the preferred address","Dies ist die bevorzugte Adresse" },
381{ "New...","Neu..." }, 381{ "New...","Neu..." },
382{ "Change Type","Ändere Art" }, 382{ "Change Type","Ändere Art" },
383{ "Edit Address Type","Ändere Address Art" }, 383{ "Edit Address Type","Ändere Address Art" },
384{ "Address Types","Address Art" }, 384{ "Address Types","Address Art" },
385{ "Domestic","Inland" }, 385{ "Domestic","Inland" },
386{ "International","International" }, 386{ "International","International" },
387{ "Parcel","Paket" }, 387{ "Parcel","Paket" },
388{ "Edit Contact Name","Ändere Kontakt Name" }, 388{ "Edit Contact Name","Ändere Kontakt Name" },
389{ "Honorific prefixes:","Namensprefixes:" }, 389{ "Honorific prefixes:","Namensprefixes:" },
390{ "Given name:","Vorname:" }, 390{ "Given name:","Vorname:" },
391{ "Additional names:","Mittelnamen:" }, 391{ "Additional names:","Mittelnamen:" },
392{ "Family names:","Nachname:" }, 392{ "Family names:","Nachname:" },
393{ "Honorific suffixes:","Namenssuffixe:" }, 393{ "Honorific suffixes:","Namenssuffixe:" },
394{ "Parse name automatically","Setze Namen automatisch" }, 394{ "Parse name automatically","Setze Namen automatisch" },
395{ "Edit Phone Numbers","Bearbeite Telefonnummern" }, 395{ "Edit Phone Numbers","Bearbeite Telefonnummern" },
396{ "Number","Nummer" }, 396{ "Number","Nummer" },
397{ "Type","Typ" }, 397{ "Type","Typ" },
398{ "Edit Phone Number","Bearbeite Telefonnummer" }, 398{ "Edit Phone Number","Bearbeite Telefonnummer" },
399{ "Number:","Nummer:" }, 399{ "Number:","Nummer:" },
400{ "This is the preferred phone number","Dies ist die bevorzugte Telefonnummer" }, 400{ "This is the preferred phone number","Dies ist die bevorzugte Telefonnummer" },
401{ "Types","Typen" }, 401{ "Types","Typen" },
402{ "Messenger","Messenger" }, 402{ "Messenger","Messenger" },
403{ "Other","Anderes" }, 403{ "Other","Sonstiges" },
404{ "Video","Video" }, 404{ "Video","Video" },
405{ "Mailbox","Mailbox" }, 405{ "Mailbox","Mailbox" },
406{ "Modem","Modem" }, 406{ "Modem","Modem" },
407{ "Car","Auto" }, 407{ "Car","Auto" },
408{ "PCS","PCS" }, 408{ "PCS","PCS" },
409{ "Category","Kategorie" }, 409{ "Category","Kategorie" },
410{ "Select Categories","Wähle Kategorien" }, 410{ "Select Categories","Wähle Kategorien" },
411{ " &Deselect All "," &Deselektiere alle " }, 411{ " &Deselect All "," &Deselektiere alle " },
412{ " &Edit Categories "," B&earbeite Kategorien " }, 412{ " &Edit Categories "," B&earbeite Kategorien " },
413{ "&OK","&OK" }, 413{ "&OK","&OK" },
414{ "&Cancel","Abbre&chen" }, 414{ "&Cancel","Abbre&chen" },
415{ "Configure","Konfiguriere" }, 415{ "Configure","Konfiguriere" },
416{ "Default","Voreinstellungen" }, 416{ "Default","Voreinstellungen" },
417{ "Addressbook","Adressbuch" }, 417{ "Addressbook","Adressbuch" },
418{ "Details view font","Schriftart Detailansicht" }, 418{ "Details view font","Schriftart Detailansicht" },
419{ "phone:123","phone:123" }, 419{ "phone:123","phone:123" },
420{ "Search only after <return> key pressed","Suche nur nach <return> Taste" }, 420{ "Search only after <return> key pressed","Suche nur nach <return> Taste" },
421{ "Show edit dialog on single click","Zeige Edit Dialog bei Einzelklick" }, 421{ "Show edit dialog on single click","Zeige Edit Dialog bei Einzelklick" },
422{ "Automatic name parsing for new contacts","Automa. Name Parsen für neue Kontakte" }, 422{ "Automatic name parsing for new contacts","Automa. Name Parsen für neue Kontakte" },
423{ "Display List and Details at once (restart)","Zeige Liste und Details zusammen(neustart)" }, 423{ "Display List and Details at once (restart)","Zeige Liste und Details zusammen(neustart)" },
424{ "Show exit confirmation","Vor dem Beenden nachfragen" }, 424{ "Show exit confirmation","Vor dem Beenden nachfragen" },
425{ "General","Allgemein" }, 425{ "General","Allgemein" },
426{ "Extensions (restart)","Extensions (restart)" }, 426{ "Extensions (restart)","Extensions (restart)" },
427{ "Description","Beschreibungen" }, 427{ "Description","Beschreibungen" },
@@ -803,35 +803,35 @@
803{ "Do you want to\nclear the sync\ninfo of profile\n%1?\n","Möchten Sie wirklich\ndie Sync-Info für Profil\n%1?\nlöschen" }, 803{ "Do you want to\nclear the sync\ninfo of profile\n%1?\n","Möchten Sie wirklich\ndie Sync-Info für Profil\n%1?\nlöschen" },
804{ "Sorry, no valid port.Syncing cancelled.","Sorry, kein gültiger Port. Syncing abgebrochen." }, 804{ "Sorry, no valid port.Syncing cancelled.","Sorry, kein gültiger Port. Syncing abgebrochen." },
805{ "Remote port number:\n(May be: 1 - 65535)","Ferne Port Nummer:\n(Darf sein: 1 - 65535)" }, 805{ "Remote port number:\n(May be: 1 - 65535)","Ferne Port Nummer:\n(Darf sein: 1 - 65535)" },
806{ "Writing back file ...","Schreibe Datei zurück..." }, 806{ "Writing back file ...","Schreibe Datei zurück..." },
807{ "Sending back file ...","Sende Datei zurück..." }, 807{ "Sending back file ...","Sende Datei zurück..." },
808{ "Eeek, there I am ticklish!","Huch, da bin ich kitzlig!" }, 808{ "Eeek, there I am ticklish!","Huch, da bin ich kitzlig!" },
809{ "Save using LOCAL storage","Speichere nutze LOCAL Pfad" }, 809{ "Save using LOCAL storage","Speichere nutze LOCAL Pfad" },
810{ "...and %1 more\ncontact(s) selected","...und noch %1 Kontakte\n mehr ausgewählt" }, 810{ "...and %1 more\ncontact(s) selected","...und noch %1 Kontakte\n mehr ausgewählt" },
811{ "Do you really\nwant to delete the\nsetected contact(s)?\n\n","Möchten Sie wirklich\ndie ausgewählten\nKontakte löschen?\n\n" }, 811{ "Do you really\nwant to delete the\nsetected contact(s)?\n\n","Möchten Sie wirklich\ndie ausgewählten\nKontakte löschen?\n\n" },
812{ "%1 contacts\nsuccessfully\nimported.","%1 Kontakte\nerfolgreich\nimportiert." }, 812{ "%1 contacts\nsuccessfully\nimported.","%1 Kontakte\nerfolgreich\nimportiert." },
813{ "Import this contact?","Importiere diesen Kontakt?" }, 813{ "Import this contact?","Importiere diesen Kontakt?" },
814{ "Import all!","Importiere alle!" }, 814{ "Import all!","Importiere alle!" },
815{ "Loading addressbook data ... please wait","Lade Adressbuchdaten ... bitte warten" }, 815{ "Loading addressbook data ... please wait","Lade Adressbuchdaten ... bitte warten" },
816{ "Import Format","Import Format" }, 816{ "Import Format","Import Format" },
817{ "Select import format!\nDefault and standard is Utf8.\nLatin1 may be the right\nfor some West Europian languages.","Wähle Import Format!\nDefault und Standard ist Utf8.\nLatin1 kann das richtige für\nWesteuropäische Sprachen sein." }, 817{ "Select import format!\nDefault and standard is Utf8.\nLatin1 may be the right\nfor some West Europian languages.","Wähle Import Format!\nDefault und Standard ist Utf8.\nLatin1 kann das richtige für\nWesteuropäische Sprachen sein." },
818{ "Home2","Privat2" }, 818{ "Home2","Privat2" },
819{ "Work2","Arbeit2" }, 819{ "Work2","Arbeit2" },
820{ "Fax (Work)","Fax (Arbeit)" }, 820{ "Fax (Work)","Fax (Arbeit)" },
821{ "Fax (Home)","Fax (Privat)" }, 821{ "Fax (Home)","Fax (Privat)" },
822{ "Assistent","Sekretär(in)" }, 822{ "Assistent","Sekretär(in)" },
823{ "Company","Firma" }, 823{ "Company","Firma" },
824{ "Mobile2 (Work)","Handy2 (Arbeit)" }, 824{ "Mobile2 (Work)","Handy2 (Arbeit)" },
825{ "Mobile2 (Car)","Handy2 (Auto)" }, 825{ "Mobile2 (Car)","Handy2 (Auto)" },
826{ "Callback","Rückruf" }, 826{ "Callback","Rückruf" },
827{ "Fax (Other)","Fax (Anderes)" }, 827{ "Fax (Other)","Fax (Sonst.)" },
828{ "Primary","Bevorzugt" }, 828{ "Primary","Bevorzugt" },
829{ "Mobile (Home)","Handy (Privat)" }, 829{ "Mobile (Home)","Handy (Privat)" },
830{ "Unfiled","Nicht zugeordnet" }, 830{ "Unfiled","Nicht zugeordnet" },
831{ "Format.n.:","Format.N.:" }, 831{ "Format.n.:","Format.N.:" },
832{ "","" }, 832{ "Other Phone","Sonst. Telefon" },
833{ "","" }, 833{ "","" },
834{ "","" }, 834{ "","" },
835{ "","" }, 835{ "","" },
836{ "","" }, 836{ "","" },
837{ "","" }, \ No newline at end of file 837{ "","" }, \ No newline at end of file
diff --git a/kabc/addressee.cpp b/kabc/addressee.cpp
index 789a694..0d8e8e8 100644
--- a/kabc/addressee.cpp
+++ b/kabc/addressee.cpp
@@ -1074,48 +1074,52 @@ QString Addressee::homeFaxLabel()
1074 1074
1075 1075
1076QString Addressee::businessFaxLabel() 1076QString Addressee::businessFaxLabel()
1077{ 1077{
1078 return i18n("Fax (Work)"); 1078 return i18n("Fax (Work)");
1079} 1079}
1080 1080
1081 1081
1082QString Addressee::carPhoneLabel() 1082QString Addressee::carPhoneLabel()
1083{ 1083{
1084 return i18n("Mobile2 (Car)"); 1084 return i18n("Mobile2 (Car)");
1085} 1085}
1086 1086
1087 1087
1088QString Addressee::isdnLabel() 1088QString Addressee::isdnLabel()
1089{ 1089{
1090 return i18n("ISDN"); 1090 return i18n("ISDN");
1091} 1091}
1092 1092
1093 1093
1094QString Addressee::pagerLabel() 1094QString Addressee::pagerLabel()
1095{ 1095{
1096 return i18n("Pager"); 1096 return i18n("Pager");
1097} 1097}
1098QString Addressee::otherPhoneLabel()
1099{
1100 return i18n("Other Phone");
1101}
1098 1102
1099QString Addressee::sipLabel() 1103QString Addressee::sipLabel()
1100{ 1104{
1101 return i18n("SIP"); 1105 return i18n("SIP");
1102} 1106}
1103 1107
1104QString Addressee::emailLabel() 1108QString Addressee::emailLabel()
1105{ 1109{
1106 return i18n("Email Address"); 1110 return i18n("Email Address");
1107} 1111}
1108 1112
1109 1113
1110void Addressee::setMailer( const QString &mailer ) 1114void Addressee::setMailer( const QString &mailer )
1111{ 1115{
1112 if ( mailer == mData->mailer ) return; 1116 if ( mailer == mData->mailer ) return;
1113 detach(); 1117 detach();
1114 mData->empty = false; 1118 mData->empty = false;
1115 mData->mailer = mailer; 1119 mData->mailer = mailer;
1116} 1120}
1117 1121
1118QString Addressee::mailer() const 1122QString Addressee::mailer() const
1119{ 1123{
1120 return mData->mailer; 1124 return mData->mailer;
1121} 1125}
diff --git a/kabc/addressee.h b/kabc/addressee.h
index 0c488eb..fcadda6 100644
--- a/kabc/addressee.h
+++ b/kabc/addressee.h
@@ -337,49 +337,49 @@ class Addressee
337 /** 337 /**
338 Return translated label for homeFax field. 338 Return translated label for homeFax field.
339 */ 339 */
340 static QString homeFaxLabel(); 340 static QString homeFaxLabel();
341 341
342 /** 342 /**
343 Return translated label for businessFax field. 343 Return translated label for businessFax field.
344 */ 344 */
345 static QString businessFaxLabel(); 345 static QString businessFaxLabel();
346 346
347 /** 347 /**
348 Return translated label for carPhone field. 348 Return translated label for carPhone field.
349 */ 349 */
350 static QString carPhoneLabel(); 350 static QString carPhoneLabel();
351 351
352 /** 352 /**
353 Return translated label for isdn field. 353 Return translated label for isdn field.
354 */ 354 */
355 static QString isdnLabel(); 355 static QString isdnLabel();
356 356
357 /** 357 /**
358 Return translated label for pager field. 358 Return translated label for pager field.
359 */ 359 */
360 static QString pagerLabel(); 360 static QString pagerLabel();
361 361 static QString otherPhoneLabel();
362 /** 362 /**
363 Return translated label for sip field. 363 Return translated label for sip field.
364 */ 364 */
365 static QString sipLabel(); 365 static QString sipLabel();
366 366
367 /** 367 /**
368 Return translated label for email field. 368 Return translated label for email field.
369 */ 369 */
370 static QString emailLabel(); 370 static QString emailLabel();
371 371
372 /** 372 /**
373 Set mail client. 373 Set mail client.
374 */ 374 */
375 void setMailer( const QString &mailer ); 375 void setMailer( const QString &mailer );
376 /** 376 /**
377 Return mail client. 377 Return mail client.
378 */ 378 */
379 QString mailer() const; 379 QString mailer() const;
380 /** 380 /**
381 Return translated label for mailer field. 381 Return translated label for mailer field.
382 */ 382 */
383 static QString mailerLabel(); 383 static QString mailerLabel();
384 384
385 /** 385 /**
diff --git a/kabc/field.cpp b/kabc/field.cpp
index 20885de..6f2b307 100644
--- a/kabc/field.cpp
+++ b/kabc/field.cpp
@@ -67,49 +67,50 @@ class Field::FieldImpl
67 BusinessAddressStreet, 67 BusinessAddressStreet,
68 BusinessAddressLocality, 68 BusinessAddressLocality,
69 BusinessAddressRegion, 69 BusinessAddressRegion,
70 BusinessAddressPostalCode, 70 BusinessAddressPostalCode,
71 BusinessAddressCountry, 71 BusinessAddressCountry,
72 BusinessAddressLabel, 72 BusinessAddressLabel,
73 HomePhone, 73 HomePhone,
74 BusinessPhone, 74 BusinessPhone,
75 MobilePhone, 75 MobilePhone,
76 HomeFax, 76 HomeFax,
77 BusinessFax, 77 BusinessFax,
78 CarPhone, 78 CarPhone,
79 Isdn, 79 Isdn,
80 Pager, 80 Pager,
81 Email, 81 Email,
82 Mailer, 82 Mailer,
83 Title, 83 Title,
84 Role, 84 Role,
85 Organization, 85 Organization,
86 Note, 86 Note,
87 Url, 87 Url,
88 Resource, 88 Resource,
89 Sip, 89 Sip,
90 MobileWorkPhone, 90 MobileWorkPhone,
91 MobileHomePhone 91 MobileHomePhone,
92 OtherPhone
92 }; 93 };
93 94
94 int fieldId() { return mFieldId; } 95 int fieldId() { return mFieldId; }
95 int category() { return mCategory; } 96 int category() { return mCategory; }
96 97
97 QString label() { return mLabel; } 98 QString label() { return mLabel; }
98 QString key() { return mKey; } 99 QString key() { return mKey; }
99 QString app() { return mApp; } 100 QString app() { return mApp; }
100 101
101 private: 102 private:
102 int mFieldId; 103 int mFieldId;
103 int mCategory; 104 int mCategory;
104 105
105 QString mLabel; 106 QString mLabel;
106 QString mKey; 107 QString mKey;
107 QString mApp; 108 QString mApp;
108}; 109};
109 110
110 111
111Field::List Field::mAllFields; 112Field::List Field::mAllFields;
112Field::List Field::mDefaultFields; 113Field::List Field::mDefaultFields;
113Field::List Field::mCustomFields; 114Field::List Field::mCustomFields;
114 115
115 116
@@ -185,48 +186,50 @@ QString Field::label()
185 case FieldImpl::Isdn: 186 case FieldImpl::Isdn:
186 return Addressee::isdnLabel(); 187 return Addressee::isdnLabel();
187 case FieldImpl::Pager: 188 case FieldImpl::Pager:
188 return Addressee::pagerLabel(); 189 return Addressee::pagerLabel();
189 case FieldImpl::Email: 190 case FieldImpl::Email:
190 return Addressee::emailLabel(); 191 return Addressee::emailLabel();
191 case FieldImpl::Mailer: 192 case FieldImpl::Mailer:
192 return Addressee::mailerLabel(); 193 return Addressee::mailerLabel();
193 case FieldImpl::Title: 194 case FieldImpl::Title:
194 return Addressee::titleLabel(); 195 return Addressee::titleLabel();
195 case FieldImpl::Role: 196 case FieldImpl::Role:
196 return Addressee::roleLabel(); 197 return Addressee::roleLabel();
197 case FieldImpl::Organization: 198 case FieldImpl::Organization:
198 return Addressee::organizationLabel(); 199 return Addressee::organizationLabel();
199 case FieldImpl::Note: 200 case FieldImpl::Note:
200 return Addressee::noteLabel(); 201 return Addressee::noteLabel();
201 case FieldImpl::Url: 202 case FieldImpl::Url:
202 return Addressee::urlLabel(); 203 return Addressee::urlLabel();
203 case FieldImpl::Resource: 204 case FieldImpl::Resource:
204 return Addressee::resourceLabel(); 205 return Addressee::resourceLabel();
205 case FieldImpl::Category: 206 case FieldImpl::Category:
206 return Addressee::categoryLabel(); 207 return Addressee::categoryLabel();
207 case FieldImpl::Sip: 208 case FieldImpl::Sip:
208 return Addressee::sipLabel(); 209 return Addressee::sipLabel();
210 case FieldImpl::OtherPhone:
211 return Addressee::otherPhoneLabel();
209 case FieldImpl::CustomField: 212 case FieldImpl::CustomField:
210 return mImpl->label(); 213 return mImpl->label();
211 default: 214 default:
212 return i18n("Unknown Field"); 215 return i18n("Unknown Field");
213 } 216 }
214} 217}
215 218
216int Field::category() 219int Field::category()
217{ 220{
218 return mImpl->category(); 221 return mImpl->category();
219} 222}
220 223
221QString Field::categoryLabel( int category ) 224QString Field::categoryLabel( int category )
222{ 225{
223 switch ( category ) { 226 switch ( category ) {
224 case All: 227 case All:
225 return i18n("All"); 228 return i18n("All");
226 case Frequent: 229 case Frequent:
227 return i18n("Frequent"); 230 return i18n("Frequent");
228 case Address: 231 case Address:
229 return i18n("Address"); 232 return i18n("Address");
230 case Email: 233 case Email:
231 return i18n("Email"); 234 return i18n("Email");
232 case Personal: 235 case Personal:
@@ -289,48 +292,50 @@ QString Field::value( const KABC::Addressee &a )
289 case FieldImpl::Category: 292 case FieldImpl::Category:
290 return a.categories().join(","); 293 return a.categories().join(",");
291 case FieldImpl::HomePhone: 294 case FieldImpl::HomePhone:
292 return a.phoneNumber( PhoneNumber::Home| PhoneNumber::Pref ).number(); 295 return a.phoneNumber( PhoneNumber::Home| PhoneNumber::Pref ).number();
293 case FieldImpl::BusinessPhone: 296 case FieldImpl::BusinessPhone:
294 return a.phoneNumber( PhoneNumber::Work| PhoneNumber::Pref ).number(); 297 return a.phoneNumber( PhoneNumber::Work| PhoneNumber::Pref ).number();
295 case FieldImpl::MobilePhone: 298 case FieldImpl::MobilePhone:
296 return a.phoneNumber( PhoneNumber::Cell ).number(); 299 return a.phoneNumber( PhoneNumber::Cell ).number();
297 case FieldImpl::MobileWorkPhone: 300 case FieldImpl::MobileWorkPhone:
298 return a.phoneNumber( PhoneNumber::Car ).number(); 301 return a.phoneNumber( PhoneNumber::Car ).number();
299 case FieldImpl::MobileHomePhone: 302 case FieldImpl::MobileHomePhone:
300 return a.phoneNumber( PhoneNumber::Cell ).number(); 303 return a.phoneNumber( PhoneNumber::Cell ).number();
301 case FieldImpl::HomeFax: 304 case FieldImpl::HomeFax:
302 return a.phoneNumber( PhoneNumber::Home | PhoneNumber::Fax ).number(); 305 return a.phoneNumber( PhoneNumber::Home | PhoneNumber::Fax ).number();
303 case FieldImpl::BusinessFax: 306 case FieldImpl::BusinessFax:
304 return a.phoneNumber( PhoneNumber::Work | PhoneNumber::Fax ).number(); 307 return a.phoneNumber( PhoneNumber::Work | PhoneNumber::Fax ).number();
305 case FieldImpl::CarPhone: 308 case FieldImpl::CarPhone:
306 return a.phoneNumber( PhoneNumber::Car ).number(); 309 return a.phoneNumber( PhoneNumber::Car ).number();
307 case FieldImpl::Isdn: 310 case FieldImpl::Isdn:
308 return a.phoneNumber( PhoneNumber::Isdn ).number(); 311 return a.phoneNumber( PhoneNumber::Isdn ).number();
309 case FieldImpl::Pager: 312 case FieldImpl::Pager:
310 return a.phoneNumber( PhoneNumber::Pager ).number(); 313 return a.phoneNumber( PhoneNumber::Pager ).number();
311 case FieldImpl::Sip: 314 case FieldImpl::Sip:
312 return a.phoneNumber( PhoneNumber::Pcs | PhoneNumber::Pref ).number(); 315 return a.phoneNumber( PhoneNumber::Pcs | PhoneNumber::Pref ).number();
316 case FieldImpl::OtherPhone:
317 return a.phoneNumber( PhoneNumber::Voice ).number();
313 case FieldImpl::HomeAddressStreet: 318 case FieldImpl::HomeAddressStreet:
314 return a.address( Address::Home ).street(); 319 return a.address( Address::Home ).street();
315 case FieldImpl::HomeAddressLocality: 320 case FieldImpl::HomeAddressLocality:
316 return a.address( Address::Home ).locality(); 321 return a.address( Address::Home ).locality();
317 case FieldImpl::HomeAddressRegion: 322 case FieldImpl::HomeAddressRegion:
318 return a.address( Address::Home ).region(); 323 return a.address( Address::Home ).region();
319 case FieldImpl::HomeAddressPostalCode: 324 case FieldImpl::HomeAddressPostalCode:
320 return a.address( Address::Home ).postalCode(); 325 return a.address( Address::Home ).postalCode();
321 case FieldImpl::HomeAddressCountry: 326 case FieldImpl::HomeAddressCountry:
322 return a.address( Address::Home ).country(); 327 return a.address( Address::Home ).country();
323 case FieldImpl::BusinessAddressStreet: 328 case FieldImpl::BusinessAddressStreet:
324 return a.address( Address::Work ).street(); 329 return a.address( Address::Work ).street();
325 case FieldImpl::BusinessAddressLocality: 330 case FieldImpl::BusinessAddressLocality:
326 return a.address( Address::Work ).locality(); 331 return a.address( Address::Work ).locality();
327 case FieldImpl::BusinessAddressRegion: 332 case FieldImpl::BusinessAddressRegion:
328 return a.address( Address::Work ).region(); 333 return a.address( Address::Work ).region();
329 case FieldImpl::BusinessAddressPostalCode: 334 case FieldImpl::BusinessAddressPostalCode:
330 return a.address( Address::Work ).postalCode(); 335 return a.address( Address::Work ).postalCode();
331 case FieldImpl::BusinessAddressCountry: 336 case FieldImpl::BusinessAddressCountry:
332 return a.address( Address::Work ).country(); 337 return a.address( Address::Work ).country();
333 case FieldImpl::CustomField: 338 case FieldImpl::CustomField:
334 return a.custom( mImpl->app(), mImpl->key() ); 339 return a.custom( mImpl->app(), mImpl->key() );
335 default: 340 default:
336 return QString::null; 341 return QString::null;
@@ -421,48 +426,49 @@ Field::List Field::allFields()
421 createField( FieldImpl::BusinessAddressLocality, Address|Organization ); 426 createField( FieldImpl::BusinessAddressLocality, Address|Organization );
422 createField( FieldImpl::BusinessAddressRegion, Address|Organization ); 427 createField( FieldImpl::BusinessAddressRegion, Address|Organization );
423 createField( FieldImpl::BusinessAddressPostalCode, Address|Organization ); 428 createField( FieldImpl::BusinessAddressPostalCode, Address|Organization );
424 createField( FieldImpl::BusinessAddressCountry, Address|Organization ); 429 createField( FieldImpl::BusinessAddressCountry, Address|Organization );
425 createField( FieldImpl::BusinessAddressLabel, Address|Organization ); 430 createField( FieldImpl::BusinessAddressLabel, Address|Organization );
426 createField( FieldImpl::HomePhone, Personal|Frequent ); 431 createField( FieldImpl::HomePhone, Personal|Frequent );
427 createField( FieldImpl::BusinessPhone, Organization|Frequent ); 432 createField( FieldImpl::BusinessPhone, Organization|Frequent );
428 createField( FieldImpl::MobilePhone, Frequent ); 433 createField( FieldImpl::MobilePhone, Frequent );
429 createField( FieldImpl::MobileHomePhone, Frequent ); 434 createField( FieldImpl::MobileHomePhone, Frequent );
430 createField( FieldImpl::MobileWorkPhone, Frequent ); 435 createField( FieldImpl::MobileWorkPhone, Frequent );
431 createField( FieldImpl::HomeFax ); 436 createField( FieldImpl::HomeFax );
432 createField( FieldImpl::BusinessFax ); 437 createField( FieldImpl::BusinessFax );
433 createField( FieldImpl::CarPhone ); 438 createField( FieldImpl::CarPhone );
434 createField( FieldImpl::Isdn ); 439 createField( FieldImpl::Isdn );
435 createField( FieldImpl::Pager ); 440 createField( FieldImpl::Pager );
436 createField( FieldImpl::Email, Email|Frequent ); 441 createField( FieldImpl::Email, Email|Frequent );
437 createField( FieldImpl::Mailer, Email ); 442 createField( FieldImpl::Mailer, Email );
438 createField( FieldImpl::Title, Organization ); 443 createField( FieldImpl::Title, Organization );
439 createField( FieldImpl::Role, Organization ); 444 createField( FieldImpl::Role, Organization );
440 createField( FieldImpl::Organization, Organization ); 445 createField( FieldImpl::Organization, Organization );
441 createField( FieldImpl::Note ); 446 createField( FieldImpl::Note );
442 createField( FieldImpl::Url ); 447 createField( FieldImpl::Url );
443 createField( FieldImpl::Resource ); 448 createField( FieldImpl::Resource );
444 createField( FieldImpl::Sip ); 449 createField( FieldImpl::Sip );
450 createField( FieldImpl::OtherPhone );
445 } 451 }
446 452
447 return mAllFields; 453 return mAllFields;
448} 454}
449 455
450Field::List Field::defaultFields() 456Field::List Field::defaultFields()
451{ 457{
452 if ( mDefaultFields.isEmpty() ) { 458 if ( mDefaultFields.isEmpty() ) {
453 createDefaultField( FieldImpl::GivenName ); 459 createDefaultField( FieldImpl::GivenName );
454 createDefaultField( FieldImpl::FamilyName ); 460 createDefaultField( FieldImpl::FamilyName );
455 createDefaultField( FieldImpl::Email ); 461 createDefaultField( FieldImpl::Email );
456 } 462 }
457 463
458 return mDefaultFields; 464 return mDefaultFields;
459} 465}
460 466
461void Field::createField( int id, int category ) 467void Field::createField( int id, int category )
462{ 468{
463 mAllFields.append( new Field( new FieldImpl( id, category ) ) ); 469 mAllFields.append( new Field( new FieldImpl( id, category ) ) );
464} 470}
465 471
466void Field::createDefaultField( int id, int category ) 472void Field::createDefaultField( int id, int category )
467{ 473{
468 mDefaultFields.append( new Field( new FieldImpl( id, category ) ) ); 474 mDefaultFields.append( new Field( new FieldImpl( id, category ) ) );
diff --git a/kaddressbook/phoneeditwidget.cpp b/kaddressbook/phoneeditwidget.cpp
index 9e7e221..66f0a5e 100644
--- a/kaddressbook/phoneeditwidget.cpp
+++ b/kaddressbook/phoneeditwidget.cpp
@@ -147,64 +147,73 @@ PhoneTypeNumberEdit* PhoneEditWidget::appendEditCombo()
147 147
148 mainLayout->add( edit ); 148 mainLayout->add( edit );
149 mTypeNumberEditList.append( edit ); 149 mTypeNumberEditList.append( edit );
150 return edit; 150 return edit;
151} 151}
152 152
153void PhoneEditWidget::deleteEdit( PhoneTypeNumberEdit* ew ) 153void PhoneEditWidget::deleteEdit( PhoneTypeNumberEdit* ew )
154{ 154{
155 mPendingDelete = ew; 155 mPendingDelete = ew;
156 QTimer::singleShot( 0, this, SLOT ( pendingDelete() ) ); 156 QTimer::singleShot( 0, this, SLOT ( pendingDelete() ) );
157} 157}
158void PhoneEditWidget::pendingDelete() 158void PhoneEditWidget::pendingDelete()
159{ 159{
160 mTypeNumberEditList.removeRef( mPendingDelete ); 160 mTypeNumberEditList.removeRef( mPendingDelete );
161 emit modified(); 161 emit modified();
162} 162}
163 163
164void PhoneEditWidget::setPhoneNumbers( const KABC::PhoneNumber::List &li ) 164void PhoneEditWidget::setPhoneNumbers( const KABC::PhoneNumber::List &li )
165{ 165{
166 if ( li.isEmpty() ) { 166 if ( li.isEmpty() ) {
167 setDefaults(); 167 setDefaults();
168 return; 168 return;
169 } 169 }
170 mTypeNumberEditList.clear(); 170 mTypeNumberEditList.clear();
171 KABC::PhoneNumber::List::Iterator it; 171 KABC::PhoneNumber::List::Iterator it;
172 KABC::PhoneNumber::List list = li; 172 KABC::PhoneNumber::List list2 = li;
173 PhoneTypeNumberEdit* edit = 0;//mTypeNumberEditList.first(); 173 KABC::PhoneNumber::List list ;
174
175 PhoneNumber::TypeList tList = PhoneNumber::supportedTypeList();
176 int i = 0;
177 int max = tList.count();
178 while ( i < max-1 ) {
179 for ( it = list2.begin(); it != list2.end(); ++it ) {
180 if ( (*it).type() == tList[i] ) {
181 list.append( (*it ) );
182 break;
183 }
184 }
185 ++i;
186 }
187 for ( it = list2.begin(); it != list2.end(); ++it ) {
188 if ( (*it).type() == tList[ max-1 ] )
189 list.append( (*it ) );
190 }
174 for ( it = list.begin(); it != list.end(); ++it ) { 191 for ( it = list.begin(); it != list.end(); ++it ) {
175 if ( edit ) {
176 edit->setPhoneNumber( (*it ) );
177 edit = mTypeNumberEditList.next();
178 } else {
179 PhoneTypeNumberEdit* editNew = appendEditCombo(); 192 PhoneTypeNumberEdit* editNew = appendEditCombo();
180 editNew->setPhoneNumber( (*it ) ); 193 editNew->setPhoneNumber( (*it ) );
181 }
182 }
183 while ( edit ) {
184 edit->hide();
185 edit = mTypeNumberEditList.next();
186 } 194 }
195
187} 196}
188KABC::PhoneNumber::List PhoneEditWidget::phoneNumbers() 197KABC::PhoneNumber::List PhoneEditWidget::phoneNumbers()
189{ 198{
190 KABC::PhoneNumber::List retList; 199 KABC::PhoneNumber::List retList;
191 200
192 PhoneTypeNumberEdit* edit = mTypeNumberEditList.first(); 201 PhoneTypeNumberEdit* edit = mTypeNumberEditList.first();
193 while ( edit ) { 202 while ( edit ) {
194 if ( edit->isValid() ) { 203 if ( edit->isValid() ) {
195 retList.append( edit->phoneNumber()); 204 retList.append( edit->phoneNumber());
196 } 205 }
197 edit = mTypeNumberEditList.next(); 206 edit = mTypeNumberEditList.next();
198 207
199 } 208 }
200 return retList; 209 return retList;
201} 210}
202 211
203#if 0 212#if 0
204PhoneEditWidget::PhoneEditWidget( QWidget *parent, const char *name ) 213PhoneEditWidget::PhoneEditWidget( QWidget *parent, const char *name )
205 : QWidget( parent, name ) 214 : QWidget( parent, name )
206{ 215{
207 QGridLayout *layout = new QGridLayout( this, 4, 1 ); 216 QGridLayout *layout = new QGridLayout( this, 4, 1 );
208//US layout->setSpacing( KDialog::spacingHint() ); 217//US layout->setSpacing( KDialog::spacingHint() );
209 layout->setSpacing( KDialogBase::spacingHintSmall() ); 218 layout->setSpacing( KDialogBase::spacingHintSmall() );
210 219