-rw-r--r-- | core/pim/addressbook/contacteditor.cpp | 19 | ||||
-rw-r--r-- | core/pim/addressbook/contacteditor.h | 3 |
2 files changed, 14 insertions, 8 deletions
diff --git a/core/pim/addressbook/contacteditor.cpp b/core/pim/addressbook/contacteditor.cpp index f125edb..cc3908a 100644 --- a/core/pim/addressbook/contacteditor.cpp +++ b/core/pim/addressbook/contacteditor.cpp | |||
@@ -1,170 +1,170 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) 2002 Michael R. Crawford <mike@tuxnami.org> | 2 | * Copyright (c) 2002 Michael R. Crawford <mike@tuxnami.org> |
3 | * Copyright (C) 2002 by Stefan Eilers (eilers.stefan@epost.de) | 3 | * Copyright (C) 2002 by Stefan Eilers (eilers.stefan@epost.de) |
4 | * | 4 | * |
5 | * This file is an add-on for the OPIE Palmtop Environment | 5 | * This file is an add-on for the OPIE Palmtop Environment |
6 | * | 6 | * |
7 | * This file may be distributed and/or modified under the terms of the | 7 | * This file may be distributed and/or modified under the terms of the |
8 | * GNU General Public License version 2 as published by the Free Software | 8 | * GNU General Public License version 2 as published by the Free Software |
9 | * Foundation and appearing in the file LICENSE.GPL included in the pacakaging | 9 | * Foundation and appearing in the file LICENSE.GPL included in the pacakaging |
10 | * of this file. | 10 | * of this file. |
11 | * | 11 | * |
12 | * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | 12 | * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE |
13 | * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | 13 | * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
14 | * | 14 | * |
15 | * | 15 | * |
16 | * This is a rewrite of the abeditor.h file, modified to provide a more | 16 | * This is a rewrite of the abeditor.h file, modified to provide a more |
17 | * intuitive interface to TrollTech's original Address Book editor. This | 17 | * intuitive interface to TrollTech's original Address Book editor. This |
18 | * is made to operate exactly in interface with the exception of name. | 18 | * is made to operate exactly in interface with the exception of name. |
19 | * | 19 | * |
20 | */ | 20 | */ |
21 | 21 | ||
22 | #include "contacteditor.h" | 22 | #include "contacteditor.h" |
23 | #include "addresspicker.h" | 23 | #include "addresspicker.h" |
24 | #include "ocontactfields.h" | 24 | #include "ocontactfields.h" |
25 | 25 | ||
26 | #include <qpe/categoryselect.h> | 26 | #include <qpe/categoryselect.h> |
27 | #include <qpe/qpeapplication.h> | 27 | #include <qpe/qpeapplication.h> |
28 | #include <qpe/qpedialog.h> | 28 | #include <qpe/qpedialog.h> |
29 | #include <qpe/timeconversion.h> | 29 | #include <qpe/timeconversion.h> |
30 | #include <opie/ocontact.h> | 30 | #include <opie/ocontact.h> |
31 | #include <qpe/resource.h> | 31 | #include <qpe/resource.h> |
32 | 32 | ||
33 | #include <qcombobox.h> | 33 | #include <qcombobox.h> |
34 | #include <qlabel.h> | 34 | #include <qlabel.h> |
35 | #include <qtabwidget.h> | 35 | #include <qtabwidget.h> |
36 | #include <qlayout.h> | 36 | #include <qlayout.h> |
37 | #include <qlineedit.h> | 37 | #include <qlineedit.h> |
38 | #include <qmultilineedit.h> | 38 | #include <qmultilineedit.h> |
39 | #include <qscrollview.h> | 39 | #include <qscrollview.h> |
40 | #include <qtoolbutton.h> | 40 | #include <qtoolbutton.h> |
41 | #include <qpushbutton.h> | 41 | #include <qpushbutton.h> |
42 | #include <qmainwindow.h> | 42 | #include <qmainwindow.h> |
43 | #include <qvaluelist.h> | 43 | #include <qvaluelist.h> |
44 | #include <qpopupmenu.h> | 44 | #include <qpopupmenu.h> |
45 | #include <qlistbox.h> | 45 | #include <qlistbox.h> |
46 | #include <qhbox.h> | 46 | #include <qhbox.h> |
47 | #include <qaction.h> | 47 | #include <qaction.h> |
48 | #include <qiconset.h> | 48 | #include <qiconset.h> |
49 | 49 | ||
50 | static inline bool containsAlphaNum( const QString &str ); | 50 | static inline bool containsAlphaNum( const QString &str ); |
51 | static inline bool constainsWhiteSpace( const QString &str ); | 51 | static 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... |
55 | void parseEmailFrom( const QString &txt, QString &strDefaultEmail, | 55 | void 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... |
59 | //void 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 | 70 | ||
71 | init(); | 71 | init(); |
72 | setEntry( entry ); | 72 | setEntry( entry ); |
73 | |||
74 | cmbDefaultEmail = 0; | 73 | cmbDefaultEmail = 0; |
74 | defaultEmailChooserPosition = -1; | ||
75 | } | 75 | } |
76 | 76 | ||
77 | ContactEditor::~ContactEditor() { | 77 | ContactEditor::~ContactEditor() { |
78 | } | 78 | } |
79 | 79 | ||
80 | void ContactEditor::init() { | 80 | void ContactEditor::init() { |
81 | 81 | ||
82 | useFullName = true; | 82 | useFullName = true; |
83 | 83 | ||
84 | uint i = 0; | 84 | uint i = 0; |
85 | 85 | ||
86 | QStringList trlChooserNames; | 86 | QStringList trlChooserNames; |
87 | 87 | ||
88 | for (i = 0; i <= 6; i++) { | 88 | for (i = 0; i <= 6; i++) { |
89 | slHomeAddress.append( "" ); | 89 | slHomeAddress.append( "" ); |
90 | slBusinessAddress.append( "" ); | 90 | slBusinessAddress.append( "" ); |
91 | } | 91 | } |
92 | 92 | ||
93 | trlChooserNames = OContactFields::trphonefields(); | 93 | trlChooserNames = OContactFields::trphonefields(); |
94 | slChooserNames = OContactFields::untrphonefields(); | 94 | slChooserNames = OContactFields::untrphonefields(); |
95 | slDynamicEntries = OContactFields::untrdetailsfields(); | 95 | slDynamicEntries = OContactFields::untrdetailsfields(); |
96 | trlDynamicEntries = OContactFields::trdetailsfields(); | 96 | trlDynamicEntries = OContactFields::trdetailsfields(); |
97 | for (i = 0; i < slChooserNames.count(); i++) | 97 | for (i = 0; i < slChooserNames.count(); i++) |
98 | slChooserValues.append(""); | 98 | slChooserValues.append(""); |
99 | 99 | ||
100 | 100 | ||
101 | QVBoxLayout *vb = new QVBoxLayout( this ); | 101 | QVBoxLayout *vb = new QVBoxLayout( this ); |
102 | 102 | ||
103 | tabMain = new QTabWidget( this ); | 103 | tabMain = new QTabWidget( this ); |
104 | vb->addWidget( tabMain ); | 104 | vb->addWidget( tabMain ); |
105 | 105 | ||
106 | QWidget *tabViewport = new QWidget ( tabMain ); | 106 | QWidget *tabViewport = new QWidget ( tabMain ); |
107 | 107 | ||
108 | vb = new QVBoxLayout( tabViewport ); | 108 | vb = new QVBoxLayout( tabViewport ); |
109 | 109 | ||
110 | svGeneral = new QScrollView( tabViewport ); | 110 | svGeneral = new QScrollView( tabViewport ); |
111 | vb->addWidget( svGeneral, 0, 0 ); | 111 | vb->addWidget( svGeneral, 0, 0 ); |
112 | svGeneral->setResizePolicy( QScrollView::AutoOneFit ); | 112 | svGeneral->setResizePolicy( QScrollView::AutoOneFit ); |
113 | svGeneral->setFrameStyle( QFrame::NoFrame ); | 113 | svGeneral->setFrameStyle( QFrame::NoFrame ); |
114 | 114 | ||
115 | QWidget *container = new QWidget( svGeneral->viewport() ); | 115 | QWidget *container = new QWidget( svGeneral->viewport() ); |
116 | svGeneral->addChild( container ); | 116 | svGeneral->addChild( container ); |
117 | 117 | ||
118 | QGridLayout *gl = new QGridLayout( container, 1, 1, 2, 4 ); | 118 | QGridLayout *gl = new QGridLayout( container, 1, 1, 2, 4 ); |
119 | gl->setResizeMode( QLayout::FreeResize ); | 119 | gl->setResizeMode( QLayout::FreeResize ); |
120 | 120 | ||
121 | btnFullName = new QPushButton( tr( "Full Name..." ), container ); | 121 | btnFullName = new QPushButton( tr( "Full Name..." ), container ); |
122 | gl->addWidget( btnFullName, 0, 0 ); | 122 | gl->addWidget( btnFullName, 0, 0 ); |
123 | txtFullName = new QLineEdit( container ); | 123 | txtFullName = new QLineEdit( container ); |
124 | gl->addWidget( txtFullName, 0, 1 ); | 124 | gl->addWidget( txtFullName, 0, 1 ); |
125 | 125 | ||
126 | QLabel *l = new QLabel( tr( "Job Title" ), container ); | 126 | QLabel *l = new QLabel( tr( "Job Title" ), container ); |
127 | gl->addWidget( l, 1, 0 ); | 127 | gl->addWidget( l, 1, 0 ); |
128 | txtJobTitle = new QLineEdit( container ); | 128 | txtJobTitle = new QLineEdit( container ); |
129 | gl->addWidget( txtJobTitle, 1, 1 ); | 129 | gl->addWidget( txtJobTitle, 1, 1 ); |
130 | 130 | ||
131 | l = new QLabel( tr( "Organization" ), container ); | 131 | l = new QLabel( tr( "Organization" ), container ); |
132 | gl->addWidget( l, 2, 0 ); | 132 | gl->addWidget( l, 2, 0 ); |
133 | txtOrganization = new QLineEdit( container ); | 133 | txtOrganization = new QLineEdit( container ); |
134 | gl->addWidget( txtOrganization, 2, 1 ); | 134 | gl->addWidget( txtOrganization, 2, 1 ); |
135 | 135 | ||
136 | cmbChooserField1 = new QComboBox( FALSE, container ); | 136 | cmbChooserField1 = new QComboBox( FALSE, container ); |
137 | cmbChooserField1->setMaximumWidth( 90 ); | 137 | cmbChooserField1->setMaximumWidth( 90 ); |
138 | gl->addWidget( cmbChooserField1, 3, 0 ); | 138 | gl->addWidget( cmbChooserField1, 3, 0 ); |
139 | txtChooserField1 = new QLineEdit( container ); | 139 | txtChooserField1 = new QLineEdit( container ); |
140 | gl->addWidget( txtChooserField1, 3, 1 ); | 140 | gl->addWidget( txtChooserField1, 3, 1 ); |
141 | 141 | ||
142 | cmbChooserField2 = new QComboBox( FALSE, container ); | 142 | cmbChooserField2 = new QComboBox( FALSE, container ); |
143 | cmbChooserField2->setMaximumWidth( 90 ); | 143 | cmbChooserField2->setMaximumWidth( 90 ); |
144 | gl->addWidget( cmbChooserField2, 4, 0 ); | 144 | gl->addWidget( cmbChooserField2, 4, 0 ); |
145 | txtChooserField2 = new QLineEdit( container ); | 145 | txtChooserField2 = new QLineEdit( container ); |
146 | gl->addWidget( txtChooserField2, 4, 1 ); | 146 | gl->addWidget( txtChooserField2, 4, 1 ); |
147 | 147 | ||
148 | cmbChooserField3 = new QComboBox( FALSE, container ); | 148 | cmbChooserField3 = new QComboBox( FALSE, container ); |
149 | cmbChooserField3->setMaximumWidth( 90 ); | 149 | cmbChooserField3->setMaximumWidth( 90 ); |
150 | gl->addWidget( cmbChooserField3, 5, 0 ); | 150 | gl->addWidget( cmbChooserField3, 5, 0 ); |
151 | txtChooserField3 = new QLineEdit( container ); | 151 | txtChooserField3 = new QLineEdit( container ); |
152 | gl->addWidget( txtChooserField3, 5, 1 ); | 152 | gl->addWidget( txtChooserField3, 5, 1 ); |
153 | 153 | ||
154 | l = new QLabel( tr( "File As" ), container ); | 154 | l = new QLabel( tr( "File As" ), container ); |
155 | gl->addWidget( l, 6, 0 ); | 155 | gl->addWidget( l, 6, 0 ); |
156 | cmbFileAs = new QComboBox( TRUE, container ); | 156 | cmbFileAs = new QComboBox( TRUE, container ); |
157 | gl->addWidget( cmbFileAs, 6, 1 ); | 157 | gl->addWidget( cmbFileAs, 6, 1 ); |
158 | 158 | ||
159 | labCat = new QLabel( tr( "Category" ), container ); | 159 | labCat = new QLabel( tr( "Category" ), container ); |
160 | gl->addWidget( labCat, 7, 0 ); | 160 | gl->addWidget( labCat, 7, 0 ); |
161 | cmbCat = new CategorySelect( container ); | 161 | cmbCat = new CategorySelect( container ); |
162 | gl->addWidget( cmbCat, 7, 1 ); | 162 | gl->addWidget( cmbCat, 7, 1 ); |
163 | labCat->show(); | 163 | labCat->show(); |
164 | cmbCat->show(); | 164 | cmbCat->show(); |
165 | 165 | ||
166 | btnNote = new QPushButton( tr( "Notes..." ), container ); | 166 | btnNote = new QPushButton( tr( "Notes..." ), container ); |
167 | gl->addWidget( btnNote, 8, 1 ); | 167 | gl->addWidget( btnNote, 8, 1 ); |
168 | 168 | ||
169 | tabMain->insertTab( tabViewport, tr( "General" ) ); | 169 | tabMain->insertTab( tabViewport, tr( "General" ) ); |
170 | 170 | ||
@@ -538,229 +538,234 @@ void ContactEditor::init() { | |||
538 | 538 | ||
539 | tabMain->insertTab( tabViewport, tr( "Details" ) ); | 539 | tabMain->insertTab( tabViewport, tr( "Details" ) ); |
540 | 540 | ||
541 | dlgNote = new QDialog( this, "Note Dialog", TRUE ); | 541 | dlgNote = new QDialog( this, "Note Dialog", TRUE ); |
542 | dlgNote->setCaption( tr("Enter Note") ); | 542 | dlgNote->setCaption( tr("Enter Note") ); |
543 | QVBoxLayout *vbNote = new QVBoxLayout( dlgNote ); | 543 | QVBoxLayout *vbNote = new QVBoxLayout( dlgNote ); |
544 | txtNote = new QMultiLineEdit( dlgNote ); | 544 | txtNote = new QMultiLineEdit( dlgNote ); |
545 | vbNote->addWidget( txtNote ); | 545 | vbNote->addWidget( txtNote ); |
546 | connect( btnNote, SIGNAL(clicked()), this, SLOT(slotNote()) ); | 546 | connect( btnNote, SIGNAL(clicked()), this, SLOT(slotNote()) ); |
547 | 547 | ||
548 | dlgName = new QDialog( this, "Name Dialog", TRUE ); | 548 | dlgName = new QDialog( this, "Name Dialog", TRUE ); |
549 | dlgName->setCaption( tr("Edit Name") ); | 549 | dlgName->setCaption( tr("Edit Name") ); |
550 | gl = new QGridLayout( dlgName, 5, 2, 2, 3 ); | 550 | gl = new QGridLayout( dlgName, 5, 2, 2, 3 ); |
551 | 551 | ||
552 | l = new QLabel( tr("First Name"), dlgName ); | 552 | l = new QLabel( tr("First Name"), dlgName ); |
553 | gl->addWidget( l, 0, 0 ); | 553 | gl->addWidget( l, 0, 0 ); |
554 | txtFirstName = new QLineEdit( dlgName ); | 554 | txtFirstName = new QLineEdit( dlgName ); |
555 | gl->addWidget( txtFirstName, 0, 1 ); | 555 | gl->addWidget( txtFirstName, 0, 1 ); |
556 | 556 | ||
557 | l = new QLabel( tr("Middle Name"), dlgName ); | 557 | l = new QLabel( tr("Middle Name"), dlgName ); |
558 | gl->addWidget( l, 1, 0 ); | 558 | gl->addWidget( l, 1, 0 ); |
559 | txtMiddleName = new QLineEdit( dlgName ); | 559 | txtMiddleName = new QLineEdit( dlgName ); |
560 | gl->addWidget( txtMiddleName, 1, 1 ); | 560 | gl->addWidget( txtMiddleName, 1, 1 ); |
561 | 561 | ||
562 | l = new QLabel( tr("Last Name"), dlgName ); | 562 | l = new QLabel( tr("Last Name"), dlgName ); |
563 | gl->addWidget( l, 2, 0 ); | 563 | gl->addWidget( l, 2, 0 ); |
564 | txtLastName = new QLineEdit( dlgName ); | 564 | txtLastName = new QLineEdit( dlgName ); |
565 | gl->addWidget( txtLastName, 2, 1 ); | 565 | gl->addWidget( txtLastName, 2, 1 ); |
566 | 566 | ||
567 | l = new QLabel( tr("Suffix"), dlgName ); | 567 | l = new QLabel( tr("Suffix"), dlgName ); |
568 | gl->addWidget( l, 3, 0 ); | 568 | gl->addWidget( l, 3, 0 ); |
569 | txtSuffix = new QLineEdit( dlgName ); | 569 | txtSuffix = new QLineEdit( dlgName ); |
570 | gl->addWidget( txtSuffix, 3, 1 ); | 570 | gl->addWidget( txtSuffix, 3, 1 ); |
571 | space = new QSpacerItem(1,1, | 571 | space = new QSpacerItem(1,1, |
572 | QSizePolicy::Maximum, | 572 | QSizePolicy::Maximum, |
573 | QSizePolicy::MinimumExpanding ); | 573 | QSizePolicy::MinimumExpanding ); |
574 | gl->addItem( space, 4, 0 ); | 574 | gl->addItem( space, 4, 0 ); |
575 | 575 | ||
576 | cmbChooserField1->insertStringList( trlChooserNames ); | 576 | cmbChooserField1->insertStringList( trlChooserNames ); |
577 | cmbChooserField2->insertStringList( trlChooserNames ); | 577 | cmbChooserField2->insertStringList( trlChooserNames ); |
578 | cmbChooserField3->insertStringList( trlChooserNames ); | 578 | cmbChooserField3->insertStringList( trlChooserNames ); |
579 | cmbChooserField4->insertStringList( trlChooserNames ); | 579 | cmbChooserField4->insertStringList( trlChooserNames ); |
580 | 580 | ||
581 | cmbChooserField1->setCurrentItem( 0 ); | 581 | cmbChooserField1->setCurrentItem( 0 ); |
582 | cmbChooserField2->setCurrentItem( 1 ); | 582 | cmbChooserField2->setCurrentItem( 1 ); |
583 | cmbChooserField3->setCurrentItem( 2 ); | 583 | cmbChooserField3->setCurrentItem( 2 ); |
584 | 584 | ||
585 | connect( btnFullName, SIGNAL(clicked()), this, SLOT(slotName()) ); | 585 | connect( btnFullName, SIGNAL(clicked()), this, SLOT(slotName()) ); |
586 | 586 | ||
587 | connect( txtFullName, SIGNAL(textChanged(const QString &)), this, SLOT(slotFullNameChange(const QString &)) ); | 587 | connect( txtFullName, SIGNAL(textChanged(const QString &)), this, SLOT(slotFullNameChange(const QString &)) ); |
588 | 588 | ||
589 | connect( txtChooserField1, SIGNAL(textChanged(const QString &)), | 589 | connect( txtChooserField1, SIGNAL(textChanged(const QString &)), |
590 | this, SLOT(slotChooser1Change(const QString &)) ); | 590 | this, SLOT(slotChooser1Change(const QString &)) ); |
591 | connect( txtChooserField2, SIGNAL(textChanged(const QString &)), | 591 | connect( txtChooserField2, SIGNAL(textChanged(const QString &)), |
592 | this, SLOT(slotChooser2Change(const QString &)) ); | 592 | this, SLOT(slotChooser2Change(const QString &)) ); |
593 | connect( txtChooserField3, SIGNAL(textChanged(const QString &)), | 593 | connect( txtChooserField3, SIGNAL(textChanged(const QString &)), |
594 | this, SLOT(slotChooser3Change(const QString &)) ); | 594 | this, SLOT(slotChooser3Change(const QString &)) ); |
595 | connect( txtChooserField4, SIGNAL(textChanged(const QString &)), | 595 | connect( txtChooserField4, SIGNAL(textChanged(const QString &)), |
596 | this, SLOT(slotChooser4Change(const QString &)) ); | 596 | this, SLOT(slotChooser4Change(const QString &)) ); |
597 | connect( txtAddress, SIGNAL(textChanged(const QString &)), | 597 | connect( txtAddress, SIGNAL(textChanged(const QString &)), |
598 | this, SLOT(slotAddressChange(const QString &)) ); | 598 | this, SLOT(slotAddressChange(const QString &)) ); |
599 | //connect( txtAddress2, SIGNAL(textChanged(const QString &)), this, SLOT(slotAddress2Change(const QString &)) ); | 599 | //connect( txtAddress2, SIGNAL(textChanged(const QString &)), this, SLOT(slotAddress2Change(const QString &)) ); |
600 | //connect( txtPOBox, SIGNAL(textChanged(const QString &)), this, SLOT(slotPOBoxChange(const QString &)) ); | 600 | //connect( txtPOBox, SIGNAL(textChanged(const QString &)), this, SLOT(slotPOBoxChange(const QString &)) ); |
601 | connect( txtCity, SIGNAL(textChanged(const QString &)), | 601 | connect( txtCity, SIGNAL(textChanged(const QString &)), |
602 | this, SLOT(slotCityChange(const QString &)) ); | 602 | this, SLOT(slotCityChange(const QString &)) ); |
603 | connect( txtState, SIGNAL(textChanged(const QString &)), | 603 | connect( txtState, SIGNAL(textChanged(const QString &)), |
604 | this, SLOT(slotStateChange(const QString &)) ); | 604 | this, SLOT(slotStateChange(const QString &)) ); |
605 | connect( txtZip, SIGNAL(textChanged(const QString &)), | 605 | connect( txtZip, SIGNAL(textChanged(const QString &)), |
606 | this, SLOT(slotZipChange(const QString &)) ); | 606 | this, SLOT(slotZipChange(const QString &)) ); |
607 | connect( cmbCountry, SIGNAL(textChanged(const QString &)), | 607 | connect( cmbCountry, SIGNAL(textChanged(const QString &)), |
608 | this, SLOT(slotCountryChange(const QString &)) ); | 608 | this, SLOT(slotCountryChange(const QString &)) ); |
609 | connect( cmbCountry, SIGNAL(activated(const QString &)), | 609 | connect( cmbCountry, SIGNAL(activated(const QString &)), |
610 | this, SLOT(slotCountryChange(const QString &)) ); | 610 | this, SLOT(slotCountryChange(const QString &)) ); |
611 | connect( cmbChooserField1, SIGNAL(activated(int)), | 611 | connect( cmbChooserField1, SIGNAL(activated(int)), |
612 | this, SLOT(slotCmbChooser1Change(int)) ); | 612 | this, SLOT(slotCmbChooser1Change(int)) ); |
613 | connect( cmbChooserField2, SIGNAL(activated(int)), | 613 | connect( cmbChooserField2, SIGNAL(activated(int)), |
614 | this, SLOT(slotCmbChooser2Change(int)) ); | 614 | this, SLOT(slotCmbChooser2Change(int)) ); |
615 | connect( cmbChooserField3, SIGNAL(activated(int)), | 615 | connect( cmbChooserField3, SIGNAL(activated(int)), |
616 | this, SLOT(slotCmbChooser3Change(int)) ); | 616 | this, SLOT(slotCmbChooser3Change(int)) ); |
617 | connect( cmbChooserField4, SIGNAL(activated(int)), | 617 | connect( cmbChooserField4, SIGNAL(activated(int)), |
618 | this, SLOT(slotCmbChooser4Change(int)) ); | 618 | this, SLOT(slotCmbChooser4Change(int)) ); |
619 | connect( cmbAddress, SIGNAL(activated(int)), | 619 | connect( cmbAddress, SIGNAL(activated(int)), |
620 | this, SLOT(slotAddressTypeChange(int)) ); | 620 | this, SLOT(slotAddressTypeChange(int)) ); |
621 | 621 | ||
622 | new QPEDialogListener(this); | 622 | new QPEDialogListener(this); |
623 | 623 | ||
624 | setPersonalView ( m_personalView ); | 624 | setPersonalView ( m_personalView ); |
625 | } | 625 | } |
626 | 626 | ||
627 | void ContactEditor::defaultEmailChanged(int i){ | 627 | void ContactEditor::defaultEmailChanged(int i){ |
628 | qDebug("defaultEmailChanged"); | 628 | qDebug("defaultEmailChanged"); |
629 | int index = cmbChooserField1->currentItem(); | 629 | int index = cmbChooserField1->currentItem(); |
630 | slChooserValues[index] = cmbDefaultEmail->text(i); | 630 | slChooserValues[index] = cmbDefaultEmail->text(i); |
631 | 631 | ||
632 | } | 632 | } |
633 | 633 | ||
634 | void ContactEditor::chooserChange( const QString &textChanged, int index, QLineEdit *inputWid ) { | 634 | void ContactEditor::chooserChange( const QString &textChanged, int index, QLineEdit *inputWid, int widgetPos ) { |
635 | 635 | ||
636 | qDebug("defaultEmailChooserPosition %i, widgetPos %i ",defaultEmailChooserPosition,widgetPos); | ||
636 | if (slChooserNames[index] == "Default Email"){ | 637 | if (slChooserNames[index] == "Default Email"){ |
637 | if (cmbDefaultEmail) delete cmbDefaultEmail; | 638 | if (cmbDefaultEmail) delete cmbDefaultEmail; |
638 | cmbDefaultEmail = new QComboBox(inputWid->parentWidget()); | 639 | cmbDefaultEmail = new QComboBox(inputWid->parentWidget()); |
639 | cmbDefaultEmail->setGeometry(inputWid->frameGeometry()); | 640 | cmbDefaultEmail->setGeometry(inputWid->frameGeometry()); |
640 | cmbDefaultEmail->insertStringList(ent.emailList()); | 641 | cmbDefaultEmail->insertStringList(ent.emailList()); |
641 | connect(cmbDefaultEmail,SIGNAL(activated(int)), | 642 | connect(cmbDefaultEmail,SIGNAL(activated(int)), |
642 | SLOT(defaultEmailChanged(int))); | 643 | SLOT(defaultEmailChanged(int))); |
643 | QString demail = ent.defaultEmail(); | 644 | QString demail = ent.defaultEmail(); |
644 | for ( int i = 0; i < cmbDefaultEmail->count(); i++) | 645 | for ( int i = 0; i < cmbDefaultEmail->count(); i++) |
645 | if ( cmbDefaultEmail->text( i ) == demail ) | 646 | if ( cmbDefaultEmail->text( i ) == demail ) |
646 | cmbDefaultEmail->setCurrentItem( i ); | 647 | cmbDefaultEmail->setCurrentItem( i ); |
647 | 648 | ||
648 | cmbDefaultEmail->show(); | 649 | cmbDefaultEmail->show(); |
649 | } | 650 | defaultEmailChooserPosition = widgetPos; |
651 | }else if (defaultEmailChooserPosition == widgetPos){ | ||
652 | qDebug("cmbDefaultEmail->hide()"); | ||
653 | if (cmbDefaultEmail) cmbDefaultEmail->hide(); | ||
654 | } | ||
650 | 655 | ||
651 | 656 | ||
652 | slChooserValues[index] = textChanged; | 657 | slChooserValues[index] = textChanged; |
653 | 658 | ||
654 | } | 659 | } |
655 | 660 | ||
656 | void ContactEditor::slotChooser1Change( const QString &textChanged ) { | 661 | void ContactEditor::slotChooser1Change( const QString &textChanged ) { |
657 | chooserChange( textChanged, cmbChooserField1->currentItem(), txtChooserField1); | 662 | chooserChange( textChanged, cmbChooserField1->currentItem(), txtChooserField1, 1); |
658 | } | 663 | } |
659 | 664 | ||
660 | void ContactEditor::slotChooser2Change( const QString &textChanged ) { | 665 | void ContactEditor::slotChooser2Change( const QString &textChanged ) { |
661 | chooserChange( textChanged, cmbChooserField2->currentItem(), txtChooserField2); | 666 | chooserChange( textChanged, cmbChooserField2->currentItem(), txtChooserField2, 2); |
662 | 667 | ||
663 | } | 668 | } |
664 | 669 | ||
665 | void ContactEditor::slotChooser3Change( const QString &textChanged ) { | 670 | void ContactEditor::slotChooser3Change( const QString &textChanged ) { |
666 | chooserChange( textChanged, cmbChooserField3->currentItem(), txtChooserField3); | 671 | chooserChange( textChanged, cmbChooserField3->currentItem(), txtChooserField3, 3); |
667 | } | 672 | } |
668 | 673 | ||
669 | void ContactEditor::slotChooser4Change( const QString &textChanged ) { | 674 | void ContactEditor::slotChooser4Change( const QString &textChanged ) { |
670 | chooserChange( textChanged, cmbChooserField4->currentItem(), txtChooserField4); | 675 | chooserChange( textChanged, cmbChooserField4->currentItem(), txtChooserField4, 4); |
671 | } | 676 | } |
672 | 677 | ||
673 | void ContactEditor::slotAddressChange( const QString &textChanged ) { | 678 | void ContactEditor::slotAddressChange( const QString &textChanged ) { |
674 | 679 | ||
675 | if ( cmbAddress->currentItem() == 0 ) { | 680 | if ( cmbAddress->currentItem() == 0 ) { |
676 | slBusinessAddress[0] = textChanged; | 681 | slBusinessAddress[0] = textChanged; |
677 | } else { | 682 | } else { |
678 | slHomeAddress[0] = textChanged; | 683 | slHomeAddress[0] = textChanged; |
679 | } | 684 | } |
680 | } | 685 | } |
681 | 686 | ||
682 | void ContactEditor::slotAddress2Change( const QString &textChanged ) { | 687 | void ContactEditor::slotAddress2Change( const QString &textChanged ) { |
683 | 688 | ||
684 | if ( cmbAddress->currentItem() == 0 ) { | 689 | if ( cmbAddress->currentItem() == 0 ) { |
685 | slBusinessAddress[1] = textChanged; | 690 | slBusinessAddress[1] = textChanged; |
686 | } else { | 691 | } else { |
687 | slHomeAddress[1] = textChanged; | 692 | slHomeAddress[1] = textChanged; |
688 | } | 693 | } |
689 | } | 694 | } |
690 | 695 | ||
691 | void ContactEditor::slotPOBoxChange( const QString &textChanged ) { | 696 | void ContactEditor::slotPOBoxChange( const QString &textChanged ) { |
692 | 697 | ||
693 | if ( cmbAddress->currentItem() == 0 ) { | 698 | if ( cmbAddress->currentItem() == 0 ) { |
694 | slBusinessAddress[2] = textChanged; | 699 | slBusinessAddress[2] = textChanged; |
695 | } else { | 700 | } else { |
696 | slHomeAddress[2] = textChanged; | 701 | slHomeAddress[2] = textChanged; |
697 | } | 702 | } |
698 | } | 703 | } |
699 | 704 | ||
700 | void ContactEditor::slotCityChange( const QString &textChanged ) { | 705 | void ContactEditor::slotCityChange( const QString &textChanged ) { |
701 | 706 | ||
702 | if ( cmbAddress->currentItem() == 0 ) { | 707 | if ( cmbAddress->currentItem() == 0 ) { |
703 | slBusinessAddress[3] = textChanged; | 708 | slBusinessAddress[3] = textChanged; |
704 | } else { | 709 | } else { |
705 | slHomeAddress[3] = textChanged; | 710 | slHomeAddress[3] = textChanged; |
706 | } | 711 | } |
707 | } | 712 | } |
708 | 713 | ||
709 | void ContactEditor::slotStateChange( const QString &textChanged ) { | 714 | void ContactEditor::slotStateChange( const QString &textChanged ) { |
710 | 715 | ||
711 | 716 | ||
712 | if ( cmbAddress->currentItem() == 0 ) { | 717 | if ( cmbAddress->currentItem() == 0 ) { |
713 | slBusinessAddress[4] = textChanged; | 718 | slBusinessAddress[4] = textChanged; |
714 | } else { | 719 | } else { |
715 | slHomeAddress[4] = textChanged; | 720 | slHomeAddress[4] = textChanged; |
716 | } | 721 | } |
717 | } | 722 | } |
718 | 723 | ||
719 | void ContactEditor::slotZipChange( const QString &textChanged ) { | 724 | void ContactEditor::slotZipChange( const QString &textChanged ) { |
720 | 725 | ||
721 | if ( cmbAddress->currentItem() == 0 ) { | 726 | if ( cmbAddress->currentItem() == 0 ) { |
722 | slBusinessAddress[5] = textChanged; | 727 | slBusinessAddress[5] = textChanged; |
723 | } else { | 728 | } else { |
724 | slHomeAddress[5] = textChanged; | 729 | slHomeAddress[5] = textChanged; |
725 | } | 730 | } |
726 | } | 731 | } |
727 | 732 | ||
728 | void ContactEditor::slotCountryChange( const QString &textChanged ) { | 733 | void ContactEditor::slotCountryChange( const QString &textChanged ) { |
729 | 734 | ||
730 | if ( cmbAddress->currentItem() == 0 ) { | 735 | if ( cmbAddress->currentItem() == 0 ) { |
731 | slBusinessAddress[6] = textChanged; | 736 | slBusinessAddress[6] = textChanged; |
732 | } else { | 737 | } else { |
733 | slHomeAddress[6] = textChanged; | 738 | slHomeAddress[6] = textChanged; |
734 | } | 739 | } |
735 | } | 740 | } |
736 | 741 | ||
737 | void ContactEditor::slotCmbChooser1Change( int index ) { | 742 | void ContactEditor::slotCmbChooser1Change( int index ) { |
738 | 743 | ||
739 | txtChooserField1->setText( slChooserValues[index] ); | 744 | txtChooserField1->setText( slChooserValues[index] ); |
740 | txtChooserField1->setFocus(); | 745 | txtChooserField1->setFocus(); |
741 | } | 746 | } |
742 | 747 | ||
743 | void ContactEditor::slotCmbChooser2Change( int index ) { | 748 | void ContactEditor::slotCmbChooser2Change( int index ) { |
744 | 749 | ||
745 | txtChooserField2->setText( slChooserValues[index] ); | 750 | txtChooserField2->setText( slChooserValues[index] ); |
746 | txtChooserField2->setFocus(); | 751 | txtChooserField2->setFocus(); |
747 | } | 752 | } |
748 | 753 | ||
749 | void ContactEditor::slotCmbChooser3Change( int index ) { | 754 | void ContactEditor::slotCmbChooser3Change( int index ) { |
750 | 755 | ||
751 | txtChooserField3->setText( slChooserValues[index] ); | 756 | txtChooserField3->setText( slChooserValues[index] ); |
752 | txtChooserField3->setFocus(); | 757 | txtChooserField3->setFocus(); |
753 | 758 | ||
754 | } | 759 | } |
755 | 760 | ||
756 | void ContactEditor::slotCmbChooser4Change( int index ) { | 761 | void ContactEditor::slotCmbChooser4Change( int index ) { |
757 | 762 | ||
758 | txtChooserField4->setText( slChooserValues[index] ); | 763 | txtChooserField4->setText( slChooserValues[index] ); |
759 | txtChooserField4->setFocus(); | 764 | txtChooserField4->setFocus(); |
760 | 765 | ||
761 | } | 766 | } |
762 | 767 | ||
763 | void ContactEditor::slotAddressTypeChange( int index ) { | 768 | void ContactEditor::slotAddressTypeChange( int index ) { |
764 | 769 | ||
765 | if ( index == 0 ) { | 770 | if ( index == 0 ) { |
766 | 771 | ||
diff --git a/core/pim/addressbook/contacteditor.h b/core/pim/addressbook/contacteditor.h index d4b7f27..63257f8 100644 --- a/core/pim/addressbook/contacteditor.h +++ b/core/pim/addressbook/contacteditor.h | |||
@@ -10,165 +10,166 @@ | |||
10 | * | 10 | * |
11 | * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | 11 | * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE |
12 | * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | 12 | * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
13 | * | 13 | * |
14 | * | 14 | * |
15 | * This is a rewrite of the abeditor.h file, modified to provide a more | 15 | * This is a rewrite of the abeditor.h file, modified to provide a more |
16 | * intuitive interface to TrollTech's original Address Book editor. This | 16 | * intuitive interface to TrollTech's original Address Book editor. This |
17 | * is made to operate exactly in interface with the exception of name. | 17 | * is made to operate exactly in interface with the exception of name. |
18 | * | 18 | * |
19 | */ | 19 | */ |
20 | 20 | ||
21 | #ifndef CONTACTEDITOR_H | 21 | #ifndef CONTACTEDITOR_H |
22 | #define CONTACTEDITOR_H | 22 | #define CONTACTEDITOR_H |
23 | 23 | ||
24 | #include <opie/ocontact.h> | 24 | #include <opie/ocontact.h> |
25 | 25 | ||
26 | #include <qpe/datebookmonth.h> | 26 | #include <qpe/datebookmonth.h> |
27 | 27 | ||
28 | #include <qdialog.h> | 28 | #include <qdialog.h> |
29 | #include <qlist.h> | 29 | #include <qlist.h> |
30 | #include <qmap.h> | 30 | #include <qmap.h> |
31 | #include <qstringlist.h> | 31 | #include <qstringlist.h> |
32 | 32 | ||
33 | const int NAME_LF = 0; | 33 | const int NAME_LF = 0; |
34 | const int NAME_LFM = 1; | 34 | const int NAME_LFM = 1; |
35 | const int NAME_FL = 2; | 35 | const int NAME_FL = 2; |
36 | const int NAME_FMLS = 3; | 36 | const int NAME_FMLS = 3; |
37 | 37 | ||
38 | const int NAME_F = 4; | 38 | const int NAME_F = 4; |
39 | const int NAME_M = 5; | 39 | const int NAME_M = 5; |
40 | const int NAME_L = 6; | 40 | const int NAME_L = 6; |
41 | const int NAME_S = 7; | 41 | const int NAME_S = 7; |
42 | 42 | ||
43 | 43 | ||
44 | class QScrollView; | 44 | class QScrollView; |
45 | class QTabWidget; | 45 | class QTabWidget; |
46 | class QMultiLineEdit; | 46 | class QMultiLineEdit; |
47 | class QLineEdit; | 47 | class QLineEdit; |
48 | class QComboBox; | 48 | class QComboBox; |
49 | class QPushButton; | 49 | class QPushButton; |
50 | class CategorySelect; | 50 | class CategorySelect; |
51 | class QLabel; | 51 | class QLabel; |
52 | 52 | ||
53 | class ContactEditor : public QDialog { | 53 | class ContactEditor : public QDialog { |
54 | Q_OBJECT | 54 | Q_OBJECT |
55 | 55 | ||
56 | public: | 56 | public: |
57 | ContactEditor(const OContact &entry, | 57 | ContactEditor(const OContact &entry, |
58 | QWidget *parent = 0, | 58 | QWidget *parent = 0, |
59 | const char *name = 0, | 59 | const char *name = 0, |
60 | WFlags fl = 0 ); | 60 | WFlags fl = 0 ); |
61 | ~ContactEditor(); | 61 | ~ContactEditor(); |
62 | void setNameFocus(); | 62 | void setNameFocus(); |
63 | void setPersonalView( bool personal = true ); | 63 | void setPersonalView( bool personal = true ); |
64 | OContact entry() const { return ent; } | 64 | OContact entry() const { return ent; } |
65 | 65 | ||
66 | public slots: | 66 | public slots: |
67 | void slotNote(); | 67 | void slotNote(); |
68 | void slotName(); | 68 | void slotName(); |
69 | void setEntry(const OContact &entry); | 69 | void setEntry(const OContact &entry); |
70 | 70 | ||
71 | protected slots: | 71 | protected slots: |
72 | void accept(); | 72 | void accept(); |
73 | 73 | ||
74 | private: | 74 | private: |
75 | void init(); | 75 | void init(); |
76 | void saveEntry(); | 76 | void saveEntry(); |
77 | bool isEmpty(); | 77 | bool isEmpty(); |
78 | void cleanupFields(); | 78 | void cleanupFields(); |
79 | void updateDatePicker(); | 79 | void updateDatePicker(); |
80 | QString parseName( QString fullName, int type ); | 80 | QString parseName( QString fullName, int type ); |
81 | private slots: | 81 | private slots: |
82 | void slotChooser1Change( const QString &textChanged ); | 82 | void slotChooser1Change( const QString &textChanged ); |
83 | void slotChooser2Change( const QString &textChanged ); | 83 | void slotChooser2Change( const QString &textChanged ); |
84 | void slotChooser3Change( const QString &textChanged ); | 84 | void slotChooser3Change( const QString &textChanged ); |
85 | void slotChooser4Change( const QString &textChanged ); | 85 | void slotChooser4Change( const QString &textChanged ); |
86 | void slotCmbChooser1Change( int index ); | 86 | void slotCmbChooser1Change( int index ); |
87 | void slotCmbChooser2Change( int index ); | 87 | void slotCmbChooser2Change( int index ); |
88 | void slotCmbChooser3Change( int index ); | 88 | void slotCmbChooser3Change( int index ); |
89 | void slotCmbChooser4Change( int index ); | 89 | void slotCmbChooser4Change( int index ); |
90 | void slotAddressTypeChange( int index ); | 90 | void slotAddressTypeChange( int index ); |
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 | void defaultEmailChanged(int); |
104 | 104 | ||
105 | private: | 105 | private: |
106 | void chooserChange( const QString&, int , QLineEdit* ); | 106 | int defaultEmailChooserPosition; |
107 | void chooserChange( const QString&, int , QLineEdit*, int ); | ||
107 | bool useFullName; | 108 | bool useFullName; |
108 | 109 | ||
109 | OContact ent; | 110 | OContact ent; |
110 | 111 | ||
111 | QDialog *dlgNote; | 112 | QDialog *dlgNote; |
112 | QDialog *dlgName; | 113 | QDialog *dlgName; |
113 | 114 | ||
114 | QList<QLineEdit> listValue; | 115 | QList<QLineEdit> listValue; |
115 | QList<QLabel> listName; | 116 | QList<QLabel> listName; |
116 | 117 | ||
117 | QStringList slDynamicEntries; | 118 | QStringList slDynamicEntries; |
118 | QStringList trlDynamicEntries; | 119 | QStringList trlDynamicEntries; |
119 | 120 | ||
120 | bool m_personalView; | 121 | bool m_personalView; |
121 | 122 | ||
122 | QStringList slHomeAddress; | 123 | QStringList slHomeAddress; |
123 | QStringList slBusinessAddress; | 124 | QStringList slBusinessAddress; |
124 | QStringList slChooserNames; | 125 | QStringList slChooserNames; |
125 | QStringList slChooserValues; | 126 | QStringList slChooserValues; |
126 | 127 | ||
127 | QMultiLineEdit *txtNote; | 128 | QMultiLineEdit *txtNote; |
128 | QLabel *lblNote; | 129 | QLabel *lblNote; |
129 | 130 | ||
130 | //QLineEdit *txtTitle; | 131 | //QLineEdit *txtTitle; |
131 | QLineEdit *txtFirstName; | 132 | QLineEdit *txtFirstName; |
132 | QLineEdit *txtMiddleName; | 133 | QLineEdit *txtMiddleName; |
133 | QLineEdit *txtLastName; | 134 | QLineEdit *txtLastName; |
134 | QLineEdit *txtSuffix; | 135 | QLineEdit *txtSuffix; |
135 | 136 | ||
136 | QTabWidget *tabMain; | 137 | QTabWidget *tabMain; |
137 | QScrollView *svGeneral; | 138 | QScrollView *svGeneral; |
138 | QPushButton *btnFullName; | 139 | QPushButton *btnFullName; |
139 | QPushButton *btnNote; | 140 | QPushButton *btnNote; |
140 | QLineEdit *txtFullName; | 141 | QLineEdit *txtFullName; |
141 | QLineEdit *txtJobTitle; | 142 | QLineEdit *txtJobTitle; |
142 | QLineEdit *txtOrganization; | 143 | QLineEdit *txtOrganization; |
143 | QLineEdit *txtChooserField1; | 144 | QLineEdit *txtChooserField1; |
144 | QLineEdit *txtChooserField2; | 145 | QLineEdit *txtChooserField2; |
145 | QLineEdit *txtChooserField3; | 146 | QLineEdit *txtChooserField3; |
146 | QLineEdit *txtChooserField4; | 147 | QLineEdit *txtChooserField4; |
147 | QComboBox *cmbChooserField1; | 148 | QComboBox *cmbChooserField1; |
148 | QComboBox *cmbChooserField2; | 149 | QComboBox *cmbChooserField2; |
149 | QComboBox *cmbChooserField3; | 150 | QComboBox *cmbChooserField3; |
150 | QComboBox *cmbChooserField4; | 151 | QComboBox *cmbChooserField4; |
151 | QComboBox *cmbDefaultEmail; | 152 | QComboBox *cmbDefaultEmail; |
152 | QComboBox *cmbFileAs; | 153 | QComboBox *cmbFileAs; |
153 | CategorySelect *cmbCat; | 154 | CategorySelect *cmbCat; |
154 | QLabel *labCat; | 155 | QLabel *labCat; |
155 | 156 | ||
156 | QScrollView *svAddress; | 157 | QScrollView *svAddress; |
157 | QLineEdit *txtAddress; | 158 | QLineEdit *txtAddress; |
158 | //QLineEdit *txtAddress2; | 159 | //QLineEdit *txtAddress2; |
159 | //QLineEdit *txtPOBox; | 160 | //QLineEdit *txtPOBox; |
160 | QLineEdit *txtCity; | 161 | QLineEdit *txtCity; |
161 | QLineEdit *txtState; | 162 | QLineEdit *txtState; |
162 | QLineEdit *txtZip; | 163 | QLineEdit *txtZip; |
163 | QComboBox *cmbAddress; | 164 | QComboBox *cmbAddress; |
164 | QComboBox *cmbCountry; | 165 | QComboBox *cmbCountry; |
165 | 166 | ||
166 | QScrollView *svDetails; | 167 | QScrollView *svDetails; |
167 | QComboBox *cmbGender; | 168 | QComboBox *cmbGender; |
168 | DateBookMonth* birthdayPicker; | 169 | DateBookMonth* birthdayPicker; |
169 | QToolButton* birthdayButton; | 170 | QToolButton* birthdayButton; |
170 | DateBookMonth* anniversaryPicker; | 171 | DateBookMonth* anniversaryPicker; |
171 | QToolButton* anniversaryButton; | 172 | QToolButton* anniversaryButton; |
172 | }; | 173 | }; |
173 | 174 | ||
174 | #endif | 175 | #endif |