author | zautrix <zautrix> | 2005-10-29 22:45:39 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-10-29 22:45:39 (UTC) |
commit | b06fa1090f3fa7a71ab2710be444815df8bd6c17 (patch) (unidiff) | |
tree | 16f5aed10d0c78c255ae732959e3dd184ae5e218 /kabc | |
parent | a4f17bd35c56280c45bda847b42b7d3a003b0a42 (diff) | |
download | kdepimpi-b06fa1090f3fa7a71ab2710be444815df8bd6c17.zip kdepimpi-b06fa1090f3fa7a71ab2710be444815df8bd6c17.tar.gz kdepimpi-b06fa1090f3fa7a71ab2710be444815df8bd6c17.tar.bz2 |
commit
-rw-r--r-- | kabc/addressee.cpp | 2 | ||||
-rw-r--r-- | kabc/addresseeview.cpp | 29 | ||||
-rw-r--r-- | kabc/phonenumber.cpp | 15 |
3 files changed, 38 insertions, 8 deletions
diff --git a/kabc/addressee.cpp b/kabc/addressee.cpp index 2f4a9af..6cfac80 100644 --- a/kabc/addressee.cpp +++ b/kabc/addressee.cpp | |||
@@ -999,193 +999,193 @@ QString Addressee::homeAddressCountryLabel() | |||
999 | } | 999 | } |
1000 | 1000 | ||
1001 | 1001 | ||
1002 | QString Addressee::homeAddressLabelLabel() | 1002 | QString Addressee::homeAddressLabelLabel() |
1003 | { | 1003 | { |
1004 | return i18n("Home Address Label"); | 1004 | return i18n("Home Address Label"); |
1005 | } | 1005 | } |
1006 | 1006 | ||
1007 | 1007 | ||
1008 | QString Addressee::businessAddressStreetLabel() | 1008 | QString Addressee::businessAddressStreetLabel() |
1009 | { | 1009 | { |
1010 | return i18n("Business Address Street"); | 1010 | return i18n("Business Address Street"); |
1011 | } | 1011 | } |
1012 | 1012 | ||
1013 | 1013 | ||
1014 | QString Addressee::businessAddressLocalityLabel() | 1014 | QString Addressee::businessAddressLocalityLabel() |
1015 | { | 1015 | { |
1016 | return i18n("Business Address Locality"); | 1016 | return i18n("Business Address Locality"); |
1017 | } | 1017 | } |
1018 | 1018 | ||
1019 | 1019 | ||
1020 | QString Addressee::businessAddressRegionLabel() | 1020 | QString Addressee::businessAddressRegionLabel() |
1021 | { | 1021 | { |
1022 | return i18n("Business Address Region"); | 1022 | return i18n("Business Address Region"); |
1023 | } | 1023 | } |
1024 | 1024 | ||
1025 | 1025 | ||
1026 | QString Addressee::businessAddressPostalCodeLabel() | 1026 | QString Addressee::businessAddressPostalCodeLabel() |
1027 | { | 1027 | { |
1028 | return i18n("Business Address Postal Code"); | 1028 | return i18n("Business Address Postal Code"); |
1029 | } | 1029 | } |
1030 | 1030 | ||
1031 | 1031 | ||
1032 | QString Addressee::businessAddressCountryLabel() | 1032 | QString Addressee::businessAddressCountryLabel() |
1033 | { | 1033 | { |
1034 | return i18n("Business Address Country"); | 1034 | return i18n("Business Address Country"); |
1035 | } | 1035 | } |
1036 | 1036 | ||
1037 | 1037 | ||
1038 | QString Addressee::businessAddressLabelLabel() | 1038 | QString Addressee::businessAddressLabelLabel() |
1039 | { | 1039 | { |
1040 | return i18n("Business Address Label"); | 1040 | return i18n("Business Address Label"); |
1041 | } | 1041 | } |
1042 | 1042 | ||
1043 | 1043 | ||
1044 | QString Addressee::homePhoneLabel() | 1044 | QString Addressee::homePhoneLabel() |
1045 | { | 1045 | { |
1046 | return i18n("Home Phone"); | 1046 | return i18n("Home Phone"); |
1047 | } | 1047 | } |
1048 | 1048 | ||
1049 | 1049 | ||
1050 | QString Addressee::businessPhoneLabel() | 1050 | QString Addressee::businessPhoneLabel() |
1051 | { | 1051 | { |
1052 | return i18n("Work Phone"); | 1052 | return i18n("Work Phone"); |
1053 | } | 1053 | } |
1054 | 1054 | ||
1055 | 1055 | ||
1056 | QString Addressee::mobilePhoneLabel() | 1056 | QString Addressee::mobilePhoneLabel() |
1057 | { | 1057 | { |
1058 | return i18n("Mobile"); | 1058 | return i18n("Mobile"); |
1059 | } | 1059 | } |
1060 | QString Addressee::mobileWorkPhoneLabel() | 1060 | QString Addressee::mobileWorkPhoneLabel() |
1061 | { | 1061 | { |
1062 | return i18n("Mobile2"); | 1062 | return i18n("Mobile2"); |
1063 | } | 1063 | } |
1064 | 1064 | ||
1065 | 1065 | ||
1066 | QString Addressee::homeFaxLabel() | 1066 | QString Addressee::homeFaxLabel() |
1067 | { | 1067 | { |
1068 | return i18n("Fax (Home)"); | 1068 | return i18n("Fax (Home)"); |
1069 | } | 1069 | } |
1070 | 1070 | ||
1071 | 1071 | ||
1072 | QString Addressee::businessFaxLabel() | 1072 | QString Addressee::businessFaxLabel() |
1073 | { | 1073 | { |
1074 | return i18n("Fax (Work)"); | 1074 | return i18n("Fax (Work)"); |
1075 | } | 1075 | } |
1076 | 1076 | ||
1077 | 1077 | ||
1078 | QString Addressee::isdnLabel() | 1078 | QString Addressee::isdnLabel() |
1079 | { | 1079 | { |
1080 | return i18n("ISDN"); | 1080 | return i18n("ISDN"); |
1081 | } | 1081 | } |
1082 | 1082 | ||
1083 | 1083 | ||
1084 | QString Addressee::pagerLabel() | 1084 | QString Addressee::pagerLabel() |
1085 | { | 1085 | { |
1086 | return i18n("Pager"); | 1086 | return i18n("Pager"); |
1087 | } | 1087 | } |
1088 | QString Addressee::otherPhoneLabel() | 1088 | QString Addressee::otherPhoneLabel() |
1089 | { | 1089 | { |
1090 | return i18n("Other Phone"); | 1090 | return i18n("Other Phone"); |
1091 | } | 1091 | } |
1092 | 1092 | ||
1093 | QString Addressee::sipLabel() | 1093 | QString Addressee::sipLabel() |
1094 | { | 1094 | { |
1095 | return i18n("SIP"); | 1095 | return i18n("SiP"); |
1096 | } | 1096 | } |
1097 | 1097 | ||
1098 | QString Addressee::emailLabel() | 1098 | QString Addressee::emailLabel() |
1099 | { | 1099 | { |
1100 | return i18n("Email Address"); | 1100 | return i18n("Email Address"); |
1101 | } | 1101 | } |
1102 | 1102 | ||
1103 | 1103 | ||
1104 | void Addressee::setMailer( const QString &mailer ) | 1104 | void Addressee::setMailer( const QString &mailer ) |
1105 | { | 1105 | { |
1106 | if ( mailer == mData->mailer ) return; | 1106 | if ( mailer == mData->mailer ) return; |
1107 | detach(); | 1107 | detach(); |
1108 | mData->empty = false; | 1108 | mData->empty = false; |
1109 | mData->mailer = mailer; | 1109 | mData->mailer = mailer; |
1110 | } | 1110 | } |
1111 | 1111 | ||
1112 | QString Addressee::mailer() const | 1112 | QString Addressee::mailer() const |
1113 | { | 1113 | { |
1114 | return mData->mailer; | 1114 | return mData->mailer; |
1115 | } | 1115 | } |
1116 | 1116 | ||
1117 | QString Addressee::mailerLabel() | 1117 | QString Addressee::mailerLabel() |
1118 | { | 1118 | { |
1119 | return i18n("Mail Client"); | 1119 | return i18n("Mail Client"); |
1120 | } | 1120 | } |
1121 | 1121 | ||
1122 | 1122 | ||
1123 | void Addressee::setTimeZone( const TimeZone &timeZone ) | 1123 | void Addressee::setTimeZone( const TimeZone &timeZone ) |
1124 | { | 1124 | { |
1125 | if ( timeZone == mData->timeZone ) return; | 1125 | if ( timeZone == mData->timeZone ) return; |
1126 | detach(); | 1126 | detach(); |
1127 | mData->empty = false; | 1127 | mData->empty = false; |
1128 | mData->timeZone = timeZone; | 1128 | mData->timeZone = timeZone; |
1129 | } | 1129 | } |
1130 | 1130 | ||
1131 | TimeZone Addressee::timeZone() const | 1131 | TimeZone Addressee::timeZone() const |
1132 | { | 1132 | { |
1133 | return mData->timeZone; | 1133 | return mData->timeZone; |
1134 | } | 1134 | } |
1135 | 1135 | ||
1136 | QString Addressee::timeZoneLabel() | 1136 | QString Addressee::timeZoneLabel() |
1137 | { | 1137 | { |
1138 | return i18n("Time Zone"); | 1138 | return i18n("Time Zone"); |
1139 | } | 1139 | } |
1140 | 1140 | ||
1141 | 1141 | ||
1142 | void Addressee::setGeo( const Geo &geo ) | 1142 | void Addressee::setGeo( const Geo &geo ) |
1143 | { | 1143 | { |
1144 | if ( geo == mData->geo ) return; | 1144 | if ( geo == mData->geo ) return; |
1145 | detach(); | 1145 | detach(); |
1146 | mData->empty = false; | 1146 | mData->empty = false; |
1147 | mData->geo = geo; | 1147 | mData->geo = geo; |
1148 | } | 1148 | } |
1149 | 1149 | ||
1150 | Geo Addressee::geo() const | 1150 | Geo Addressee::geo() const |
1151 | { | 1151 | { |
1152 | return mData->geo; | 1152 | return mData->geo; |
1153 | } | 1153 | } |
1154 | 1154 | ||
1155 | QString Addressee::geoLabel() | 1155 | QString Addressee::geoLabel() |
1156 | { | 1156 | { |
1157 | return i18n("Geographic Position"); | 1157 | return i18n("Geographic Position"); |
1158 | } | 1158 | } |
1159 | 1159 | ||
1160 | 1160 | ||
1161 | void Addressee::setTitle( const QString &title ) | 1161 | void Addressee::setTitle( const QString &title ) |
1162 | { | 1162 | { |
1163 | if ( title == mData->title ) return; | 1163 | if ( title == mData->title ) return; |
1164 | detach(); | 1164 | detach(); |
1165 | mData->empty = false; | 1165 | mData->empty = false; |
1166 | mData->title = title; | 1166 | mData->title = title; |
1167 | } | 1167 | } |
1168 | 1168 | ||
1169 | QString Addressee::title() const | 1169 | QString Addressee::title() const |
1170 | { | 1170 | { |
1171 | return mData->title; | 1171 | return mData->title; |
1172 | } | 1172 | } |
1173 | 1173 | ||
1174 | QString Addressee::titleLabel() | 1174 | QString Addressee::titleLabel() |
1175 | { | 1175 | { |
1176 | return i18n("Title"); | 1176 | return i18n("Title"); |
1177 | } | 1177 | } |
1178 | 1178 | ||
1179 | 1179 | ||
1180 | void Addressee::setRole( const QString &role ) | 1180 | void Addressee::setRole( const QString &role ) |
1181 | { | 1181 | { |
1182 | if ( role == mData->role ) return; | 1182 | if ( role == mData->role ) return; |
1183 | detach(); | 1183 | detach(); |
1184 | mData->empty = false; | 1184 | mData->empty = false; |
1185 | mData->role = role; | 1185 | mData->role = role; |
1186 | } | 1186 | } |
1187 | 1187 | ||
1188 | QString Addressee::role() const | 1188 | QString Addressee::role() const |
1189 | { | 1189 | { |
1190 | return mData->role; | 1190 | return mData->role; |
1191 | } | 1191 | } |
diff --git a/kabc/addresseeview.cpp b/kabc/addresseeview.cpp index 5c24acf..cde19a1 100644 --- a/kabc/addresseeview.cpp +++ b/kabc/addresseeview.cpp | |||
@@ -455,209 +455,234 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee ) | |||
455 | QMimeSourceFactory::defaultFactory()->setPixmap( "MaleIcon", KGlobal::iconLoader()->loadIcon( "ic_male", KIcon::Desktop, 128 ) ); | 455 | QMimeSourceFactory::defaultFactory()->setPixmap( "MaleIcon", KGlobal::iconLoader()->loadIcon( "ic_male", KIcon::Desktop, 128 ) ); |
456 | setDefaultImageMale = true; | 456 | setDefaultImageMale = true; |
457 | } | 457 | } |
458 | picString = "<img src=\"MaleIcon\" width=\"64\" height=\"64\">"; | 458 | picString = "<img src=\"MaleIcon\" width=\"64\" height=\"64\">"; |
459 | 459 | ||
460 | } else if ( gen == "female" ) { | 460 | } else if ( gen == "female" ) { |
461 | static bool setDefaultImageFemale = false; | 461 | static bool setDefaultImageFemale = false; |
462 | if ( !setDefaultImageFemale ) { | 462 | if ( !setDefaultImageFemale ) { |
463 | QMimeSourceFactory::defaultFactory()->setPixmap( "FemaleIcon", KGlobal::iconLoader()->loadIcon( "ic_female", KIcon::Desktop, 128 ) ); | 463 | QMimeSourceFactory::defaultFactory()->setPixmap( "FemaleIcon", KGlobal::iconLoader()->loadIcon( "ic_female", KIcon::Desktop, 128 ) ); |
464 | setDefaultImageFemale = true; | 464 | setDefaultImageFemale = true; |
465 | } | 465 | } |
466 | picString = "<img src=\"FemaleIcon\" width=\"64\" height=\"64\">"; | 466 | picString = "<img src=\"FemaleIcon\" width=\"64\" height=\"64\">"; |
467 | 467 | ||
468 | } else { | 468 | } else { |
469 | static bool setDefaultImage = false; | 469 | static bool setDefaultImage = false; |
470 | if ( !setDefaultImage ) { | 470 | if ( !setDefaultImage ) { |
471 | //qDebug("Setting default pixmap "); | 471 | //qDebug("Setting default pixmap "); |
472 | QMimeSourceFactory::defaultFactory()->setPixmap( "defaultIcon", KGlobal::iconLoader()->loadIcon( "ic_penguin", KIcon::Desktop, 128 ) ); | 472 | QMimeSourceFactory::defaultFactory()->setPixmap( "defaultIcon", KGlobal::iconLoader()->loadIcon( "ic_penguin", KIcon::Desktop, 128 ) ); |
473 | setDefaultImage = true; | 473 | setDefaultImage = true; |
474 | } | 474 | } |
475 | picString = "<img src=\"defaultIcon\" width=\"64\" height=\"64\">"; | 475 | picString = "<img src=\"defaultIcon\" width=\"64\" height=\"64\">"; |
476 | } | 476 | } |
477 | } | 477 | } |
478 | } | 478 | } |
479 | } | 479 | } |
480 | mText = QString::fromLatin1( | 480 | mText = QString::fromLatin1( |
481 | "<html>" | 481 | "<html>" |
482 | "<body text=\"%1\" bgcolor=\"%2\">" // text and background color | 482 | "<body text=\"%1\" bgcolor=\"%2\">" // text and background color |
483 | "<table>" | 483 | "<table>" |
484 | "<tr>" | 484 | "<tr>" |
485 | "<td rowspan=\"3\" align=\"right\" valign=\"top\">" | 485 | "<td rowspan=\"3\" align=\"right\" valign=\"top\">" |
486 | "%3" | 486 | "%3" |
487 | "</td>" | 487 | "</td>" |
488 | "<td align=\"left\"><font size=\"+2\"><b>%4</b></font></td>" // name | 488 | "<td align=\"left\"><font size=\"+2\"><b>%4</b></font></td>" // name |
489 | "</tr>" | 489 | "</tr>" |
490 | "%5" // role | 490 | "%5" // role |
491 | "%6" // organization | 491 | "%6" // organization |
492 | "<td colspan=\"2\"> </td>" | 492 | "<td colspan=\"2\"> </td>" |
493 | "%7" // dynamic part | 493 | "%7" // dynamic part |
494 | "%8" // notes | 494 | "%8" // notes |
495 | "</table>" | 495 | "</table>" |
496 | "</body>" | 496 | "</body>" |
497 | "</html>") | 497 | "</html>") |
498 | //US | 498 | //US |
499 | .arg( /*KGlobalSettings::textColor().name()*/ "black" ) | 499 | .arg( /*KGlobalSettings::textColor().name()*/ "black" ) |
500 | //US | 500 | //US |
501 | .arg( /*KGlobalSettings::baseColor().name()*/ "white" ) | 501 | .arg( /*KGlobalSettings::baseColor().name()*/ "white" ) |
502 | .arg( picString ) | 502 | .arg( picString ) |
503 | .arg( name ) | 503 | .arg( name ) |
504 | .arg( aRole ) | 504 | .arg( aRole ) |
505 | .arg( aOrga ) | 505 | .arg( aOrga ) |
506 | .arg( dynamicPart ) | 506 | .arg( dynamicPart ) |
507 | .arg( notes ); | 507 | .arg( notes ); |
508 | 508 | ||
509 | } else { // no picture! | 509 | } else { // no picture! |
510 | 510 | ||
511 | mText = "<table width=\"100%\">\n"; | 511 | mText = "<table width=\"100%\">\n"; |
512 | //mText += "<tr bgcolor=\"#3679AD\"><td><h2>"; | 512 | //mText += "<tr bgcolor=\"#3679AD\"><td><h2>"; |
513 | #ifdef DESKTOP_VERSION | 513 | #ifdef DESKTOP_VERSION |
514 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"left\"><h1>"; | 514 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"left\"><h1>"; |
515 | mText += "<font color=\"#FFFFFF\">" + name +"</font></h1>"; | 515 | mText += "<font color=\"#FFFFFF\">" + name +"</font></h1>"; |
516 | #else | 516 | #else |
517 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"left\"><h3>"; | 517 | mText += "<tr bgcolor=\"#5699CD\"><td align=\"left\"><h3>"; |
518 | mText += "<font color=\"#FFFFFF\"> " + name +"</font></h3>"; | 518 | mText += "<font color=\"#FFFFFF\"> " + name +"</font></h3>"; |
519 | #endif | 519 | #endif |
520 | 520 | ||
521 | mText += "</td></tr>\n<tr bgcolor=\"#EAF8FA\"><td>"; | 521 | mText += "</td></tr>\n<tr bgcolor=\"#EAF8FA\"><td>"; |
522 | 522 | ||
523 | mText += "<table><td colspan=\"2\"> </td>"; | 523 | mText += "<table><td colspan=\"2\"> </td>"; |
524 | /* | 524 | /* |
525 | mText += QString("<tr><td align=\"right\"><b2>%1</b2></td>" | 525 | mText += QString("<tr><td align=\"right\"><b2>%1</b2></td>" |
526 | "<td align=\"left\"><b>%2</b></td></tr>" ) | 526 | "<td align=\"left\"><b>%2</b></td></tr>" ) |
527 | .arg( i18n(" ") ) | 527 | .arg( i18n(" ") ) |
528 | .arg( name ); | 528 | .arg( name ); |
529 | */ | 529 | */ |
530 | if ( ! mAddressee.role().isEmpty() ) | 530 | if ( ! mAddressee.role().isEmpty() ) |
531 | mText += QString("<tr><td align=\"right\"><b>%1</b></td>" | 531 | mText += QString("<tr><td align=\"right\"><b>%1</b></td>" |
532 | "<td align=\"left\">%2</td></tr>" ) | 532 | "<td align=\"left\">%2</td></tr>" ) |
533 | .arg( i18n(" ") ) | 533 | .arg( i18n(" ") ) |
534 | .arg( mAddressee.role()); | 534 | .arg( mAddressee.role()); |
535 | if ( ! mAddressee.organization().isEmpty() ) | 535 | if ( ! mAddressee.organization().isEmpty() ) |
536 | mText += QString("<tr><td align=\"right\"><b>%1</b></td>" | 536 | mText += QString("<tr><td align=\"right\"><b>%1</b></td>" |
537 | "<td align=\"left\">%2</td></tr>" ) | 537 | "<td align=\"left\">%2</td></tr>" ) |
538 | .arg( i18n(" ") ) | 538 | .arg( i18n(" ") ) |
539 | .arg( mAddressee.organization()); | 539 | .arg( mAddressee.organization()); |
540 | mText += dynamicPart; | 540 | mText += dynamicPart; |
541 | mText += notes; | 541 | mText += notes; |
542 | mText += "</table>"; | 542 | mText += "</table>"; |
543 | 543 | ||
544 | } | 544 | } |
545 | 545 | ||
546 | // at last display it... | 546 | // at last display it... |
547 | setText( mText ); | 547 | setText( mText ); |
548 | 548 | ||
549 | } | 549 | } |
550 | 550 | ||
551 | QString AddresseeView::getPhoneNumbers( KABC::PhoneNumber::List phones ,bool preferred ) | 551 | QString AddresseeView::getPhoneNumbers( KABC::PhoneNumber::List phones_unsorted ,bool preferred ) |
552 | { | 552 | { |
553 | ExternalAppHandler* eah = ExternalAppHandler::instance(); | 553 | ExternalAppHandler* eah = ExternalAppHandler::instance(); |
554 | bool kphoneAvail = eah->isPhoneAppAvailable(); | 554 | bool kphoneAvail = eah->isPhoneAppAvailable(); |
555 | bool kfaxAvail = eah->isFaxAppAvailable(); | 555 | bool kfaxAvail = eah->isFaxAppAvailable(); |
556 | bool ksmsAvail = eah->isSMSAppAvailable(); | 556 | bool ksmsAvail = eah->isSMSAppAvailable(); |
557 | bool kpagerAvail = eah->isPagerAppAvailable(); | 557 | bool kpagerAvail = eah->isPagerAppAvailable(); |
558 | bool ksipAvail = eah->isSIPAppAvailable(); | 558 | bool ksipAvail = eah->isSIPAppAvailable(); |
559 | QString dynamicPart; | 559 | QString dynamicPart; |
560 | KABC::PhoneNumber::List::ConstIterator phoneIt; | 560 | KABC::PhoneNumber::List::ConstIterator phoneIt; |
561 | QString extension; | 561 | QString extension; |
562 | int phonetype; | 562 | int phonetype; |
563 | QString sms; | 563 | QString sms; |
564 | |||
565 | KABC::PhoneNumber::List::Iterator it; | ||
566 | KABC::PhoneNumber::List phones ; | ||
567 | |||
568 | PhoneNumber::TypeList tList = PhoneNumber::supportedTypeList(); | ||
569 | int i = 0; | ||
570 | int max = tList.count(); | ||
571 | while ( i < max-1 ) { | ||
572 | for ( it = phones_unsorted.begin(); it != phones_unsorted.end(); ++it ) { | ||
573 | if ( (*it).type() == tList[i] ) { | ||
574 | phones.append( (*it ) ); | ||
575 | break; | ||
576 | } | ||
577 | } | ||
578 | ++i; | ||
579 | } | ||
580 | for ( it = phones_unsorted.begin(); it != phones_unsorted.end(); ++it ) { | ||
581 | if ( (*it).type() == tList[ max-1 ] ) | ||
582 | phones.append( (*it ) ); | ||
583 | } | ||
584 | |||
564 | for ( phoneIt = phones.begin(); phoneIt != phones.end(); ++phoneIt ) { | 585 | for ( phoneIt = phones.begin(); phoneIt != phones.end(); ++phoneIt ) { |
565 | phonetype = (*phoneIt).type(); | 586 | phonetype = (*phoneIt).type(); |
566 | if ( ((phonetype & KABC::PhoneNumber::Pref) == 0 ) == preferred ) | 587 | bool con = false; |
588 | if ( ((phonetype & KABC::PhoneNumber::Pref) == 0 ) == preferred ) con = true; | ||
589 | if ((phonetype & KABC::PhoneNumber::Cell) == KABC::PhoneNumber::Cell ) con = !preferred;; | ||
590 | if ( con ) | ||
567 | continue; | 591 | continue; |
592 | |||
568 | if (ksmsAvail && | 593 | if (ksmsAvail && |
569 | ( | 594 | ( |
570 | ((phonetype & KABC::PhoneNumber::Car) == KABC::PhoneNumber::Car) || | 595 | ((phonetype & KABC::PhoneNumber::Car) == KABC::PhoneNumber::Car) || |
571 | ((phonetype & KABC::PhoneNumber::Cell) == KABC::PhoneNumber::Cell) | 596 | ((phonetype & KABC::PhoneNumber::Cell) == KABC::PhoneNumber::Cell) |
572 | ) | 597 | ) |
573 | ) | 598 | ) |
574 | { | 599 | { |
575 | sms = QString("<a href=\"smsto:%1 \">(sms)</a>" ) | 600 | sms = QString("<a href=\"smsto:%1 \">(sms)</a>" ) |
576 | .arg( (*phoneIt).number() ); | 601 | .arg( (*phoneIt).number() ); |
577 | 602 | ||
578 | } | 603 | } |
579 | else | 604 | else |
580 | sms = ""; | 605 | sms = ""; |
581 | 606 | ||
582 | extension = QString::null; | 607 | extension = QString::null; |
583 | if ((phonetype & KABC::PhoneNumber::Fax) == KABC::PhoneNumber::Fax) { | 608 | if ((phonetype & KABC::PhoneNumber::Fax) == KABC::PhoneNumber::Fax) { |
584 | if (kfaxAvail) extension = "faxto:"; | 609 | if (kfaxAvail) extension = "faxto:"; |
585 | } | 610 | } |
586 | else if ((phonetype & KABC::PhoneNumber::Pager) == KABC::PhoneNumber::Pager) { | 611 | else if ((phonetype & KABC::PhoneNumber::Pager) == KABC::PhoneNumber::Pager) { |
587 | if (kpagerAvail) extension = "pagerto:"; | 612 | if (kpagerAvail) extension = "pagerto:"; |
588 | } | 613 | } |
589 | #if 0 | 614 | #if 0 |
590 | else if ((phonetype & KABC::PhoneNumber::Sip) == KABC::PhoneNumber::Sip) { | 615 | else if ((phonetype & KABC::PhoneNumber::Sip) == KABC::PhoneNumber::Sip) { |
591 | if (ksipAvail) extension = "sipto:"; | 616 | if (ksipAvail) extension = "sipto:"; |
592 | } | 617 | } |
593 | #endif | 618 | #endif |
594 | else if (kphoneAvail) { | 619 | else if (kphoneAvail) { |
595 | extension = "phoneto:"; | 620 | extension = "phoneto:"; |
596 | } | 621 | } |
597 | else | 622 | else |
598 | extension = QString::null; | 623 | extension = QString::null; |
599 | 624 | ||
600 | if ( !extension.isEmpty() ) { | 625 | if ( !extension.isEmpty() ) { |
601 | dynamicPart += QString( | 626 | dynamicPart += QString( |
602 | "<tr><td align=\"right\"><b>%1</b></td>" | 627 | "<tr><td align=\"right\"><b>%1</b></td>" |
603 | "<td align=\"left\"><a href=\"%2%3 \">%4</a> %5</td></tr>" ) | 628 | "<td align=\"left\"><a href=\"%2%3 \">%4</a> %5</td></tr>" ) |
604 | .arg( KABC::PhoneNumber::typeLabel( phonetype ) ) | 629 | .arg( KABC::PhoneNumber::typeLabel( phonetype ) ) |
605 | .arg( extension ) | 630 | .arg( extension ) |
606 | .arg( (*phoneIt).number() ) | 631 | .arg( (*phoneIt).number() ) |
607 | .arg( (*phoneIt).number() ) | 632 | .arg( (*phoneIt).number() ) |
608 | .arg( sms ); | 633 | .arg( sms ); |
609 | 634 | ||
610 | } else { | 635 | } else { |
611 | dynamicPart += QString( | 636 | dynamicPart += QString( |
612 | "<tr><td align=\"right\"><b>%1</b></td>" | 637 | "<tr><td align=\"right\"><b>%1</b></td>" |
613 | "<td align=\"left\">%2 %3</td></tr>" ) | 638 | "<td align=\"left\">%2 %3</td></tr>" ) |
614 | .arg( KABC::PhoneNumber::typeLabel( phonetype ) ) | 639 | .arg( KABC::PhoneNumber::typeLabel( phonetype ) ) |
615 | .arg( (*phoneIt).number() ) | 640 | .arg( (*phoneIt).number() ) |
616 | .arg( sms ); | 641 | .arg( sms ); |
617 | } | 642 | } |
618 | } | 643 | } |
619 | return dynamicPart; | 644 | return dynamicPart; |
620 | } | 645 | } |
621 | /* | 646 | /* |
622 | KABC::Addressee AddresseeView::addressee() const | 647 | KABC::Addressee AddresseeView::addressee() const |
623 | { | 648 | { |
624 | return mAddressee; | 649 | return mAddressee; |
625 | } | 650 | } |
626 | */ | 651 | */ |
627 | void AddresseeView::addTag(const QString & tag,const QString & text) | 652 | void AddresseeView::addTag(const QString & tag,const QString & text) |
628 | { | 653 | { |
629 | if ( text.isEmpty() ) | 654 | if ( text.isEmpty() ) |
630 | return; | 655 | return; |
631 | int number=text.contains("\n"); | 656 | int number=text.contains("\n"); |
632 | QString str = "<" + tag + ">"; | 657 | QString str = "<" + tag + ">"; |
633 | QString tmpText=text; | 658 | QString tmpText=text; |
634 | QString tmpStr=str; | 659 | QString tmpStr=str; |
635 | if(number !=-1) | 660 | if(number !=-1) |
636 | { | 661 | { |
637 | if (number > 0) { | 662 | if (number > 0) { |
638 | int pos=0; | 663 | int pos=0; |
639 | QString tmp; | 664 | QString tmp; |
640 | for(int i=0;i<=number;i++) { | 665 | for(int i=0;i<=number;i++) { |
641 | pos=tmpText.find("\n"); | 666 | pos=tmpText.find("\n"); |
642 | tmp=tmpText.left(pos); | 667 | tmp=tmpText.left(pos); |
643 | tmpText=tmpText.right(tmpText.length()-pos-1); | 668 | tmpText=tmpText.right(tmpText.length()-pos-1); |
644 | tmpStr+=tmp+"<br>"; | 669 | tmpStr+=tmp+"<br>"; |
645 | } | 670 | } |
646 | } | 671 | } |
647 | else tmpStr += tmpText; | 672 | else tmpStr += tmpText; |
648 | tmpStr+="</" + tag + ">"; | 673 | tmpStr+="</" + tag + ">"; |
649 | mText.append(tmpStr); | 674 | mText.append(tmpStr); |
650 | } | 675 | } |
651 | else | 676 | else |
652 | { | 677 | { |
653 | str += text + "</" + tag + ">"; | 678 | str += text + "</" + tag + ">"; |
654 | mText.append(str); | 679 | mText.append(str); |
655 | } | 680 | } |
656 | } | 681 | } |
657 | 682 | ||
658 | AddresseeChooser::AddresseeChooser( KABC::Addressee loc, KABC::Addressee rem, bool takeloc, QWidget *parent, const char *name ) : KDialogBase(parent,name, | 683 | AddresseeChooser::AddresseeChooser( KABC::Addressee loc, KABC::Addressee rem, bool takeloc, QWidget *parent, const char *name ) : KDialogBase(parent,name, |
659 | true ,i18n("Conflict! Please choose Adressee!"),Ok|User1|Close,Close, false) | 684 | true ,i18n("Conflict! Please choose Adressee!"),Ok|User1|Close,Close, false) |
660 | { | 685 | { |
661 | findButton( Close )->setText( i18n("Cancel Sync")); | 686 | findButton( Close )->setText( i18n("Cancel Sync")); |
662 | findButton( Ok )->setText( i18n("Remote")); | 687 | findButton( Ok )->setText( i18n("Remote")); |
663 | findButton( User1 )->setText( i18n("Local")); | 688 | findButton( User1 )->setText( i18n("Local")); |
diff --git a/kabc/phonenumber.cpp b/kabc/phonenumber.cpp index 6db1bcf..897c56d 100644 --- a/kabc/phonenumber.cpp +++ b/kabc/phonenumber.cpp | |||
@@ -6,364 +6,369 @@ | |||
6 | modify it under the terms of the GNU Library General Public | 6 | modify it under the terms of the GNU Library General Public |
7 | License as published by the Free Software Foundation; either | 7 | License as published by the Free Software Foundation; either |
8 | version 2 of the License, or (at your option) any later version. | 8 | version 2 of the License, or (at your option) any later version. |
9 | 9 | ||
10 | This library is distributed in the hope that it will be useful, | 10 | This library is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
13 | Library General Public License for more details. | 13 | Library General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU Library General Public License | 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 | 16 | along with this library; see the file COPYING.LIB. If not, write to |
17 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 17 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
18 | Boston, MA 02111-1307, USA. | 18 | Boston, MA 02111-1307, USA. |
19 | */ | 19 | */ |
20 | 20 | ||
21 | /* | 21 | /* |
22 | Enhanced Version of the file for platform independent KDE tools. | 22 | Enhanced Version of the file for platform independent KDE tools. |
23 | Copyright (c) 2004 Ulf Schenk | 23 | Copyright (c) 2004 Ulf Schenk |
24 | 24 | ||
25 | $Id$ | 25 | $Id$ |
26 | */ | 26 | */ |
27 | 27 | ||
28 | #include <kapplication.h> | 28 | #include <kapplication.h> |
29 | #include <klocale.h> | 29 | #include <klocale.h> |
30 | 30 | ||
31 | #include "phonenumber.h" | 31 | #include "phonenumber.h" |
32 | 32 | ||
33 | using namespace KABC; | 33 | using namespace KABC; |
34 | 34 | ||
35 | PhoneNumber::PhoneNumber() : | 35 | PhoneNumber::PhoneNumber() : |
36 | mType( Home ) | 36 | mType( Home ) |
37 | { | 37 | { |
38 | init(); | 38 | init(); |
39 | } | 39 | } |
40 | 40 | ||
41 | PhoneNumber::PhoneNumber( const QString &number, int type ) : | 41 | PhoneNumber::PhoneNumber( const QString &number, int type ) : |
42 | mType( type ), mNumber( number ) | 42 | mType( type ), mNumber( number ) |
43 | { | 43 | { |
44 | init(); | 44 | init(); |
45 | } | 45 | } |
46 | 46 | ||
47 | PhoneNumber::~PhoneNumber() | 47 | PhoneNumber::~PhoneNumber() |
48 | { | 48 | { |
49 | } | 49 | } |
50 | 50 | ||
51 | void PhoneNumber::init() | 51 | void PhoneNumber::init() |
52 | { | 52 | { |
53 | mId = KApplication::randomString( 8 ); | 53 | mId = KApplication::randomString( 8 ); |
54 | } | 54 | } |
55 | 55 | ||
56 | bool PhoneNumber::operator==( const PhoneNumber &p ) const | 56 | bool PhoneNumber::operator==( const PhoneNumber &p ) const |
57 | { | 57 | { |
58 | if ( mNumber != p.mNumber ) return false; | 58 | if ( mNumber != p.mNumber ) return false; |
59 | if ( mType != p.mType ) return false; | 59 | if ( mType != p.mType ) return false; |
60 | 60 | ||
61 | return true; | 61 | return true; |
62 | } | 62 | } |
63 | 63 | ||
64 | bool PhoneNumber::operator!=( const PhoneNumber &p ) const | 64 | bool PhoneNumber::operator!=( const PhoneNumber &p ) const |
65 | { | 65 | { |
66 | return !( p == *this ); | 66 | return !( p == *this ); |
67 | } | 67 | } |
68 | void PhoneNumber::makeCompat() | 68 | void PhoneNumber::makeCompat() |
69 | { | 69 | { |
70 | mType = getCompatType( mType ); | 70 | mType = getCompatType( mType ); |
71 | } | 71 | } |
72 | int PhoneNumber::getCompatType( int type ) | 72 | int PhoneNumber::getCompatType( int type ) |
73 | { | 73 | { |
74 | 74 | ||
75 | if ((type & Cell) == Cell) { | 75 | if ((type & Cell) == Cell) { |
76 | if ((type & Work) == Work) | 76 | if ((type & Work) == Work) |
77 | return Car; | 77 | return Car; |
78 | return Cell; | 78 | return Cell; |
79 | } | 79 | } |
80 | if ((type & Home) == Home) { | 80 | if ((type & Home) == Home) { |
81 | if ((type & Pref) == Pref) | 81 | if ((type & Pref) == Pref) |
82 | return (Home | Pref); | 82 | return (Home | Pref); |
83 | if ((type & Fax) == Fax) | 83 | if ((type & Fax) == Fax) |
84 | return (Home | Fax); | 84 | return (Home | Fax); |
85 | return (Home); | 85 | return (Home); |
86 | } | 86 | } |
87 | if ((type & Work) == Work) { | 87 | if ((type & Work) == Work) { |
88 | if ((type & Pref) == Pref) | 88 | if ((type & Pref) == Pref) |
89 | return (Work| Pref); | 89 | return (Work| Pref); |
90 | if ((type & Fax) == Fax) | 90 | if ((type & Fax) == Fax) |
91 | return (Fax |Work); | 91 | return (Fax |Work); |
92 | if ((type & Msg) == Msg) { | 92 | if ((type & Msg) == Msg) { |
93 | if ((type & Voice) == Voice) | 93 | if ((type & Voice) == Voice) |
94 | return ( Msg | Voice |Work); | 94 | return ( Msg | Voice |Work); |
95 | return ( Msg | Work); | 95 | return ( Msg | Work); |
96 | } | 96 | } |
97 | return Work; | 97 | return Work; |
98 | } | 98 | } |
99 | if ((type & Pcs) == Pcs) { | 99 | if ((type & Pcs) == Pcs) { |
100 | if ((type & Pref) == Pref) | 100 | if ((type & Pref) == Pref) |
101 | return Pcs | Pref; | 101 | return Pcs | Pref; |
102 | if ((type & Voice) == Voice) | ||
103 | return Pcs | Voice; | ||
102 | return Pcs; | 104 | return Pcs; |
103 | } | 105 | } |
104 | if ((type & Car) == Car) | 106 | if ((type & Car) == Car) |
105 | return Car; | 107 | return Car; |
106 | if ((type & Pager) == Pager) | 108 | if ((type & Pager) == Pager) |
107 | return Pager; | 109 | return Pager; |
108 | if ((type & Isdn) == Isdn) | 110 | if ((type & Isdn) == Isdn) |
109 | return Isdn; | 111 | return Isdn; |
112 | #if 0 | ||
110 | if ((type & Video) == Video) | 113 | if ((type & Video) == Video) |
111 | return Video; | 114 | return Video; |
112 | 115 | #endif | |
113 | if ((type & Msg) == Msg) | 116 | if ((type & Msg) == Msg) |
114 | return Msg; | 117 | return Msg; |
115 | if ((type & Fax) == Fax) | 118 | if ((type & Fax) == Fax) |
116 | return Fax; | 119 | return Fax; |
117 | 120 | ||
118 | if ((type & Pref) == Pref) | 121 | if ((type & Pref) == Pref) |
119 | return Pref; | 122 | return Pref; |
120 | 123 | ||
121 | return Voice; | 124 | return Voice; |
122 | 125 | ||
123 | } | 126 | } |
124 | bool PhoneNumber::simplifyNumber() | 127 | bool PhoneNumber::simplifyNumber() |
125 | { | 128 | { |
126 | QString Number; | 129 | QString Number; |
127 | int i; | 130 | int i; |
128 | Number = mNumber.stripWhiteSpace (); | 131 | Number = mNumber.stripWhiteSpace (); |
129 | mNumber = ""; | 132 | mNumber = ""; |
130 | for ( i = 0; i < Number.length(); ++i) { | 133 | for ( i = 0; i < Number.length(); ++i) { |
131 | if ( Number.at(i).isDigit() || Number.at(i) == '+'|| Number.at(i) == '*'|| Number.at(i) == '#' ) | 134 | if ( Number.at(i).isDigit() || Number.at(i) == '+'|| Number.at(i) == '*'|| Number.at(i) == '#' ) |
132 | mNumber += Number.at(i); | 135 | mNumber += Number.at(i); |
133 | } | 136 | } |
134 | return ( mNumber.length() > 0 ); | 137 | return ( mNumber.length() > 0 ); |
135 | } | 138 | } |
136 | // make cellphone compatible | 139 | // make cellphone compatible |
137 | void PhoneNumber::simplifyType() | 140 | void PhoneNumber::simplifyType() |
138 | { | 141 | { |
139 | if ( mType & Fax ) mType = Fax; | 142 | if ( mType & Fax ) mType = Fax; |
140 | else if ( mType & Cell ) mType = Cell; | 143 | else if ( mType & Cell ) mType = Cell; |
141 | else if ( mType & Work ) mType = Work ; | 144 | else if ( mType & Work ) mType = Work ; |
142 | else if ( mType & Home ) mType = Home; | 145 | else if ( mType & Home ) mType = Home; |
143 | else mType = Pref; | 146 | else mType = Pref; |
144 | } | 147 | } |
145 | bool PhoneNumber::contains( const PhoneNumber &p ) | 148 | bool PhoneNumber::contains( const PhoneNumber &p ) |
146 | { | 149 | { |
147 | PhoneNumber myself; | 150 | PhoneNumber myself; |
148 | PhoneNumber other; | 151 | PhoneNumber other; |
149 | myself = *this; | 152 | myself = *this; |
150 | other = p; | 153 | other = p; |
151 | myself.simplifyNumber(); | 154 | myself.simplifyNumber(); |
152 | other.simplifyNumber(); | 155 | other.simplifyNumber(); |
153 | if ( myself.number() != other.number ()) | 156 | if ( myself.number() != other.number ()) |
154 | return false; | 157 | return false; |
155 | myself.simplifyType(); | 158 | myself.simplifyType(); |
156 | other.simplifyType(); | 159 | other.simplifyType(); |
157 | if ( myself.type() == other.type()) | 160 | if ( myself.type() == other.type()) |
158 | return true; | 161 | return true; |
159 | return false; | 162 | return false; |
160 | } | 163 | } |
161 | 164 | ||
162 | void PhoneNumber::setId( const QString &id ) | 165 | void PhoneNumber::setId( const QString &id ) |
163 | { | 166 | { |
164 | mId = id; | 167 | mId = id; |
165 | } | 168 | } |
166 | 169 | ||
167 | QString PhoneNumber::id() const | 170 | QString PhoneNumber::id() const |
168 | { | 171 | { |
169 | return mId; | 172 | return mId; |
170 | } | 173 | } |
171 | 174 | ||
172 | void PhoneNumber::setNumber( const QString &number ) | 175 | void PhoneNumber::setNumber( const QString &number ) |
173 | { | 176 | { |
174 | mNumber = number; | 177 | mNumber = number; |
175 | } | 178 | } |
176 | 179 | ||
177 | QString PhoneNumber::number() const | 180 | QString PhoneNumber::number() const |
178 | { | 181 | { |
179 | return mNumber; | 182 | return mNumber; |
180 | } | 183 | } |
181 | 184 | ||
182 | void PhoneNumber::setType( int type ) | 185 | void PhoneNumber::setType( int type ) |
183 | { | 186 | { |
184 | mType = type; | 187 | mType = type; |
185 | } | 188 | } |
186 | 189 | ||
187 | int PhoneNumber::type() const | 190 | int PhoneNumber::type() const |
188 | { | 191 | { |
189 | return mType; | 192 | return mType; |
190 | } | 193 | } |
191 | 194 | ||
192 | QString PhoneNumber::typeLabel() const | 195 | QString PhoneNumber::typeLabel() const |
193 | { | 196 | { |
194 | QString label; | 197 | QString label; |
195 | bool first = true; | 198 | bool first = true; |
196 | 199 | ||
197 | TypeList list = typeList(); | 200 | TypeList list = typeList(); |
198 | 201 | ||
199 | TypeList::Iterator it; | 202 | TypeList::Iterator it; |
200 | for ( it = list.begin(); it != list.end(); ++it ) { | 203 | for ( it = list.begin(); it != list.end(); ++it ) { |
201 | if ( ( type() & (*it) ) && ( (*it) != Pref ) ) { | 204 | if ( ( type() & (*it) ) && ( (*it) != Pref ) ) { |
202 | label.append( ( first ? "" : "/" ) + typeLabel( *it ) ); | 205 | label.append( ( first ? "" : "/" ) + typeLabel( *it ) ); |
203 | if ( first ) | 206 | if ( first ) |
204 | first = false; | 207 | first = false; |
205 | } | 208 | } |
206 | } | 209 | } |
207 | 210 | ||
208 | return label; | 211 | return label; |
209 | } | 212 | } |
210 | 213 | ||
211 | QString PhoneNumber::label() const | 214 | QString PhoneNumber::label() const |
212 | { | 215 | { |
213 | return typeLabel( type() ); | 216 | return typeLabel( type() ); |
214 | } | 217 | } |
215 | 218 | ||
216 | PhoneNumber::TypeList PhoneNumber::typeList() | 219 | PhoneNumber::TypeList PhoneNumber::typeList() |
217 | { | 220 | { |
218 | TypeList list; | 221 | TypeList list; |
219 | 222 | ||
220 | list << Home << Work << Msg << Pref << Voice << Fax << Cell << Video | 223 | list << Home << Work << Msg << Pref << Voice << Fax << Cell << Video |
221 | << Bbs << Modem << Car << Isdn << Pcs << Pager; | 224 | << Bbs << Modem << Car << Isdn << Pcs << Pager; |
222 | 225 | ||
223 | return list; | 226 | return list; |
224 | } | 227 | } |
225 | PhoneNumber::TypeList PhoneNumber::supportedTypeList() | 228 | PhoneNumber::TypeList PhoneNumber::supportedTypeList() |
226 | { | 229 | { |
227 | static TypeList list; | 230 | static TypeList list; |
228 | if ( list.count() == 0 ) | 231 | if ( list.count() == 0 ) |
229 | list << (Home| Pref) << (Work| Pref) << Cell <<(Pcs|Pref)<< Pcs<< Home << Work << Car << (Work| Msg | Voice) << (Work| Msg) << (Home | Fax) << (Work| Fax) << Fax<< Pager << Isdn << Video << Msg << Pref << Voice; | 232 | list << (Home| Pref) << (Work| Pref) << Cell <<(Pcs|Pref)<< (Pcs|Voice)<< Home << Work << Car << Pcs <<(Work| Msg | Voice) << (Work| Msg) << (Home | Fax) << (Work| Fax) << Fax<< Pager << Isdn << Msg << Pref << Voice; |
230 | return list; | 233 | return list; |
231 | } | 234 | } |
232 | QStringList PhoneNumber::supportedTypeListNames() | 235 | QStringList PhoneNumber::supportedTypeListNames() |
233 | { | 236 | { |
234 | static QStringList list; | 237 | static QStringList list; |
235 | if ( list.count() == 0 ) | 238 | if ( list.count() == 0 ) |
236 | list << i18n("Home") << i18n("Work") << i18n("Mobile") << i18n("SIP") << i18n("VoIP") <<i18n("Home2")<< i18n("Work2") << i18n("Mobile2") << i18n("Assistent") << i18n("Company") << i18n("Fax (Home)") << i18n("Fax (Work)") << i18n("Fax (Other)") << i18n("Pager") << i18n("ISDN") << i18n("Video") << i18n("Callback") << i18n("Primary")<< i18n("Other"); | 239 | list << i18n("Home") << i18n("Work") << i18n("Mobile") << i18n("SIP") << i18n("VoIP") <<i18n("Home2")<< i18n("Work2") << i18n("Mobile2") << i18n("SIP2") << i18n("Assistent") << i18n("Company") << i18n("Fax (Home)") << i18n("Fax (Work)") << i18n("Fax (Other)") << i18n("Pager") << i18n("ISDN") << i18n("Callback") << i18n("Primary")<< i18n("Other"); |
237 | return list; | 240 | return list; |
238 | } | 241 | } |
239 | 242 | ||
240 | int PhoneNumber::typeListIndex4Type(int type ) | 243 | int PhoneNumber::typeListIndex4Type(int type ) |
241 | { | 244 | { |
242 | TypeList list = supportedTypeList(); | 245 | TypeList list = supportedTypeList(); |
243 | int i = 0; | 246 | int i = 0; |
244 | while ( i < list.count() ) { | 247 | while ( i < list.count() ) { |
245 | if ( list [i] == type ) | 248 | if ( list [i] == type ) |
246 | return i; | 249 | return i; |
247 | ++i; | 250 | ++i; |
248 | } | 251 | } |
249 | return list.count()-1; | 252 | return list.count()-1; |
250 | } | 253 | } |
251 | 254 | ||
252 | QString PhoneNumber::label( int type ) | 255 | QString PhoneNumber::label( int type ) |
253 | { | 256 | { |
254 | return typeLabel( type ); | 257 | return typeLabel( type ); |
255 | } | 258 | } |
256 | 259 | ||
257 | QString PhoneNumber::typeLabel( int type ) | 260 | QString PhoneNumber::typeLabel( int type ) |
258 | { | 261 | { |
259 | if ((type & Cell) == Cell) | 262 | if ((type & Cell) == Cell) |
260 | return i18n("Mobile"); | 263 | return i18n("Mobile"); |
261 | if ((type & Home) == Home) { | 264 | if ((type & Home) == Home) { |
262 | if ((type & Pref) == Pref) | 265 | if ((type & Pref) == Pref) |
263 | return i18n("Home"); | 266 | return i18n("Home"); |
264 | if ((type & Fax) == Fax) | 267 | if ((type & Fax) == Fax) |
265 | return i18n("Fax (Home)"); | 268 | return i18n("Fax (Home)"); |
266 | return i18n("Home2"); | 269 | return i18n("Home2"); |
267 | } | 270 | } |
268 | 271 | ||
269 | if ((type & Work) == Work) { | 272 | if ((type & Work) == Work) { |
270 | if ((type & Pref) == Pref) | 273 | if ((type & Pref) == Pref) |
271 | return i18n("Work"); | 274 | return i18n("Work"); |
272 | if ((type & Fax) == Fax) | 275 | if ((type & Fax) == Fax) |
273 | return i18n("Fax (Work)"); | 276 | return i18n("Fax (Work)"); |
274 | if ((type & Msg) == Msg) { | 277 | if ((type & Msg) == Msg) { |
275 | if ((type & Voice) == Voice) | 278 | if ((type & Voice) == Voice) |
276 | return i18n("Assistent"); | 279 | return i18n("Assistent"); |
277 | return i18n("Company"); | 280 | return i18n("Company"); |
278 | } | 281 | } |
279 | return i18n("Work2"); | 282 | return i18n("Work2"); |
280 | } | 283 | } |
281 | if ((type & Pcs) == Pcs) { | 284 | if ((type & Pcs) == Pcs) { |
282 | if ((type & Pref) == Pref) | 285 | if ((type & Pref) == Pref) |
283 | return i18n("SIP"); | 286 | return i18n("SiP"); |
284 | return i18n("VoIP"); | 287 | if ((type & Voice) == Voice) |
288 | return i18n("VoIP"); | ||
289 | return i18n("SiP2"); | ||
285 | } | 290 | } |
286 | if ((type & Car) == Car) | 291 | if ((type & Car) == Car) |
287 | return i18n("Mobile2"); | 292 | return i18n("Mobile2"); |
288 | if ((type & Pager) == Pager) | 293 | if ((type & Pager) == Pager) |
289 | return i18n("Pager"); | 294 | return i18n("Pager"); |
290 | if ((type & Isdn) == Isdn) | 295 | if ((type & Isdn) == Isdn) |
291 | return i18n("ISDN"); | 296 | return i18n("ISDN"); |
292 | if ((type & Video) == Video) | 297 | if ((type & Video) == Video) |
293 | return i18n("Video"); | 298 | return i18n("Video"); |
294 | 299 | ||
295 | if ((type & Msg) == Msg) | 300 | if ((type & Msg) == Msg) |
296 | return i18n("Callback"); | 301 | return i18n("Callback"); |
297 | if ((type & Fax) == Fax) | 302 | if ((type & Fax) == Fax) |
298 | return i18n("Fax (Other)"); | 303 | return i18n("Fax (Other)"); |
299 | 304 | ||
300 | if ((type & Pref) == Pref) | 305 | if ((type & Pref) == Pref) |
301 | return i18n("Primary"); | 306 | return i18n("Primary"); |
302 | 307 | ||
303 | 308 | ||
304 | return i18n("Other"); | 309 | return i18n("Other"); |
305 | 310 | ||
306 | 311 | ||
307 | #if 0 | 312 | #if 0 |
308 | 313 | ||
309 | 314 | ||
310 | 315 | ||
311 | QString typeString; | 316 | QString typeString; |
312 | 317 | ||
313 | 318 | ||
314 | if ((type & Cell) == Cell) | 319 | if ((type & Cell) == Cell) |
315 | typeString += i18n("Mobile") +" "; | 320 | typeString += i18n("Mobile") +" "; |
316 | if ((type & Home) == Home) | 321 | if ((type & Home) == Home) |
317 | typeString += i18n("Home")+" "; | 322 | typeString += i18n("Home")+" "; |
318 | else if ((type & Work) == Work) | 323 | else if ((type & Work) == Work) |
319 | typeString += i18n("Work")+" "; | 324 | typeString += i18n("Work")+" "; |
320 | 325 | ||
321 | if ((type & Sip) == Sip) | 326 | if ((type & Sip) == Sip) |
322 | typeString += i18n("SIP")+" "; | 327 | typeString += i18n("SIP")+" "; |
323 | if ((type & Car) == Car) | 328 | if ((type & Car) == Car) |
324 | typeString += i18n("Car")+" "; | 329 | typeString += i18n("Car")+" "; |
325 | 330 | ||
326 | if ((type & Fax) == Fax) | 331 | if ((type & Fax) == Fax) |
327 | typeString += i18n("Fax"); | 332 | typeString += i18n("Fax"); |
328 | else if ((type & Msg) == Msg) | 333 | else if ((type & Msg) == Msg) |
329 | typeString += i18n("Messenger"); | 334 | typeString += i18n("Messenger"); |
330 | else if ((type & Video) == Video) | 335 | else if ((type & Video) == Video) |
331 | typeString += i18n("Video"); | 336 | typeString += i18n("Video"); |
332 | else if ((type & Bbs) == Bbs) | 337 | else if ((type & Bbs) == Bbs) |
333 | typeString += i18n("Mailbox"); | 338 | typeString += i18n("Mailbox"); |
334 | else if ((type & Modem) == Modem) | 339 | else if ((type & Modem) == Modem) |
335 | typeString += i18n("Modem"); | 340 | typeString += i18n("Modem"); |
336 | else if ((type & Isdn) == Isdn) | 341 | else if ((type & Isdn) == Isdn) |
337 | typeString += i18n("ISDN"); | 342 | typeString += i18n("ISDN"); |
338 | else if ((type & Pcs) == Pcs) | 343 | else if ((type & Pcs) == Pcs) |
339 | typeString += i18n("PCS"); | 344 | typeString += i18n("PCS"); |
340 | else if ((type & Pager) == Pager) | 345 | else if ((type & Pager) == Pager) |
341 | typeString += i18n("Pager"); | 346 | typeString += i18n("Pager"); |
342 | // add the prefered flag | 347 | // add the prefered flag |
343 | /* | 348 | /* |
344 | if ((type & Pref) == Pref) | 349 | if ((type & Pref) == Pref) |
345 | typeString += i18n("(p)"); | 350 | typeString += i18n("(p)"); |
346 | */ | 351 | */ |
347 | //if we still have no match, return "other" | 352 | //if we still have no match, return "other" |
348 | if (typeString.isEmpty()) { | 353 | if (typeString.isEmpty()) { |
349 | if ((type & Voice) == Voice) | 354 | if ((type & Voice) == Voice) |
350 | return i18n("Voice"); | 355 | return i18n("Voice"); |
351 | else | 356 | else |
352 | return i18n("Other"); | 357 | return i18n("Other"); |
353 | } | 358 | } |
354 | 359 | ||
355 | return typeString.stripWhiteSpace(); | 360 | return typeString.stripWhiteSpace(); |
356 | #endif | 361 | #endif |
357 | } | 362 | } |
358 | 363 | ||
359 | QDataStream &KABC::operator<<( QDataStream &s, const PhoneNumber &phone ) | 364 | QDataStream &KABC::operator<<( QDataStream &s, const PhoneNumber &phone ) |
360 | { | 365 | { |
361 | return s << phone.mId << phone.mType << phone.mNumber; | 366 | return s << phone.mId << phone.mType << phone.mNumber; |
362 | } | 367 | } |
363 | 368 | ||
364 | QDataStream &KABC::operator>>( QDataStream &s, PhoneNumber &phone ) | 369 | QDataStream &KABC::operator>>( QDataStream &s, PhoneNumber &phone ) |
365 | { | 370 | { |
366 | s >> phone.mId >> phone.mType >> phone.mNumber; | 371 | s >> phone.mId >> phone.mType >> phone.mNumber; |
367 | 372 | ||
368 | return s; | 373 | return s; |
369 | } | 374 | } |