summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/contacteditor.cpp56
1 files changed, 39 insertions, 17 deletions
diff --git a/core/pim/addressbook/contacteditor.cpp b/core/pim/addressbook/contacteditor.cpp
index 66e94ef..6d92ac3 100644
--- a/core/pim/addressbook/contacteditor.cpp
+++ b/core/pim/addressbook/contacteditor.cpp
@@ -436,35 +436,35 @@ void ContactEditor::init() {
gl->addWidget( txtMiddleName, 1, 1 );
l = new QLabel( tr("Last Name"), dlgName );
gl->addWidget( l, 2, 0 );
txtLastName = new QLineEdit( dlgName );
gl->addWidget( txtLastName, 2, 1 );
l = new QLabel( tr("Suffix"), dlgName );
gl->addWidget( l, 3, 0 );
txtSuffix = new QLineEdit( dlgName );
gl->addWidget( txtSuffix, 3, 1 );
cmbChooserField1->insertStringList( *slChooserNames );
cmbChooserField2->insertStringList( *slChooserNames );
cmbChooserField3->insertStringList( *slChooserNames );
- cmbChooserField1->setCurrentItem( 1 );
- cmbChooserField2->setCurrentItem( 2 );
- cmbChooserField3->setCurrentItem( 3 );
+ cmbChooserField1->setCurrentItem( 0 );
+ cmbChooserField2->setCurrentItem( 1 );
+ cmbChooserField3->setCurrentItem( 2 );
connect( btnFullName, SIGNAL(clicked()), this, SLOT(slotName()) );
connect( txtFullName, SIGNAL(textChanged(const QString &)), this, SLOT(slotFullNameChange(const QString &)) );
connect( txtChooserField1, SIGNAL(textChanged(const QString &)), this, SLOT(slotChooser1Change(const QString &)) );
connect( txtChooserField2, SIGNAL(textChanged(const QString &)), this, SLOT(slotChooser2Change(const QString &)) );
connect( txtChooserField3, SIGNAL(textChanged(const QString &)), this, SLOT(slotChooser3Change(const QString &)) );
connect( txtAddress, SIGNAL(textChanged(const QString &)), this, SLOT(slotAddressChange(const QString &)) );
//connect( txtAddress2, SIGNAL(textChanged(const QString &)), this, SLOT(slotAddress2Change(const QString &)) );
//connect( txtPOBox, SIGNAL(textChanged(const QString &)), this, SLOT(slotPOBoxChange(const QString &)) );
connect( txtCity, SIGNAL(textChanged(const QString &)), this, SLOT(slotCityChange(const QString &)) );
connect( txtState, SIGNAL(textChanged(const QString &)), this, SLOT(slotStateChange(const QString &)) );
connect( txtZip, SIGNAL(textChanged(const QString &)), this, SLOT(slotZipChange(const QString &)) );
connect( cmbCountry, SIGNAL(textChanged(const QString &)), this, SLOT(slotCountryChange(const QString &)) );
connect( cmbCountry, SIGNAL(activated(const QString &)), this, SLOT(slotCountryChange(const QString &)) );
@@ -946,32 +946,33 @@ void ContactEditor::cleanupFields() {
//txtAddress2->setText("");
txtCity->setText("");
//txtPOBox->setText("");
txtState->setText("");
txtZip->setText("");
QLineEdit *txtTmp = cmbCountry->lineEdit();
txtTmp->setText("");
txtTmp = cmbFileAs->lineEdit();
txtTmp->setText("");
}
void ContactEditor::setEntry( const Contact &entry ) {
cleanupFields();
+
ent = entry;
useFullName = FALSE;
txtFirstName->setText( ent.firstName() );
txtMiddleName->setText( ent.middleName() );
txtLastName->setText( ent.lastName() );
txtSuffix->setText( ent.suffix() );
QString *tmpString = new QString;
*tmpString = ent.firstName() + " " + ent.middleName() +
+ " " + ent.lastName() + " " + ent.suffix();
txtFullName->setText( tmpString->simplifyWhiteSpace() );
cmbFileAs->setEditText( ent.fileAs() );
@@ -1001,32 +1002,37 @@ void ContactEditor::setEntry( const Contact &entry ) {
*/
if (hasCity) {
(*slHomeAddress)[3] = ent.homeCity();
(*slBusinessAddress)[3] = ent.homeCity();
}
if (hasState) {
(*slHomeAddress)[4] = ent.homeState();
(*slBusinessAddress)[4] = ent.businessState();
}
if (hasZip) {
(*slHomeAddress)[5] = ent.homeZip();
(*slBusinessAddress)[5] = ent.businessZip();
}
+ if (hasCountry) {
+ (*slHomeAddress)[6] = ent.homeCountry();
+ (*slBusinessAddress)[6] = ent.businessCountry();
+ }
+
QStringList::ConstIterator it;
QListIterator<QLineEdit> itLE( listValue );
for ( it = slDynamicEntries->begin(); it != slDynamicEntries->end(); ++it, ++itLE) {
if ( *it == "Department" )
(*itLE)->setText( ent.department() );
if ( *it == "Company" )
(*itLE)->setText( ent.company() );
if ( *it == "Office" )
(*itLE)->setText( ent.office() );
if ( *it == "Profession" )
(*itLE)->setText( ent.profession() );
if ( *it == "Assistant" )
@@ -1042,110 +1048,116 @@ void ContactEditor::setEntry( const Contact &entry ) {
(*itLE)->setText( ent.birthday() );
if ( *it == "Anniversary" )
(*itLE)->setText( ent.anniversary() );
if ( *it == "Nickname" )
(*itLE)->setText( ent.nickname() );
if ( *it == "Children" )
(*itLE)->setText( ent.children() );
}
QStringList::Iterator itV;
for ( it = slChooserNames->begin(), itV = slChooserValues->begin(); it != slChooserNames->end(); ++it, ++itV ) {
- if ( *it == "Business Phone" )
+ if ( *it == "Business Phone" || *it == "Work Phone" )
*itV = ent.businessPhone();
/*
if ( *it == "Business 2 Phone" )
*itV = ent.business2Phone();
*/
- if ( *it == "Business Fax" )
+ if ( *it == "Business Fax" || *it == "Work Fax" )
*itV = ent.businessFax();
- if ( *it == "Business Mobile" )
+ if ( *it == "Business Mobile" || *it == "work Mobile" )
*itV = ent.businessMobile();
/*
if ( *it == "Company Phone" )
*itV = ent.companyPhone();
*/
if ( *it == "Default Email" )
*itV = ent.defaultEmail();
if ( *it == "Emails" )
*itV = ent.emails();
if ( *it == "Home Phone" )
*itV = ent.homePhone();
/*
if ( *it == "Home 2 Phone" )
*itV = ent.home2Phone();
*/
if ( *it == "Home Fax" )
*itV = ent.homeFax();
if ( *it == "Home Mobile" )
*itV = ent.homeMobile();
/*
if ( *it == "Car Phone" )
*itV = ent.carPhone();
if ( *it == "ISDN Phone" )
*itV = ent.ISDNPhone();
if ( *it == "Other Phone" )
*itV = ent.otherPhone();
*/
- if ( *it == "Business Pager" )
+ if ( *it == "Business Pager" || *it == "Work Pager" )
*itV = ent.businessPager();
/*
if ( *it == "Home Pager")
*itV = ent.homePager();
if ( *it == "AIM IM" )
*itV = ent.AIMIM();
if ( *it == "ICQ IM" )
*itV = ent.ICQIM();
if ( *it == "Jabber IM" )
*itV = ent.jabberIM();
if ( *it == "MSN IM" )
*itV = ent.MSNIM();
if ( *it == "Yahoo IM" )
*itV = ent.yahooIM();
*/
if ( *it == "Home Web Page" )
*itV = ent.homeWebpage();
- if ( *it == "Business Web Page" )
+ if ( *it == "Business Web Page" || *it == "Work Web Page" )
*itV = ent.businessWebpage();
}
cmbCat->setCategories( ent.categories(), "Contacts", tr("Contacts") );
QString gender = ent.gender();
cmbGender->setCurrentItem( gender.toInt() );
txtNote->setText( ent.notes() );
+ slotCmbChooser1Change( cmbChooserField1->currentItem() );
+ slotCmbChooser2Change( cmbChooserField2->currentItem() );
+ slotCmbChooser3Change( cmbChooserField3->currentItem() );
+
+ slotAddressTypeChange( cmbAddress->currentItem() );
+
}
void ContactEditor::saveEntry() {
if ( useFullName == TRUE ) {
txtFirstName->setText( parseName( txtFullName->text(), NAME_F ) );
txtMiddleName->setText( parseName( txtFullName->text(), NAME_M ) );
txtLastName->setText( parseName( txtFullName->text(), NAME_L ) );
txtSuffix->setText( parseName( txtFullName->text(), NAME_S ) );
useFullName = FALSE;
}
/*if ( ent.firstName() != txtFirstName->text() ||
ent.lastName != txtLastName->text() ||
ent.middleName != txtMiddleName->text() ) {
@@ -1185,32 +1197,37 @@ void ContactEditor::saveEntry() {
}
*/
if (hasCity) {
ent.setHomeCity( (*slHomeAddress)[3] );
ent.setBusinessCity( (*slBusinessAddress)[3] );
}
if (hasState) {
ent.setHomeState( (*slHomeAddress)[4] );
ent.setBusinessState( (*slBusinessAddress)[4] );
}
if (hasZip) {
ent.setHomeZip( (*slHomeAddress)[5] );
ent.setBusinessZip( (*slBusinessAddress)[5] );
}
+
+ if (hasCountry) {
+ ent.setHomeCountry( (*slHomeAddress)[6] );
+ ent.setBusinessCountry( (*slBusinessAddress)[6] );
+ }
QStringList::ConstIterator it;
QListIterator<QLineEdit> itLE( listValue );
for ( it = slDynamicEntries->begin(); it != slDynamicEntries->end(); ++it, ++itLE) {
if ( *it == "Department" )
ent.setDepartment( (*itLE)->text() );
if ( *it == "Company" )
ent.setCompany( (*itLE)->text() );
if ( *it == "Office" )
ent.setOffice( (*itLE)->text() );
if ( *it == "Profession" )
ent.setProfession( (*itLE)->text() );
@@ -1227,98 +1244,103 @@ void ContactEditor::saveEntry() {
ent.setBirthday( (*itLE)->text() );
if ( *it == "Anniversary" )
ent.setAnniversary( (*itLE)->text() );
if ( *it == "Nickname" )
ent.setNickname( (*itLE)->text() );
if ( *it == "Children" )
ent.setChildren( (*itLE)->text() );
}
QStringList::ConstIterator itV;
for ( it = slChooserNames->begin(), itV = slChooserValues->begin(); it != slChooserNames->end(); ++it, ++itV ) {
- if ( *it == "Business Phone" )
+ if ( *it == "Business Phone" || *it == "Work Phone" )
ent.setBusinessPhone( *itV );
/*
if ( *it == "Business 2 Phone" )
ent.setBusiness2Phone( *itV );
*/
- if ( *it == "Business Fax" )
+ if ( *it == "Business Fax" || *it == "Work Fax" )
ent.setBusinessFax( *itV );
- if ( *it == "Business Mobile" )
+ if ( *it == "Business Mobile" || *it == "Work Mobile" )
ent.setBusinessMobile( *itV );
/*
if ( *it == "Company Phone" )
ent.setCompanyPhone( *itV );
*/
- if ( *it == "Default Email" )
- ent.setDefaultEmail( *itV );
-
- if ( *it == "Emails" )
+ //if ( *it == "Default Email" )
+ //ent.setDefaultEmail( *itV );
+
+ if ( *it == "Emails" ) {
+ QString allemail;
+ QString defaultmail;
+ parseEmailFrom( *itV, defaultmail, allemail );
+ ent.setDefaultEmail( defaultmail );
ent.setEmails( *itV );
+ }
if ( *it == "Home Phone" )
ent.setHomePhone( *itV );
/*
if ( *it == "Home 2 Phone" )
ent.setHome2Phone( *itV );
*/
if ( *it == "Home Fax" )
ent.setHomeFax( *itV );
if ( *it == "Home Mobile" )
ent.setHomeMobile( *itV );
/*
if ( *it == "Car Phone" )
ent.setCarPhone( *itV );
if ( *it == "ISDN Phone" )
ent.setISDNPhone( *itV );
if ( *it == "Other Phone" )
ent.setOtherPhone( *itV );
*/
- if ( *it == "Business Pager" )
+ if ( *it == "Business Pager" || *it == "Work Pager" )
ent.setBusinessPager( *itV );
/*
if ( *it == "Home Pager" )
ent.setHomePager( *itV );
if ( *it == "AIM IM" )
ent.setAIMIM( *itV );
if ( *it == "ICQ IM" )
ent.setICQIM( *itV );
if ( *it == "Jabber IM" )
ent.setJabberIM( *itV );
if ( *it == "MSN IM" )
ent.setMSNIM( *itV );
if ( *it == "Yahoo IM" )
ent.setYahooIM( *itV );
*/
if ( *it == "Home Web Page" )
ent.setHomeWebpage( *itV );
- if ( *it == "Business Web Page" )
+ if ( *it == "Business Web Page" || *it == "Work Web Page" )
ent.setBusinessWebpage( *itV );
}
int gender = cmbGender->currentItem();
ent.setGender( QString::number( gender ) );
QString str = txtNote->text();
if ( !str.isNull() )
ent.setNotes( str );
}
void parseEmailFrom( const QString &txt, QString &strDefaultEmail,
QString &strAll )