summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/contacteditor.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/core/pim/addressbook/contacteditor.cpp b/core/pim/addressbook/contacteditor.cpp
index cbcd11f..adea1a1 100644
--- a/core/pim/addressbook/contacteditor.cpp
+++ b/core/pim/addressbook/contacteditor.cpp
@@ -968,163 +968,163 @@ bool ContactEditor::isEmpty() {
968 968
969 return true; 969 return true;
970 970
971} 971}
972 972
973QString ContactEditor::parseName( const QString fullName, int type ) { 973QString ContactEditor::parseName( const QString fullName, int type ) {
974 974
975 QString simplifiedName( fullName.simplifyWhiteSpace() ); 975 QString simplifiedName( fullName.simplifyWhiteSpace() );
976 QString strFirstName; 976 QString strFirstName;
977 QString strMiddleName; 977 QString strMiddleName;
978 QString strLastName; 978 QString strLastName;
979 QString strSuffix; 979 QString strSuffix;
980 QString strTitle; 980 QString strTitle;
981 int commapos; 981 int commapos;
982 int spCount; 982 int spCount;
983 int spPos; 983 int spPos;
984 int spPos2; 984 int spPos2;
985 985
986 986
987 commapos = simplifiedName.find( ',', 0, TRUE); 987 commapos = simplifiedName.find( ',', 0, TRUE);
988 spCount = simplifiedName.contains( ' ', TRUE ); 988 spCount = simplifiedName.contains( ' ', TRUE );
989 989
990 if ( commapos == -1 ) { 990 if ( commapos == -1 ) {
991 991
992 switch (spCount) { 992 switch (spCount) {
993 case 0: 993 case 0:
994 return simplifiedName; 994 return simplifiedName;
995 995
996 case 1: 996 case 1:
997 spPos = simplifiedName.find( ' ', 0, TRUE ); 997 spPos = simplifiedName.find( ' ', 0, TRUE );
998 strFirstName = simplifiedName.left( spPos ); 998 strFirstName = simplifiedName.left( spPos );
999 strLastName = simplifiedName.mid( spPos + 1 ); 999 strLastName = simplifiedName.mid( spPos + 1 );
1000 break; 1000 break;
1001 1001
1002 case 2: 1002 case 2:
1003 spPos = simplifiedName.find( ' ', 0, TRUE ); 1003 spPos = simplifiedName.find( ' ', 0, TRUE );
1004 strFirstName = simplifiedName.left( spPos ); 1004 strFirstName = simplifiedName.left( spPos );
1005 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1005 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1006 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1006 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1007 strLastName = simplifiedName.mid( spPos2 + 1 ); 1007 strLastName = simplifiedName.mid( spPos2 + 1 );
1008 break; 1008 break;
1009 1009
1010 case 3: 1010 case 3:
1011 spPos = simplifiedName.find( ' ', 0, TRUE ); 1011 spPos = simplifiedName.find( ' ', 0, TRUE );
1012 strFirstName = simplifiedName.left( spPos ); 1012 strFirstName = simplifiedName.left( spPos );
1013 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1013 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1014 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1014 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1015 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE ); 1015 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE );
1016 strLastName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos ); 1016 strLastName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos2 );
1017 strSuffix = simplifiedName.mid( spPos + 1 ); 1017 strSuffix = simplifiedName.mid( spPos + 1 );
1018 break; 1018 break;
1019 1019
1020 case 4: 1020 case 4:
1021 spPos = simplifiedName.find( ' ', 0, TRUE ); 1021 spPos = simplifiedName.find( ' ', 0, TRUE );
1022 strTitle = simplifiedName.left( spPos ); 1022 strTitle = simplifiedName.left( spPos );
1023 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1023 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1024 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1024 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1025 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE ); 1025 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE );
1026 strMiddleName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos ); 1026 strMiddleName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos2 );
1027 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1027 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1028 strLastName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1028 strLastName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1029 strSuffix = simplifiedName.mid( spPos2 + 1 ); 1029 strSuffix = simplifiedName.mid( spPos2 + 1 );
1030 break; 1030 break;
1031 1031
1032 default: 1032 default:
1033 spPos = simplifiedName.find( ' ', 0, TRUE ); 1033 spPos = simplifiedName.find( ' ', 0, TRUE );
1034 strTitle = simplifiedName.left( spPos ); 1034 strTitle = simplifiedName.left( spPos );
1035 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1035 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1036 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1036 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1037 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE ); 1037 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE );
1038 strMiddleName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos ); 1038 strMiddleName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos2 );
1039 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1039 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1040 strLastName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1040 strLastName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1041 strSuffix = simplifiedName.mid( spPos2 + 1 ); 1041 strSuffix = simplifiedName.mid( spPos2 + 1 );
1042 break; 1042 break;
1043 } 1043 }
1044 } else { 1044 } else {
1045 simplifiedName.replace( commapos, 1, " " ); 1045 simplifiedName.replace( commapos, 1, " " );
1046 simplifiedName = simplifiedName.simplifyWhiteSpace(); 1046 simplifiedName = simplifiedName.simplifyWhiteSpace();
1047 1047
1048 switch (spCount) { 1048 switch (spCount) {
1049 case 0: 1049 case 0:
1050 return simplifiedName; 1050 return simplifiedName;
1051 1051
1052 case 1: 1052 case 1:
1053 spPos = simplifiedName.find( ' ', 0, TRUE ); 1053 spPos = simplifiedName.find( ' ', 0, TRUE );
1054 strLastName = simplifiedName.left( spPos ); 1054 strLastName = simplifiedName.left( spPos );
1055 strFirstName = simplifiedName.mid( spPos + 1 ); 1055 strFirstName = simplifiedName.mid( spPos + 1 );
1056 break; 1056 break;
1057 1057
1058 case 2: 1058 case 2:
1059 spPos = simplifiedName.find( ' ', 0, TRUE ); 1059 spPos = simplifiedName.find( ' ', 0, TRUE );
1060 strLastName = simplifiedName.left( spPos ); 1060 strLastName = simplifiedName.left( spPos );
1061 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1061 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1062 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1062 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1063 strMiddleName = simplifiedName.mid( spPos2 + 1 ); 1063 strMiddleName = simplifiedName.mid( spPos2 + 1 );
1064 break; 1064 break;
1065 1065
1066 case 3: 1066 case 3:
1067 spPos = simplifiedName.find( ' ', 0, TRUE ); 1067 spPos = simplifiedName.find( ' ', 0, TRUE );
1068 strLastName = simplifiedName.left( spPos ); 1068 strLastName = simplifiedName.left( spPos );
1069 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1069 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1070 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1070 strFirstName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1071 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE ); 1071 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE );
1072 strMiddleName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos ); 1072 strMiddleName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos2 );
1073 strSuffix = simplifiedName.mid( spPos + 1 ); 1073 strSuffix = simplifiedName.mid( spPos + 1 );
1074 break; 1074 break;
1075 1075
1076 case 4: 1076 case 4:
1077 spPos = simplifiedName.find( ' ', 0, TRUE ); 1077 spPos = simplifiedName.find( ' ', 0, TRUE );
1078 strLastName = simplifiedName.left( spPos ); 1078 strLastName = simplifiedName.left( spPos );
1079 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1079 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1080 strTitle = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1080 strTitle = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1081 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE ); 1081 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE );
1082 strFirstName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos ); 1082 strFirstName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos2 );
1083 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1083 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1084 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1084 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1085 strSuffix = simplifiedName.mid( spPos2 + 1 ); 1085 strSuffix = simplifiedName.mid( spPos2 + 1 );
1086 break; 1086 break;
1087 1087
1088 default: 1088 default:
1089 spPos = simplifiedName.find( ' ', 0, TRUE ); 1089 spPos = simplifiedName.find( ' ', 0, TRUE );
1090 strLastName = simplifiedName.left( spPos ); 1090 strLastName = simplifiedName.left( spPos );
1091 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1091 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1092 strTitle = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1092 strTitle = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1093 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE ); 1093 spPos = simplifiedName.find( ' ', spPos2 + 1, TRUE );
1094 strFirstName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos ); 1094 strFirstName = simplifiedName.mid( spPos2 + 1, (spPos - 1) - spPos );
1095 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE ); 1095 spPos2 = simplifiedName.find( ' ', spPos + 1, TRUE );
1096 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos ); 1096 strMiddleName = simplifiedName.mid( spPos + 1, (spPos2 - 1) - spPos );
1097 strSuffix = simplifiedName.mid( spPos2 + 1 ); 1097 strSuffix = simplifiedName.mid( spPos2 + 1 );
1098 break; 1098 break;
1099 } 1099 }
1100 } 1100 }
1101 1101
1102 switch (type) { 1102 switch (type) {
1103 case NAME_FL: 1103 case NAME_FL:
1104 return strFirstName + " " + strLastName; 1104 return strFirstName + " " + strLastName;
1105 1105
1106 case NAME_LF: 1106 case NAME_LF:
1107 return strLastName + ", " + strFirstName; 1107 return strLastName + ", " + strFirstName;
1108 1108
1109 case NAME_LFM: 1109 case NAME_LFM:
1110 return strLastName + ", " + strFirstName + " " + strMiddleName; 1110 return strLastName + ", " + strFirstName + " " + strMiddleName;
1111 1111
1112 case NAME_FMLS: 1112 case NAME_FMLS:
1113 return strFirstName + " " + strMiddleName + " " + strLastName + " " + strSuffix; 1113 return strFirstName + " " + strMiddleName + " " + strLastName + " " + strSuffix;
1114 1114
1115 case NAME_F: 1115 case NAME_F:
1116 return strFirstName; 1116 return strFirstName;
1117 1117
1118 case NAME_M: 1118 case NAME_M:
1119 return strMiddleName; 1119 return strMiddleName;
1120 1120
1121 case NAME_L: 1121 case NAME_L:
1122 return strLastName; 1122 return strLastName;
1123 1123
1124 case NAME_S: 1124 case NAME_S:
1125 return strSuffix; 1125 return strSuffix;
1126 1126
1127 } 1127 }
1128} 1128}
1129 1129
1130void ContactEditor::cleanupFields() { 1130void ContactEditor::cleanupFields() {
@@ -1334,96 +1334,97 @@ void ContactEditor::setEntry( const Contact &entry ) {
1334 1334
1335 if ( *it == "MSN IM" ) 1335 if ( *it == "MSN IM" )
1336 *itV = ent.MSNIM(); 1336 *itV = ent.MSNIM();
1337 1337
1338 if ( *it == "Yahoo IM" ) 1338 if ( *it == "Yahoo IM" )
1339 *itV = ent.yahooIM(); 1339 *itV = ent.yahooIM();
1340*/ 1340*/
1341 if ( *it == "Home Web Page" ) 1341 if ( *it == "Home Web Page" )
1342 *itV = ent.homeWebpage(); 1342 *itV = ent.homeWebpage();
1343 if ( *it == "Business Web Page" || *it == "Work Web Page" ) 1343 if ( *it == "Business Web Page" || *it == "Work Web Page" )
1344 *itV = ent.businessWebpage(); 1344 *itV = ent.businessWebpage();
1345 1345
1346 1346
1347 } 1347 }
1348 1348
1349 cmbCat->setCategories( ent.categories(), "Contacts", tr("Contacts") ); 1349 cmbCat->setCategories( ent.categories(), "Contacts", tr("Contacts") );
1350 1350
1351 QString gender = ent.gender(); 1351 QString gender = ent.gender();
1352 cmbGender->setCurrentItem( gender.toInt() ); 1352 cmbGender->setCurrentItem( gender.toInt() );
1353 1353
1354 txtNote->setText( ent.notes() ); 1354 txtNote->setText( ent.notes() );
1355 1355
1356 slotCmbChooser1Change( cmbChooserField1->currentItem() ); 1356 slotCmbChooser1Change( cmbChooserField1->currentItem() );
1357 slotCmbChooser2Change( cmbChooserField2->currentItem() ); 1357 slotCmbChooser2Change( cmbChooserField2->currentItem() );
1358 slotCmbChooser3Change( cmbChooserField3->currentItem() ); 1358 slotCmbChooser3Change( cmbChooserField3->currentItem() );
1359 1359
1360 slotAddressTypeChange( cmbAddress->currentItem() ); 1360 slotAddressTypeChange( cmbAddress->currentItem() );
1361 1361
1362} 1362}
1363 1363
1364void ContactEditor::saveEntry() { 1364void ContactEditor::saveEntry() {
1365 1365
1366 if ( useFullName == TRUE ) { 1366 if ( useFullName == TRUE ) {
1367 txtFirstName->setText( parseName( txtFullName->text(), NAME_F ) ); 1367 txtFirstName->setText( parseName( txtFullName->text(), NAME_F ) );
1368 txtMiddleName->setText( parseName( txtFullName->text(), NAME_M ) ); 1368 txtMiddleName->setText( parseName( txtFullName->text(), NAME_M ) );
1369 txtLastName->setText( parseName( txtFullName->text(), NAME_L ) ); 1369 txtLastName->setText( parseName( txtFullName->text(), NAME_L ) );
1370 txtSuffix->setText( parseName( txtFullName->text(), NAME_S ) ); 1370 txtSuffix->setText( parseName( txtFullName->text(), NAME_S ) );
1371 1371
1372 useFullName = FALSE; 1372 useFullName = FALSE;
1373 } 1373 }
1374 1374
1375 /*if ( ent.firstName() != txtFirstName->text() || 1375 /*if ( ent.firstName() != txtFirstName->text() ||
1376 ent.lastName != txtLastName->text() || 1376 ent.lastName != txtLastName->text() ||
1377 ent.middleName != txtMiddleName->text() ) { 1377 ent.middleName != txtMiddleName->text() ) {
1378 */ 1378 */
1379 ent.setFirstName( txtFirstName->text() ); 1379 ent.setFirstName( txtFirstName->text() );
1380 ent.setLastName( txtLastName->text() ); 1380 ent.setLastName( txtLastName->text() );
1381 ent.setMiddleName( txtMiddleName->text() ); 1381 ent.setMiddleName( txtMiddleName->text() );
1382 ent.setSuffix( txtSuffix->text() );
1382 1383
1383 //} 1384 //}
1384 1385
1385 ent.setFileAs( cmbFileAs->currentText() ); 1386 ent.setFileAs( cmbFileAs->currentText() );
1386 1387
1387 ent.setCategories( cmbCat->currentCategories() ); 1388 ent.setCategories( cmbCat->currentCategories() );
1388 1389
1389 if (hasTitle) 1390 if (hasTitle)
1390 ent.setJobTitle( txtJobTitle->text() ); 1391 ent.setJobTitle( txtJobTitle->text() );
1391 1392
1392 if (hasCompany) 1393 if (hasCompany)
1393 ent.setCompany( txtOrganization->text() ); 1394 ent.setCompany( txtOrganization->text() );
1394 1395
1395 if (hasNotes) 1396 if (hasNotes)
1396 ent.setNotes( txtNote->text() ); 1397 ent.setNotes( txtNote->text() );
1397 1398
1398 if (hasStreet) { 1399 if (hasStreet) {
1399 ent.setHomeStreet( (*slHomeAddress)[0] ); 1400 ent.setHomeStreet( (*slHomeAddress)[0] );
1400 ent.setBusinessStreet( (*slBusinessAddress)[0] ); 1401 ent.setBusinessStreet( (*slBusinessAddress)[0] );
1401 } 1402 }
1402/* 1403/*
1403 if (hasStreet2) { 1404 if (hasStreet2) {
1404 ent.setHomeStreet2( (*slHomeAddress)[1] ); 1405 ent.setHomeStreet2( (*slHomeAddress)[1] );
1405 ent.setBusinessStreet2( (*slBusinessAddress)[1] ); 1406 ent.setBusinessStreet2( (*slBusinessAddress)[1] );
1406 } 1407 }
1407 1408
1408 if (hasPOBox) { 1409 if (hasPOBox) {
1409 ent.setHomePOBox( (*slHomeAddress)[2] ); 1410 ent.setHomePOBox( (*slHomeAddress)[2] );
1410 ent.setBusinessPOBox( (*slBusinessAddress)[2] ); 1411 ent.setBusinessPOBox( (*slBusinessAddress)[2] );
1411 } 1412 }
1412*/ 1413*/
1413 if (hasCity) { 1414 if (hasCity) {
1414 ent.setHomeCity( (*slHomeAddress)[3] ); 1415 ent.setHomeCity( (*slHomeAddress)[3] );
1415 ent.setBusinessCity( (*slBusinessAddress)[3] ); 1416 ent.setBusinessCity( (*slBusinessAddress)[3] );
1416 } 1417 }
1417 1418
1418 if (hasState) { 1419 if (hasState) {
1419 ent.setHomeState( (*slHomeAddress)[4] ); 1420 ent.setHomeState( (*slHomeAddress)[4] );
1420 ent.setBusinessState( (*slBusinessAddress)[4] ); 1421 ent.setBusinessState( (*slBusinessAddress)[4] );
1421 } 1422 }
1422 1423
1423 if (hasZip) { 1424 if (hasZip) {
1424 ent.setHomeZip( (*slHomeAddress)[5] ); 1425 ent.setHomeZip( (*slHomeAddress)[5] );
1425 ent.setBusinessZip( (*slBusinessAddress)[5] ); 1426 ent.setBusinessZip( (*slBusinessAddress)[5] );
1426 } 1427 }
1427 1428
1428 if (hasCountry) { 1429 if (hasCountry) {
1429 ent.setHomeCountry( (*slHomeAddress)[6] ); 1430 ent.setHomeCountry( (*slHomeAddress)[6] );