summaryrefslogtreecommitdiff
path: root/core
Unidiff
Diffstat (limited to 'core') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/contacteditor.cpp61
-rw-r--r--core/pim/addressbook/contacteditor.h4
-rw-r--r--core/pim/addressbook/ocontactfields.cpp4
3 files changed, 44 insertions, 25 deletions
diff --git a/core/pim/addressbook/contacteditor.cpp b/core/pim/addressbook/contacteditor.cpp
index 5a7bf1a..7338eeb 100644
--- a/core/pim/addressbook/contacteditor.cpp
+++ b/core/pim/addressbook/contacteditor.cpp
@@ -47,26 +47,26 @@
47#include <qaction.h> 47#include <qaction.h>
48#include <qiconset.h> 48#include <qiconset.h>
49 49
50static inline bool containsAlphaNum( const QString &str ); 50static inline bool containsAlphaNum( const QString &str );
51static inline bool constainsWhiteSpace( const QString &str ); 51static inline bool constainsWhiteSpace( const QString &str );
52 52
53// helper functions, convert our comma delimited list to proper 53// helper functions, convert our comma delimited list to proper
54// file format... 54// file format...
55void parseEmailFrom( const QString &txt, QString &strDefaultEmail, 55void parseEmailFrom( const QString &txt, QString &strDefaultEmail,
56 QString &strAll ); 56 QString &strAll );
57 57
58// helper convert from file format to comma delimited... 58// helper convert from file format to comma delimited...
59void parseEmailTo( const QString &strDefaultEmail, 59//void parseEmailTo( const QString &strDefaultEmail,
60 const QString &strOtherEmail, QString &strBack ); 60 // const QString &strOtherEmail, QString &strBack );
61 61
62 ContactEditor::ContactEditor(const OContact &entry, 62 ContactEditor::ContactEditor(const OContact &entry,
63 QWidget *parent, 63 QWidget *parent,
64 const char *name, 64 const char *name,
65 WFlags fl ) 65 WFlags fl )
66 : QDialog( parent, name, TRUE, fl ), 66 : QDialog( parent, name, TRUE, fl ),
67 m_personalView ( false ) 67 m_personalView ( false )
68{ 68{
69 69
70 init(); 70 init();
71 setEntry( entry ); 71 setEntry( entry );
72} 72}
@@ -612,54 +612,68 @@ void ContactEditor::init() {
612 connect( cmbChooserField3, SIGNAL(activated(int)), 612 connect( cmbChooserField3, SIGNAL(activated(int)),
613 this, SLOT(slotCmbChooser3Change(int)) ); 613 this, SLOT(slotCmbChooser3Change(int)) );
614 connect( cmbChooserField4, SIGNAL(activated(int)), 614 connect( cmbChooserField4, SIGNAL(activated(int)),
615 this, SLOT(slotCmbChooser4Change(int)) ); 615 this, SLOT(slotCmbChooser4Change(int)) );
616 connect( cmbAddress, SIGNAL(activated(int)), 616 connect( cmbAddress, SIGNAL(activated(int)),
617 this, SLOT(slotAddressTypeChange(int)) ); 617 this, SLOT(slotAddressTypeChange(int)) );
618 618
619 new QPEDialogListener(this); 619 new QPEDialogListener(this);
620 620
621 setPersonalView ( m_personalView ); 621 setPersonalView ( m_personalView );
622} 622}
623 623
624void ContactEditor::slotChooser1Change( const QString &textChanged ) { 624void ContactEditor::defaultEmailChanged(int i){
625 625 qDebug("defaultEmailChanged");
626 int index = cmbChooserField1->currentItem(); 626 int index = cmbChooserField1->currentItem();
627 627 slChooserValues[index] = cmbDefaultEmail->text(i);
628 slChooserValues[index] = textChanged;
629 628
630} 629}
631 630
632void ContactEditor::slotChooser2Change( const QString &textChanged ) { 631void ContactEditor::chooserChange( const QString &textChanged, int index, QLineEdit *inputWid ) {
632
633 if (slChooserNames[index] == "Default Email"){
634 delete cmbDefaultEmail;
635 cmbDefaultEmail = new QComboBox(inputWid->parentWidget());
636 cmbDefaultEmail->setGeometry(inputWid->frameGeometry());
637 cmbDefaultEmail->insertStringList(ent.emailList());
638 connect(cmbDefaultEmail,SIGNAL(activated(int)),
639 SLOT(defaultEmailChanged(int)));
640 QString demail = ent.defaultEmail();
641 for ( int i = 0; i < cmbDefaultEmail->count(); i++)
642 if ( cmbDefaultEmail->text( i ) == demail )
643 cmbDefaultEmail->setCurrentItem( i );
644
645 cmbDefaultEmail->show();
646 }
633 647
634 int index = cmbChooserField2->currentItem();
635 648
636 slChooserValues[index] = textChanged; 649 slChooserValues[index] = textChanged;
637 650
638} 651}
639 652
640void ContactEditor::slotChooser3Change( const QString &textChanged ) { 653void ContactEditor::slotChooser1Change( const QString &textChanged ) {
654 chooserChange( textChanged, cmbChooserField1->currentItem(), txtChooserField1);
655}
641 656
642 int index = cmbChooserField3->currentItem(); 657void ContactEditor::slotChooser2Change( const QString &textChanged ) {
658 chooserChange( textChanged, cmbChooserField2->currentItem(), txtChooserField2);
643 659
644 slChooserValues[index] = textChanged; 660}
645 661
662void ContactEditor::slotChooser3Change( const QString &textChanged ) {
663 chooserChange( textChanged, cmbChooserField3->currentItem(), txtChooserField3);
646} 664}
647 665
648void ContactEditor::slotChooser4Change( const QString &textChanged ) { 666void ContactEditor::slotChooser4Change( const QString &textChanged ) {
649 667 chooserChange( textChanged, cmbChooserField4->currentItem(), txtChooserField4);
650 int index = cmbChooserField4->currentItem();
651
652 slChooserValues[index] = textChanged;
653
654} 668}
655 669
656void ContactEditor::slotAddressChange( const QString &textChanged ) { 670void ContactEditor::slotAddressChange( const QString &textChanged ) {
657 671
658 if ( cmbAddress->currentItem() == 0 ) { 672 if ( cmbAddress->currentItem() == 0 ) {
659 slBusinessAddress[0] = textChanged; 673 slBusinessAddress[0] = textChanged;
660 } else { 674 } else {
661 slHomeAddress[0] = textChanged; 675 slHomeAddress[0] = textChanged;
662 } 676 }
663} 677}
664 678
665void ContactEditor::slotAddress2Change( const QString &textChanged ) { 679void ContactEditor::slotAddress2Change( const QString &textChanged ) {
@@ -1362,32 +1376,35 @@ void ContactEditor::saveEntry() {
1362 for ( it = slChooserNames.begin(), itV = slChooserValues.begin(); it != slChooserNames.end(); ++it, ++itV ) { 1376 for ( it = slChooserNames.begin(), itV = slChooserValues.begin(); it != slChooserNames.end(); ++it, ++itV ) {
1363 1377
1364 if ( ( *it == "Business Phone" ) || ( *it == "Work Phone" ) ) 1378 if ( ( *it == "Business Phone" ) || ( *it == "Work Phone" ) )
1365 ent.setBusinessPhone( *itV ); 1379 ent.setBusinessPhone( *itV );
1366 1380
1367 if ( ( *it == "Business Fax" ) || ( *it == "Work Fax" ) ) 1381 if ( ( *it == "Business Fax" ) || ( *it == "Work Fax" ) )
1368 ent.setBusinessFax( *itV ); 1382 ent.setBusinessFax( *itV );
1369 1383
1370 if ( ( *it == "Business Mobile" ) || ( *it == "Work Mobile" ) ) 1384 if ( ( *it == "Business Mobile" ) || ( *it == "Work Mobile" ) )
1371 ent.setBusinessMobile( *itV ); 1385 ent.setBusinessMobile( *itV );
1372 1386
1373 if ( *it == "Emails" ){ 1387 if ( *it == "Emails" ){
1374 QString allemail; 1388 QString allemail;
1375 QString defaultmail; 1389 QString defaultmail;
1376 parseEmailFrom( *itV, defaultmail, allemail ); 1390 parseEmailFrom( *itV, defaultmail, allemail );
1377 // ent.clearEmails(); 1391 // ent.clearEmails();
1378 ent.setDefaultEmail( defaultmail ); 1392 // ent.setDefaultEmail( defaultmail );
1379 ent.setEmails( allemail ); 1393 ent.setEmails( allemail );
1380 } 1394 }
1381 1395
1396 if ( *it == "Default Email")
1397 ent.setDefaultEmail( *itV );
1398
1382 if ( *it == "Home Phone" ) 1399 if ( *it == "Home Phone" )
1383 ent.setHomePhone( *itV ); 1400 ent.setHomePhone( *itV );
1384 1401
1385 if ( *it == "Home Fax" ) 1402 if ( *it == "Home Fax" )
1386 ent.setHomeFax( *itV ); 1403 ent.setHomeFax( *itV );
1387 1404
1388 if ( *it == "Home Mobile" ) 1405 if ( *it == "Home Mobile" )
1389 ent.setHomeMobile( *itV ); 1406 ent.setHomeMobile( *itV );
1390 1407
1391 if ( ( *it == "Business Pager" ) || ( *it == "Work Pager" ) ) 1408 if ( ( *it == "Business Pager" ) || ( *it == "Work Pager" ) )
1392 ent.setBusinessPager( *itV ); 1409 ent.setBusinessPager( *itV );
1393 1410
diff --git a/core/pim/addressbook/contacteditor.h b/core/pim/addressbook/contacteditor.h
index 250b831..d4b7f27 100644
--- a/core/pim/addressbook/contacteditor.h
+++ b/core/pim/addressbook/contacteditor.h
@@ -91,28 +91,29 @@ class ContactEditor : public QDialog {
91 void slotAddressChange( const QString &textChanged ); 91 void slotAddressChange( const QString &textChanged );
92 void slotAddress2Change( const QString &textChanged ); 92 void slotAddress2Change( const QString &textChanged );
93 void slotPOBoxChange( const QString &textChanged ); 93 void slotPOBoxChange( const QString &textChanged );
94 void slotCityChange( const QString &textChanged ); 94 void slotCityChange( const QString &textChanged );
95 void slotStateChange( const QString &textChanged ); 95 void slotStateChange( const QString &textChanged );
96 void slotZipChange( const QString &textChanged ); 96 void slotZipChange( const QString &textChanged );
97 void slotCountryChange( const QString &textChanged ); 97 void slotCountryChange( const QString &textChanged );
98 void slotFullNameChange( const QString &textChanged ); 98 void slotFullNameChange( const QString &textChanged );
99 void slotAnniversaryDateChanged( int year, int month, int day); 99 void slotAnniversaryDateChanged( int year, int month, int day);
100 void slotBirthdayDateChanged( int year, int month, int day); 100 void slotBirthdayDateChanged( int year, int month, int day);
101 void slotRemoveBirthday(); 101 void slotRemoveBirthday();
102 void slotRemoveAnniversary(); 102 void slotRemoveAnniversary();
103 void defaultEmailChanged(int);
103 104
104 private: 105 private:
106 void chooserChange( const QString&, int , QLineEdit* );
105 bool useFullName; 107 bool useFullName;
106 // bool hasGender, hasTitle, hasCompany, hasNotes, hasStreet, hasStreet2, hasPOBox, hasCity, hasState, hasZip, hasCountry;
107 108
108 OContact ent; 109 OContact ent;
109 110
110 QDialog *dlgNote; 111 QDialog *dlgNote;
111 QDialog *dlgName; 112 QDialog *dlgName;
112 113
113 QList<QLineEdit> listValue; 114 QList<QLineEdit> listValue;
114 QList<QLabel> listName; 115 QList<QLabel> listName;
115 116
116 QStringList slDynamicEntries; 117 QStringList slDynamicEntries;
117 QStringList trlDynamicEntries; 118 QStringList trlDynamicEntries;
118 119
@@ -138,24 +139,25 @@ class ContactEditor : public QDialog {
138 QPushButton *btnNote; 139 QPushButton *btnNote;
139 QLineEdit *txtFullName; 140 QLineEdit *txtFullName;
140 QLineEdit *txtJobTitle; 141 QLineEdit *txtJobTitle;
141 QLineEdit *txtOrganization; 142 QLineEdit *txtOrganization;
142 QLineEdit *txtChooserField1; 143 QLineEdit *txtChooserField1;
143 QLineEdit *txtChooserField2; 144 QLineEdit *txtChooserField2;
144 QLineEdit *txtChooserField3; 145 QLineEdit *txtChooserField3;
145 QLineEdit *txtChooserField4; 146 QLineEdit *txtChooserField4;
146 QComboBox *cmbChooserField1; 147 QComboBox *cmbChooserField1;
147 QComboBox *cmbChooserField2; 148 QComboBox *cmbChooserField2;
148 QComboBox *cmbChooserField3; 149 QComboBox *cmbChooserField3;
149 QComboBox *cmbChooserField4; 150 QComboBox *cmbChooserField4;
151 QComboBox *cmbDefaultEmail;
150 QComboBox *cmbFileAs; 152 QComboBox *cmbFileAs;
151 CategorySelect *cmbCat; 153 CategorySelect *cmbCat;
152 QLabel *labCat; 154 QLabel *labCat;
153 155
154 QScrollView *svAddress; 156 QScrollView *svAddress;
155 QLineEdit *txtAddress; 157 QLineEdit *txtAddress;
156 //QLineEdit *txtAddress2; 158 //QLineEdit *txtAddress2;
157 //QLineEdit *txtPOBox; 159 //QLineEdit *txtPOBox;
158 QLineEdit *txtCity; 160 QLineEdit *txtCity;
159 QLineEdit *txtState; 161 QLineEdit *txtState;
160 QLineEdit *txtZip; 162 QLineEdit *txtZip;
161 QComboBox *cmbAddress; 163 QComboBox *cmbAddress;
diff --git a/core/pim/addressbook/ocontactfields.cpp b/core/pim/addressbook/ocontactfields.cpp
index df57efa..7823a9c 100644
--- a/core/pim/addressbook/ocontactfields.cpp
+++ b/core/pim/addressbook/ocontactfields.cpp
@@ -33,25 +33,25 @@ QStringList OContactFields::untrdetailsfields( bool sorted )
33 33
34/*! 34/*!
35 \internal 35 \internal
36 Returns a translated list of phone field names for a contact. 36 Returns a translated list of phone field names for a contact.
37*/ 37*/
38QStringList OContactFields::trphonefields( bool sorted ) 38QStringList OContactFields::trphonefields( bool sorted )
39{ 39{
40 QStringList list; 40 QStringList list;
41 list.append( QObject::tr( "Business Phone" ) ); 41 list.append( QObject::tr( "Business Phone" ) );
42 list.append( QObject::tr( "Business Fax" ) ); 42 list.append( QObject::tr( "Business Fax" ) );
43 list.append( QObject::tr( "Business Mobile" ) ); 43 list.append( QObject::tr( "Business Mobile" ) );
44 44
45 // list.append( QObject::tr( "Default Email" ) ); 45 list.append( QObject::tr( "Default Email" ) );
46 list.append( QObject::tr( "Emails" ) ); 46 list.append( QObject::tr( "Emails" ) );
47 47
48 list.append( QObject::tr( "Home Phone" ) ); 48 list.append( QObject::tr( "Home Phone" ) );
49 list.append( QObject::tr( "Home Fax" ) ); 49 list.append( QObject::tr( "Home Fax" ) );
50 list.append( QObject::tr( "Home Mobile" ) ); 50 list.append( QObject::tr( "Home Mobile" ) );
51 51
52 if (sorted) list.sort(); 52 if (sorted) list.sort();
53 53
54 return list; 54 return list;
55} 55}
56 56
57 57
@@ -129,25 +129,25 @@ QStringList OContactFields::trfields( bool sorted )
129/*! 129/*!
130 \internal 130 \internal
131 Returns a list of phone field names for a contact. 131 Returns a list of phone field names for a contact.
132*/ 132*/
133QStringList OContactFields::untrphonefields( bool sorted ) 133QStringList OContactFields::untrphonefields( bool sorted )
134{ 134{
135 QStringList list; 135 QStringList list;
136 136
137 list.append( "Business Phone" ); 137 list.append( "Business Phone" );
138 list.append( "Business Fax" ); 138 list.append( "Business Fax" );
139 list.append( "Business Mobile" ); 139 list.append( "Business Mobile" );
140 140
141 // list.append( "Default Email" ); 141 list.append( "Default Email" );
142 list.append( "Emails" ); 142 list.append( "Emails" );
143 143
144 list.append( "Home Phone" ); 144 list.append( "Home Phone" );
145 list.append( "Home Fax" ); 145 list.append( "Home Fax" );
146 list.append( "Home Mobile" ); 146 list.append( "Home Mobile" );
147 147
148 if (sorted) list.sort(); 148 if (sorted) list.sort();
149 149
150 return list; 150 return list;
151} 151}
152 152
153/*! 153/*!