summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/addresseeeditorwidget.cpp32
-rw-r--r--kaddressbook/addresseeeditorwidget.h2
2 files changed, 28 insertions, 6 deletions
diff --git a/kaddressbook/addresseeeditorwidget.cpp b/kaddressbook/addresseeeditorwidget.cpp
index 29abd6f..310d628 100644
--- a/kaddressbook/addresseeeditorwidget.cpp
+++ b/kaddressbook/addresseeeditorwidget.cpp
@@ -1,711 +1,731 @@
1/* 1/*
2 This file is part of KAddressBook. 2 This file is part of KAddressBook.
3 Copyright (c) 2002 Mike Pilone <mpilone@slac.com> 3 Copyright (c) 2002 Mike Pilone <mpilone@slac.com>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program 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 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#include <qcheckbox.h> 24#include <qcheckbox.h>
25#include <qhbox.h> 25#include <qhbox.h>
26#include <qlabel.h> 26#include <qlabel.h>
27#include <qlayout.h> 27#include <qlayout.h>
28#include <qlistbox.h> 28#include <qlistbox.h>
29#include <qpushbutton.h> 29#include <qpushbutton.h>
30#include <qtabwidget.h> 30#include <qtabwidget.h>
31#include <qapplication.h> 31#include <qapplication.h>
32 32
33#ifndef KAB_EMBEDDED 33#ifndef KAB_EMBEDDED
34#include <qtextedit.h> 34#include <qtextedit.h>
35 35
36#include <kaccelmanager.h> 36#include <kaccelmanager.h>
37#include "keywidget.h" 37#include "keywidget.h"
38#include "soundwidget.h" 38#include "soundwidget.h"
39 39
40#else //KAB_EMBEDDED 40#else //KAB_EMBEDDED
41#include <qmultilineedit.h> 41#include <qmultilineedit.h>
42#endif //KAB_EMBEDDED 42#endif //KAB_EMBEDDED
43 43
44 44
45#include "keywidget.h" 45#include "keywidget.h"
46#include "geowidget.h" 46#include "geowidget.h"
47#include "imagewidget.h" 47#include "imagewidget.h"
48#include "nameeditdialog.h" 48#include "nameeditdialog.h"
49#include "phoneeditwidget.h" 49#include "phoneeditwidget.h"
50#include "secrecywidget.h" 50#include "secrecywidget.h"
51 51
52 52
53#include <qtoolbutton.h> 53#include <qtoolbutton.h>
54#include <qtooltip.h> 54#include <qtooltip.h>
55 55
56#include <kapplication.h> 56#include <kapplication.h>
57#include <kconfig.h> 57#include <kconfig.h>
58#include <kcombobox.h> 58#include <kcombobox.h>
59#include <kdebug.h> 59#include <kdebug.h>
60#include <kdialogbase.h> 60#include <kdialogbase.h>
61#include <kglobal.h> 61#include <kglobal.h>
62#include <kiconloader.h> 62#include <kiconloader.h>
63#include <klineedit.h> 63#include <klineedit.h>
64#include <klocale.h> 64#include <klocale.h>
65#include <kmessagebox.h> 65#include <kmessagebox.h>
66#include <kseparator.h> 66#include <kseparator.h>
67#include <ksqueezedtextlabel.h> 67#include <ksqueezedtextlabel.h>
68 68
69#include <libkdepim/categoryeditdialog.h> 69#include <libkdepim/categoryeditdialog.h>
70#include <libkdepim/categoryselectdialog.h> 70#include <libkdepim/categoryselectdialog.h>
71 71
72#include <libkdepim/kdateedit.h> 72#include <libkdepim/kdateedit.h>
73 73
74#include "addresseditwidget.h" 74#include "addresseditwidget.h"
75#include "emaileditwidget.h" 75#include "emaileditwidget.h"
76#include "kabcore.h" 76#include "kabcore.h"
77#include "kabprefs.h" 77#include "kabprefs.h"
78 78
79#include "addresseeeditorwidget.h" 79#include "addresseeeditorwidget.h"
80 80
81 81
82 82
83AddresseeEditorWidget::AddresseeEditorWidget( KABCore *core, bool isExtension, 83AddresseeEditorWidget::AddresseeEditorWidget( KABCore *core, bool isExtension,
84 QWidget *parent, const char *name ) 84 QWidget *parent, const char *name )
85 : ExtensionWidget( core, parent, name ), mIsExtension( isExtension ), 85 : ExtensionWidget( core, parent, name ), mIsExtension( isExtension ),
86 mBlockSignals( false ) 86 mBlockSignals( false )
87{ 87{
88 88
89 mAConfig = AddresseeConfig::instance(); 89 mAConfig = AddresseeConfig::instance();
90 90
91 mFormattedNameType = NameEditDialog::CustomName; 91 mFormattedNameType = NameEditDialog::CustomName;
92 initGUI(); 92 initGUI();
93 mCategoryDialog = 0; 93 mCategoryDialog = 0;
94 mCategoryEditDialog = 0; 94 mCategoryEditDialog = 0;
95 95
96 // Load the empty addressee as defaults 96 // Load the empty addressee as defaults
97 load(); 97 load();
98 98
99 mDirty = false; 99 mDirty = false;
100} 100}
101 101
102AddresseeEditorWidget::~AddresseeEditorWidget() 102AddresseeEditorWidget::~AddresseeEditorWidget()
103{ 103{
104 kdDebug(5720) << "~AddresseeEditorWidget()" << endl; 104 kdDebug(5720) << "~AddresseeEditorWidget()" << endl;
105} 105}
106 106
107void AddresseeEditorWidget::contactsSelectionChanged() 107void AddresseeEditorWidget::contactsSelectionChanged()
108{ 108{
109 KABC::Addressee::List list = selectedContacts(); 109 KABC::Addressee::List list = selectedContacts();
110 110
111 mAddressee = list[ 0 ]; 111 mAddressee = list[ 0 ];
112 load(); 112 load();
113} 113}
114 114
115void AddresseeEditorWidget::setAddressee( const KABC::Addressee &addr ) 115void AddresseeEditorWidget::setAddressee( const KABC::Addressee &addr )
116{ 116{
117 mAddressee = addr; 117 mAddressee = addr;
118 load(); 118 load();
119} 119}
120 120
121const KABC::Addressee &AddresseeEditorWidget::addressee() 121const KABC::Addressee &AddresseeEditorWidget::addressee()
122{ 122{
123 return mAddressee; 123 return mAddressee;
124} 124}
125 125
126void AddresseeEditorWidget::textChanged( const QString& ) 126void AddresseeEditorWidget::textChanged( const QString& )
127{ 127{
128 emitModified(); 128 emitModified();
129} 129}
130 130
131void AddresseeEditorWidget::initGUI() 131void AddresseeEditorWidget::initGUI()
132{ 132{
133 QVBoxLayout *layout = new QVBoxLayout( this ); 133 QVBoxLayout *layout = new QVBoxLayout( this );
134 134
135 mTabWidget = new QTabWidget( this ); 135 mTabWidget = new QTabWidget( this );
136 layout->addWidget( mTabWidget ); 136 layout->addWidget( mTabWidget );
137 137
138 setupTab1(); 138 setupTab1();
139 setupTab1_1(); 139 setupTab1_1();
140 setupTab2(); 140 setupTab2();
141 setupTab2_1(); 141 setupTab2_1();
142 setupTab3(); 142 setupTab3();
143 setupTab3_1(); 143 setupTab3_1();
144 144
145 mNameEdit->setFocus(); 145 mNameEdit->setFocus();
146 146
147 connect( mTabWidget, SIGNAL( currentChanged(QWidget*) ), 147 connect( mTabWidget, SIGNAL( currentChanged(QWidget*) ),
148 SLOT( pageChanged(QWidget*) ) ); 148 SLOT( pageChanged(QWidget*) ) );
149} 149}
150 150
151void AddresseeEditorWidget::setupTab1() 151void AddresseeEditorWidget::setupTab1()
152{ 152{
153 // This is the General tab 153 // This is the General tab
154 QWidget *tab1 = new QWidget( mTabWidget ); 154 QWidget *tab1 = new QWidget( mTabWidget );
155 155
156//US QGridLayout *layout = new QGridLayout( tab1, 11, 7 ); 156//US QGridLayout *layout = new QGridLayout( tab1, 11, 7 );
157 QGridLayout *layout = new QGridLayout( tab1, 7, 1 ); 157 QGridLayout *layout = new QGridLayout( tab1, 7, 1 );
158 layout->setMargin( KDialogBase::marginHintSmall() ); 158 layout->setMargin( KDialogBase::marginHintSmall() );
159 layout->setSpacing( KDialogBase::spacingHintSmall() ); 159 layout->setSpacing( KDialogBase::spacingHintSmall() );
160 160
161 QLabel *label; 161 QLabel *label;
162 KSeparator* bar; 162 KSeparator* bar;
163 QPushButton *button; 163 QPushButton *button;
164 164
165 ////////////////////////////////// 165 //////////////////////////////////
166 // Upper left group (person info) 166 // Upper left group (person info)
167 167
168 // Person icon 168 // Person icon
169 /* LR 169 /* LR
170 label = new QLabel( tab1 ); 170 label = new QLabel( tab1 );
171//US ambiguous call. Add one more parameter 171//US ambiguous call. Add one more parameter
172//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop ) ); 172//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop ) );
173 label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop, 0 ) ); 173 label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop, 0 ) );
174 layout->addMultiCellWidget( label, 0, 1, 0, 0 ); 174 layout->addMultiCellWidget( label, 0, 1, 0, 0 );
175 */ 175 */
176 // First name 176 // First name
177 button = new QPushButton( i18n( "Name..." ), tab1 ); 177 button = new QPushButton( i18n( "Name..." ), tab1 );
178//US QToolTip::add( button, i18n( "Edit the contact's name" ) ); 178//US QToolTip::add( button, i18n( "Edit the contact's name" ) );
179 mNameEdit = new KLineEdit( tab1, "mNameEdit" ); 179 mNameEdit = new KLineEdit( tab1, "mNameEdit" );
180 connect( mNameEdit, SIGNAL( textChanged( const QString& ) ), 180 connect( mNameEdit, SIGNAL( textChanged( const QString& ) ),
181 SLOT( nameTextChanged( const QString& ) ) ); 181 SLOT( nameTextChanged( const QString& ) ) );
182 connect( button, SIGNAL( clicked() ), SLOT( nameButtonClicked() ) ); 182 connect( button, SIGNAL( clicked() ), SLOT( nameButtonClicked() ) );
183 183
184 mNameLabel = new KSqueezedTextLabel( tab1 ); 184 mNameLabel = new KSqueezedTextLabel( tab1 );
185 mNameLabel->hide(); 185 mNameLabel->hide();
186 186
187 layout->addWidget( button, 0, 0 ); 187 layout->addWidget( button, 0, 0 );
188 layout->addWidget( mNameEdit, 0, 1 ); 188 layout->addWidget( mNameEdit, 0, 1 );
189 layout->addWidget( mNameLabel, 0, 1 ); 189 layout->addWidget( mNameLabel, 0, 1 );
190 190
191 label = new QLabel( i18n( "Role:" ), tab1 ); 191 button = new QPushButton( i18n( "Role:" ), tab1 );
192 connect( button, SIGNAL( clicked() ), SLOT( setRole2FN() ) );
193 //label = new QLabel( i18n( "Role:" ), tab1 );
192 mRoleEdit = new KLineEdit( tab1 ); 194 mRoleEdit = new KLineEdit( tab1 );
193 connect( mRoleEdit, SIGNAL( textChanged( const QString& ) ), 195 connect( mRoleEdit, SIGNAL( textChanged( const QString& ) ),
194 SLOT( textChanged( const QString& ) ) ); 196 SLOT( textChanged( const QString& ) ) );
195 label->setBuddy( mRoleEdit ); 197 //label->setBuddy( mRoleEdit );
196 layout->addWidget( label, 1, 0 ); 198 layout->addWidget( button, 1, 0 );
197 layout->addWidget( mRoleEdit, 1, 1 ); 199 layout->addWidget( mRoleEdit, 1, 1 );
198 200
199 // Organization 201 // Organization
200 label = new QLabel( i18n( "Organization:" ), tab1 ); 202 button = new QPushButton( i18n( "Organization:" ), tab1 );
203 connect( button, SIGNAL( clicked() ), SLOT( setCompany2FN() ) );
204 //label = new QLabel( i18n( "Organization:" ), tab1 );
201 mOrgEdit = new KLineEdit( tab1 ); 205 mOrgEdit = new KLineEdit( tab1 );
202 label->setBuddy( mOrgEdit ); 206 //label->setBuddy( mOrgEdit );
203 connect( mOrgEdit, SIGNAL( textChanged( const QString& ) ), 207 connect( mOrgEdit, SIGNAL( textChanged( const QString& ) ),
204 SLOT( textChanged( const QString& ) ) ); 208 SLOT( textChanged( const QString& ) ) );
205 layout->addWidget( label, 2, 0 ); 209 layout->addWidget( button, 2, 0 );
206 layout->addWidget( mOrgEdit, 2, 1 ); 210 layout->addWidget( mOrgEdit, 2, 1 );
207 211
208 // File as (formatted name) 212 // File as (formatted name)
209 label = new QLabel( i18n( "Formatted name:" ), tab1 ); 213 label = new QLabel( i18n( "Formatted name:" ), tab1 );
210 mFormattedNameLabel = new KSqueezedTextLabel( tab1 ); 214 mFormattedNameLabel = new KSqueezedTextLabel( tab1 );
211 layout->addWidget( label, 3, 0 ); 215 layout->addWidget( label, 3, 0 );
212 layout->addWidget( mFormattedNameLabel, 3, 1 ); 216 layout->addWidget( mFormattedNameLabel, 3, 1 );
213 /* LR 217 /* LR
214 // Left hand separator. This separator doesn't go all the way 218 // Left hand separator. This separator doesn't go all the way
215 // across so the dialog still flows from top to bottom 219 // across so the dialog still flows from top to bottom
216 bar = new KSeparator( KSeparator::HLine, tab1 ); 220 bar = new KSeparator( KSeparator::HLine, tab1 );
217 layout->addMultiCellWidget( bar, 4, 4, 0, 2 ); 221 layout->addMultiCellWidget( bar, 4, 4, 0, 2 );
218 */ 222 */
219 ////////////////////////////////////// 223 //////////////////////////////////////
220 224
221 /* LR 225 /* LR
222 // Phone numbers (upper right) 226 // Phone numbers (upper right)
223 label = new QLabel( tab1 ); 227 label = new QLabel( tab1 );
224//US loadIcon call is ambiguous. Add one more parameter 228//US loadIcon call is ambiguous. Add one more parameter
225//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop ) ); 229//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop ) );
226 label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop, 0 ) ); 230 label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop, 0 ) );
227//US layout->addMultiCellWidget( label, 0, 1, 3, 3 ); 231//US layout->addMultiCellWidget( label, 0, 1, 3, 3 );
228 layout->addMultiCellWidget( label, 5, 6, 0, 0 ); 232 layout->addMultiCellWidget( label, 5, 6, 0, 0 );
229 */ 233 */
230 mPhoneEditWidget = new PhoneEditWidget( tab1 ); 234 mPhoneEditWidget = new PhoneEditWidget( tab1 );
231 connect( mPhoneEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) ); 235 connect( mPhoneEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) );
232//US layout->addMultiCellWidget( mPhoneEditWidget, 0, 3, 4, 6 ); 236//US layout->addMultiCellWidget( mPhoneEditWidget, 0, 3, 4, 6 );
233 int iii; 237 int iii;
234#ifndef DESKTOP_VERSION 238#ifndef DESKTOP_VERSION
235 iii = 7; 239 iii = 7;
236#else 240#else
237 iii = 8; 241 iii = 8;
238#endif 242#endif
239 layout->addMultiCellWidget( mPhoneEditWidget, 4, iii, 0, 1 ); 243 layout->addMultiCellWidget( mPhoneEditWidget, 4, iii, 0, 1 );
240 ++iii; 244 ++iii;
241 /* LR 245 /* LR
242 bar = new KSeparator( KSeparator::HLine, tab1 ); 246 bar = new KSeparator( KSeparator::HLine, tab1 );
243//US layout->addMultiCellWidget( bar, 4, 4, 3, 6 ); 247//US layout->addMultiCellWidget( bar, 4, 4, 3, 6 );
244 layout->addMultiCellWidget( bar, 9, 9, 0, 2 ); 248 layout->addMultiCellWidget( bar, 9, 9, 0, 2 );
245 */ 249 */
246/*US 250/*US
247 ////////////////////////////////////// 251 //////////////////////////////////////
248 // Addresses (lower left) 252 // Addresses (lower left)
249 label = new QLabel( tab1 ); 253 label = new QLabel( tab1 );
250//US loadIcon call is ambiguous. Add one more parameter 254//US loadIcon call is ambiguous. Add one more parameter
251//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop ) ); 255//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop ) );
252 label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop, 0 ) ); 256 label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop, 0 ) );
253 layout->addMultiCellWidget( label, 5, 6, 0, 0 ); 257 layout->addMultiCellWidget( label, 5, 6, 0, 0 );
254 258
255 mAddressEditWidget = new AddressEditWidget( tab1 ); 259 mAddressEditWidget = new AddressEditWidget( tab1 );
256 connect( mAddressEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) ); 260 connect( mAddressEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) );
257 layout->addMultiCellWidget( mAddressEditWidget, 5, 9, 1, 2 ); 261 layout->addMultiCellWidget( mAddressEditWidget, 5, 9, 1, 2 );
258 262
259 ////////////////////////////////////// 263 //////////////////////////////////////
260 // Email / Web (lower right) 264 // Email / Web (lower right)
261 label = new QLabel( tab1 ); 265 label = new QLabel( tab1 );
262//US loadIcon call is ambiguous. Add one more parameter 266//US loadIcon call is ambiguous. Add one more parameter
263//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop) ); 267//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop) );
264 label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop, 0) ); 268 label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop, 0) );
265 layout->addMultiCellWidget( label, 5, 6, 3, 3 ); 269 layout->addMultiCellWidget( label, 5, 6, 3, 3 );
266 270
267 mEmailWidget = new EmailEditWidget( tab1 ); 271 mEmailWidget = new EmailEditWidget( tab1 );
268 connect( mEmailWidget, SIGNAL( modified() ), SLOT( emitModified() ) ); 272 connect( mEmailWidget, SIGNAL( modified() ), SLOT( emitModified() ) );
269 layout->addMultiCellWidget( mEmailWidget, 5, 6, 4, 6 ); 273 layout->addMultiCellWidget( mEmailWidget, 5, 6, 4, 6 );
270 274
271 // add the separator 275 // add the separator
272 bar = new KSeparator( KSeparator::HLine, tab1 ); 276 bar = new KSeparator( KSeparator::HLine, tab1 );
273 layout->addMultiCellWidget( bar, 7, 7, 3, 6 ); 277 layout->addMultiCellWidget( bar, 7, 7, 3, 6 );
274 278
275 label = new QLabel( tab1 ); 279 label = new QLabel( tab1 );
276//US loadIcon call is ambiguous. Add one more parameter 280//US loadIcon call is ambiguous. Add one more parameter
277//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop) ); 281//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop) );
278 label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop, 0) ); 282 label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop, 0) );
279 layout->addMultiCellWidget( label, 8, 9, 3, 3 ); 283 layout->addMultiCellWidget( label, 8, 9, 3, 3 );
280 284
281 label = new QLabel( i18n( "URL:" ), tab1 ); 285 label = new QLabel( i18n( "URL:" ), tab1 );
282 mURLEdit = new KLineEdit( tab1 ); 286 mURLEdit = new KLineEdit( tab1 );
283 connect( mURLEdit, SIGNAL( textChanged( const QString& ) ), 287 connect( mURLEdit, SIGNAL( textChanged( const QString& ) ),
284 SLOT( textChanged( const QString& ) ) ); 288 SLOT( textChanged( const QString& ) ) );
285 label->setBuddy( mURLEdit ); 289 label->setBuddy( mURLEdit );
286 layout->addWidget( label, 8, 4 ); 290 layout->addWidget( label, 8, 4 );
287 layout->addMultiCellWidget( mURLEdit, 8, 8, 5, 6 ); 291 layout->addMultiCellWidget( mURLEdit, 8, 8, 5, 6 );
288 292
289 label = new QLabel( i18n( "&IM address:" ), tab1 ); 293 label = new QLabel( i18n( "&IM address:" ), tab1 );
290 mIMAddressEdit = new KLineEdit( tab1 ); 294 mIMAddressEdit = new KLineEdit( tab1 );
291 connect( mIMAddressEdit, SIGNAL( textChanged( const QString& ) ), 295 connect( mIMAddressEdit, SIGNAL( textChanged( const QString& ) ),
292 SLOT( textChanged( const QString& ) ) ); 296 SLOT( textChanged( const QString& ) ) );
293 label->setBuddy( mIMAddressEdit ); 297 label->setBuddy( mIMAddressEdit );
294 layout->addWidget( label, 9, 4 ); 298 layout->addWidget( label, 9, 4 );
295 layout->addMultiCellWidget( mIMAddressEdit, 9, 9, 5, 6 ); 299 layout->addMultiCellWidget( mIMAddressEdit, 9, 9, 5, 6 );
296 300
297 layout->addColSpacing( 6, 50 ); 301 layout->addColSpacing( 6, 50 );
298 302
299 bar = new KSeparator( KSeparator::HLine, tab1 ); 303 bar = new KSeparator( KSeparator::HLine, tab1 );
300 layout->addMultiCellWidget( bar, 10, 10, 0, 6 ); 304 layout->addMultiCellWidget( bar, 10, 10, 0, 6 );
301*/ 305*/
302 /////////////////////////////////////// 306 ///////////////////////////////////////
303 QHBox *categoryBox = new QHBox( tab1 ,"cato"); 307 QHBox *categoryBox = new QHBox( tab1 ,"cato");
304 categoryBox->setSpacing( KDialogBase::spacingHint() ); 308 categoryBox->setSpacing( KDialogBase::spacingHint() );
305 categoryBox->setMargin( KDialogBase::marginHintSmall() ); 309 categoryBox->setMargin( KDialogBase::marginHintSmall() );
306 310
307 // Categories 311 // Categories
308 button = new QPushButton( i18n( "Categories" ), categoryBox ); 312 button = new QPushButton( i18n( "Categories" ), categoryBox );
309 connect( button, SIGNAL( clicked() ), SLOT( categoryButtonClicked() ) ); 313 connect( button, SIGNAL( clicked() ), SLOT( categoryButtonClicked() ) );
310 314
311 mCategoryEdit = new KLineEdit( categoryBox ); 315 mCategoryEdit = new KLineEdit( categoryBox );
312 mCategoryEdit->setReadOnly( true ); 316 mCategoryEdit->setReadOnly( true );
313 connect( mCategoryEdit, SIGNAL( textChanged( const QString& ) ), 317 connect( mCategoryEdit, SIGNAL( textChanged( const QString& ) ),
314 SLOT( textChanged( const QString& ) ) ); 318 SLOT( textChanged( const QString& ) ) );
315 319
316 mSecrecyWidget = new SecrecyWidget( categoryBox ); 320 mSecrecyWidget = new SecrecyWidget( categoryBox );
317 connect( mSecrecyWidget, SIGNAL( changed() ), SLOT( emitModified() ) ); 321 connect( mSecrecyWidget, SIGNAL( changed() ), SLOT( emitModified() ) );
318 322
319//US layout->addMultiCellWidget( categoryBox, 11, 11, 0, 6 ); 323//US layout->addMultiCellWidget( categoryBox, 11, 11, 0, 6 );
320 layout->addMultiCellWidget( categoryBox, iii, iii, 0, 1 ); 324 layout->addMultiCellWidget( categoryBox, iii, iii, 0, 1 );
321 325
322 // Build the layout and add to the tab widget 326 // Build the layout and add to the tab widget
323 layout->activate(); // required 327 layout->activate(); // required
324 328
325 mTabWidget->addTab( tab1, i18n( "&General" ) ); 329 mTabWidget->addTab( tab1, i18n( "&General" ) );
326} 330}
327 331
332void AddresseeEditorWidget::setRole2FN()
333{
334 if ( mRoleEdit->text().isEmpty() ) return;
335 mFormattedNameType = NameEditDialog::CustomName;
336 mAddressee.setFormattedName( mRoleEdit->text() );
337 mFormattedNameLabel->setText( mRoleEdit->text() );
338 mDirty = true;
339}
340void AddresseeEditorWidget::setCompany2FN()
341{
342 if ( mOrgEdit->text().isEmpty() ) return;
343 mFormattedNameType = NameEditDialog::CustomName;
344 mAddressee.setFormattedName( mOrgEdit->text() );
345 mFormattedNameLabel->setText( mOrgEdit->text() );
346 mDirty = true;
347}
328 348
329void AddresseeEditorWidget::setupTab1_1() 349void AddresseeEditorWidget::setupTab1_1()
330{ 350{
331 // This is the Address tab 351 // This is the Address tab
332 QWidget *tab1_1 = new QWidget( mTabWidget ); 352 QWidget *tab1_1 = new QWidget( mTabWidget );
333 353
334//US QGridLayout *layout = new QGridLayout( tab1_1, 11, 7 ); 354//US QGridLayout *layout = new QGridLayout( tab1_1, 11, 7 );
335 QGridLayout *layout = new QGridLayout( tab1_1, 7, 2 ); 355 QGridLayout *layout = new QGridLayout( tab1_1, 7, 2 );
336 layout->setMargin( KDialogBase::marginHintSmall() ); 356 layout->setMargin( KDialogBase::marginHintSmall() );
337 layout->setSpacing( KDialogBase::spacingHintSmall() ); 357 layout->setSpacing( KDialogBase::spacingHintSmall() );
338 358
339 QLabel *label; 359 QLabel *label;
340 KSeparator* bar; 360 KSeparator* bar;
341 QPushButton *button; 361 QPushButton *button;
342 362
343/*US 363/*US
344 ////////////////////////////////// 364 //////////////////////////////////
345 // Upper left group (person info) 365 // Upper left group (person info)
346 366
347 // Person icon 367 // Person icon
348 label = new QLabel( tab1 ); 368 label = new QLabel( tab1 );
349//US ambiguous call. Add one more parameter 369//US ambiguous call. Add one more parameter
350//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop ) ); 370//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop ) );
351 label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop, 0 ) ); 371 label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop, 0 ) );
352 layout->addMultiCellWidget( label, 0, 1, 0, 0 ); 372 layout->addMultiCellWidget( label, 0, 1, 0, 0 );
353 373
354 // First name 374 // First name
355 button = new QPushButton( i18n( "Name..." ), tab1 ); 375 button = new QPushButton( i18n( "Name..." ), tab1 );
356 QToolTip::add( button, i18n( "Edit the contact's name" ) ); 376 QToolTip::add( button, i18n( "Edit the contact's name" ) );
357 mNameEdit = new KLineEdit( tab1, "mNameEdit" ); 377 mNameEdit = new KLineEdit( tab1, "mNameEdit" );
358 connect( mNameEdit, SIGNAL( textChanged( const QString& ) ), 378 connect( mNameEdit, SIGNAL( textChanged( const QString& ) ),
359 SLOT( nameTextChanged( const QString& ) ) ); 379 SLOT( nameTextChanged( const QString& ) ) );
360 connect( button, SIGNAL( clicked() ), SLOT( nameButtonClicked() ) ); 380 connect( button, SIGNAL( clicked() ), SLOT( nameButtonClicked() ) );
361 381
362#ifndef KAB_EMBEDDED 382#ifndef KAB_EMBEDDED
363 mNameLabel = new KSqueezedTextLabel( tab1 ); 383 mNameLabel = new KSqueezedTextLabel( tab1 );
364 mNameLabel->hide(); 384 mNameLabel->hide();
365#else //KAB_EMBEDDED 385#else //KAB_EMBEDDED
366qDebug("AddresseeEditorWidget::setupTab1 has to be changed"); 386qDebug("AddresseeEditorWidget::setupTab1 has to be changed");
367#endif //KAB_EMBEDDED 387#endif //KAB_EMBEDDED
368 388
369 layout->addWidget( button, 0, 1 ); 389 layout->addWidget( button, 0, 1 );
370 layout->addWidget( mNameEdit, 0, 2 ); 390 layout->addWidget( mNameEdit, 0, 2 );
371 391
372#ifndef KAB_EMBEDDED 392#ifndef KAB_EMBEDDED
373 layout->addWidget( mNameLabel, 0, 2 ); 393 layout->addWidget( mNameLabel, 0, 2 );
374#else //KAB_EMBEDDED 394#else //KAB_EMBEDDED
375qDebug("AddresseeEditorWidget::setupTab1 has to be changed"); 395qDebug("AddresseeEditorWidget::setupTab1 has to be changed");
376#endif //KAB_EMBEDDED 396#endif //KAB_EMBEDDED
377 397
378 label = new QLabel( i18n( "Role:" ), tab1 ); 398 label = new QLabel( i18n( "Role:" ), tab1 );
379 mRoleEdit = new KLineEdit( tab1 ); 399 mRoleEdit = new KLineEdit( tab1 );
380 connect( mRoleEdit, SIGNAL( textChanged( const QString& ) ), 400 connect( mRoleEdit, SIGNAL( textChanged( const QString& ) ),
381 SLOT( textChanged( const QString& ) ) ); 401 SLOT( textChanged( const QString& ) ) );
382 label->setBuddy( mRoleEdit ); 402 label->setBuddy( mRoleEdit );
383 layout->addWidget( label, 1, 1 ); 403 layout->addWidget( label, 1, 1 );
384 layout->addWidget( mRoleEdit, 1, 2 ); 404 layout->addWidget( mRoleEdit, 1, 2 );
385 405
386 // Organization 406 // Organization
387 label = new QLabel( i18n( "Organization:" ), tab1 ); 407 label = new QLabel( i18n( "Organization:" ), tab1 );
388 mOrgEdit = new KLineEdit( tab1 ); 408 mOrgEdit = new KLineEdit( tab1 );
389 label->setBuddy( mOrgEdit ); 409 label->setBuddy( mOrgEdit );
390 connect( mOrgEdit, SIGNAL( textChanged( const QString& ) ), 410 connect( mOrgEdit, SIGNAL( textChanged( const QString& ) ),
391 SLOT( textChanged( const QString& ) ) ); 411 SLOT( textChanged( const QString& ) ) );
392 layout->addWidget( label, 2, 1 ); 412 layout->addWidget( label, 2, 1 );
393 layout->addWidget( mOrgEdit, 2, 2 ); 413 layout->addWidget( mOrgEdit, 2, 2 );
394 414
395 // File as (formatted name) 415 // File as (formatted name)
396 label = new QLabel( i18n( "Formatted name:" ), tab1 ); 416 label = new QLabel( i18n( "Formatted name:" ), tab1 );
397#ifndef KAB_EMBEDDED 417#ifndef KAB_EMBEDDED
398 mFormattedNameLabel = new KSqueezedTextLabel( tab1 ); 418 mFormattedNameLabel = new KSqueezedTextLabel( tab1 );
399#else //KAB_EMBEDDED 419#else //KAB_EMBEDDED
400qDebug("AddresseeEditorWidget::setupTab1 has to be changed"); 420qDebug("AddresseeEditorWidget::setupTab1 has to be changed");
401#endif //KAB_EMBEDDED 421#endif //KAB_EMBEDDED
402 layout->addWidget( label, 3, 1 ); 422 layout->addWidget( label, 3, 1 );
403#ifndef KAB_EMBEDDED 423#ifndef KAB_EMBEDDED
404 layout->addWidget( mFormattedNameLabel, 3, 2 ); 424 layout->addWidget( mFormattedNameLabel, 3, 2 );
405#else //KAB_EMBEDDED 425#else //KAB_EMBEDDED
406qDebug("AddresseeEditorWidget::setupTab1 has to be changed"); 426qDebug("AddresseeEditorWidget::setupTab1 has to be changed");
407#endif //KAB_EMBEDDED 427#endif //KAB_EMBEDDED
408 428
409 // Left hand separator. This separator doesn't go all the way 429 // Left hand separator. This separator doesn't go all the way
410 // across so the dialog still flows from top to bottom 430 // across so the dialog still flows from top to bottom
411 bar = new KSeparator( KSeparator::HLine, tab1 ); 431 bar = new KSeparator( KSeparator::HLine, tab1 );
412 layout->addMultiCellWidget( bar, 4, 4, 0, 2 ); 432 layout->addMultiCellWidget( bar, 4, 4, 0, 2 );
413 433
414 ////////////////////////////////////// 434 //////////////////////////////////////
415 // Phone numbers (upper right) 435 // Phone numbers (upper right)
416 label = new QLabel( tab1 ); 436 label = new QLabel( tab1 );
417//US loadIcon call is ambiguous. Add one more parameter 437//US loadIcon call is ambiguous. Add one more parameter
418//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop ) ); 438//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop ) );
419 label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop, 0 ) ); 439 label->setPixmap( KGlobal::iconLoader()->loadIcon( "kaddressbook", KIcon::Desktop, 0 ) );
420 layout->addMultiCellWidget( label, 0, 1, 3, 3 ); 440 layout->addMultiCellWidget( label, 0, 1, 3, 3 );
421 441
422 mPhoneEditWidget = new PhoneEditWidget( tab1 ); 442 mPhoneEditWidget = new PhoneEditWidget( tab1 );
423 connect( mPhoneEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) ); 443 connect( mPhoneEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) );
424 layout->addMultiCellWidget( mPhoneEditWidget, 0, 3, 4, 6 ); 444 layout->addMultiCellWidget( mPhoneEditWidget, 0, 3, 4, 6 );
425 445
426 bar = new KSeparator( KSeparator::HLine, tab1 ); 446 bar = new KSeparator( KSeparator::HLine, tab1 );
427 layout->addMultiCellWidget( bar, 4, 4, 3, 6 ); 447 layout->addMultiCellWidget( bar, 4, 4, 3, 6 );
428*/ 448*/
429 ////////////////////////////////////// 449 //////////////////////////////////////
430 // Addresses (lower left) 450 // Addresses (lower left)
431 /* LR 451 /* LR
432 label = new QLabel( tab1_1 ); 452 label = new QLabel( tab1_1 );
433//US loadIcon call is ambiguous. Add one more parameter 453//US loadIcon call is ambiguous. Add one more parameter
434//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop ) ); 454//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop ) );
435 label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop, 0 ) ); 455 label->setPixmap( KGlobal::iconLoader()->loadIcon( "gohome", KIcon::Desktop, 0 ) );
436//US layout->addMultiCellWidget( label, 5, 6, 0, 0 ); 456//US layout->addMultiCellWidget( label, 5, 6, 0, 0 );
437 layout->addMultiCellWidget( label, 0, 1, 0, 0 ); 457 layout->addMultiCellWidget( label, 0, 1, 0, 0 );
438 */ 458 */
439 459
440 mAddressEditWidget = new AddressEditWidget( tab1_1 ); 460 mAddressEditWidget = new AddressEditWidget( tab1_1 );
441 connect( mAddressEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) ); 461 connect( mAddressEditWidget, SIGNAL( modified() ), SLOT( emitModified() ) );
442//US layout->addMultiCellWidget( mAddressEditWidget, 5, 9, 1, 2 ); 462//US layout->addMultiCellWidget( mAddressEditWidget, 5, 9, 1, 2 );
443 layout->addMultiCellWidget( mAddressEditWidget, 0, 4, 0, 1 ); 463 layout->addMultiCellWidget( mAddressEditWidget, 0, 4, 0, 1 );
444 464
445//US 465//US
446/* LR 466/* LR
447 bar = new KSeparator( KSeparator::HLine, tab1_1 ); 467 bar = new KSeparator( KSeparator::HLine, tab1_1 );
448 layout->addMultiCellWidget( bar, 5, 5, 0, 3 ); 468 layout->addMultiCellWidget( bar, 5, 5, 0, 3 );
449*/ 469*/
450 470
451 ////////////////////////////////////// 471 //////////////////////////////////////
452 // Email / Web (lower right) 472 // Email / Web (lower right)
453 /* LR 473 /* LR
454 label = new QLabel( tab1_1 ); 474 label = new QLabel( tab1_1 );
455//US loadIcon call is ambiguous. Add one more parameter 475//US loadIcon call is ambiguous. Add one more parameter
456//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop) ); 476//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop) );
457 label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop, 0) ); 477 label->setPixmap( KGlobal::iconLoader()->loadIcon( "email", KIcon::Desktop, 0) );
458//US layout->addMultiCellWidget( label, 5, 6, 3, 3 ); 478//US layout->addMultiCellWidget( label, 5, 6, 3, 3 );
459 layout->addMultiCellWidget( label, 6, 7, 0, 0 ); 479 layout->addMultiCellWidget( label, 6, 7, 0, 0 );
460 */ 480 */
461 mEmailWidget = new EmailEditWidget( tab1_1 ); 481 mEmailWidget = new EmailEditWidget( tab1_1 );
462 connect( mEmailWidget, SIGNAL( modified() ), SLOT( emitModified() ) ); 482 connect( mEmailWidget, SIGNAL( modified() ), SLOT( emitModified() ) );
463//US layout->addMultiCellWidget( mEmailWidget, 5, 6, 4, 6 ); 483//US layout->addMultiCellWidget( mEmailWidget, 5, 6, 4, 6 );
464 layout->addMultiCellWidget( mEmailWidget, 5, 6, 0, 1 ); 484 layout->addMultiCellWidget( mEmailWidget, 5, 6, 0, 1 );
465 485
466 /* LR 486 /* LR
467 // add the separator 487 // add the separator
468 bar = new KSeparator( KSeparator::HLine, tab1_1 ); 488 bar = new KSeparator( KSeparator::HLine, tab1_1 );
469//US layout->addMultiCellWidget( bar, 7, 7, 3, 6 ); 489//US layout->addMultiCellWidget( bar, 7, 7, 3, 6 );
470 layout->addMultiCellWidget( bar, 8, 8, 0, 3 ); 490 layout->addMultiCellWidget( bar, 8, 8, 0, 3 );
471 491
472 label = new QLabel( tab1_1 ); 492 label = new QLabel( tab1_1 );
473//US loadIcon call is ambiguous. Add one more parameter 493//US loadIcon call is ambiguous. Add one more parameter
474//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop) ); 494//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop) );
475 label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop, 0) ); 495 label->setPixmap( KGlobal::iconLoader()->loadIcon( "homepage", KIcon::Desktop, 0) );
476//US layout->addMultiCellWidget( label, 8, 9, 3, 3 ); 496//US layout->addMultiCellWidget( label, 8, 9, 3, 3 );
477 layout->addMultiCellWidget( label, 9, 10, 0, 0 ); 497 layout->addMultiCellWidget( label, 9, 10, 0, 0 );
478 */ 498 */
479 label = new QLabel( i18n( "URL:" ), tab1_1 ); 499 label = new QLabel( i18n( "URL:" ), tab1_1 );
480 mURLEdit = new KLineEdit( tab1_1 ); 500 mURLEdit = new KLineEdit( tab1_1 );
481 connect( mURLEdit, SIGNAL( textChanged( const QString& ) ), 501 connect( mURLEdit, SIGNAL( textChanged( const QString& ) ),
482 SLOT( textChanged( const QString& ) ) ); 502 SLOT( textChanged( const QString& ) ) );
483 label->setBuddy( mURLEdit ); 503 label->setBuddy( mURLEdit );
484//US layout->addWidget( label, 8, 4 ); 504//US layout->addWidget( label, 8, 4 );
485 layout->addWidget( label, 7,0 ); 505 layout->addWidget( label, 7,0 );
486//US layout->addMultiCellWidget( mURLEdit, 8, 8, 5, 6 ); 506//US layout->addMultiCellWidget( mURLEdit, 8, 8, 5, 6 );
487 layout->addWidget( mURLEdit, 7, 1); 507 layout->addWidget( mURLEdit, 7, 1);
488 508
489 label = new QLabel( i18n( "&IM address:" ), tab1_1 ); 509 label = new QLabel( i18n( "&IM address:" ), tab1_1 );
490 mIMAddressEdit = new KLineEdit( tab1_1 ); 510 mIMAddressEdit = new KLineEdit( tab1_1 );
491 connect( mIMAddressEdit, SIGNAL( textChanged( const QString& ) ), 511 connect( mIMAddressEdit, SIGNAL( textChanged( const QString& ) ),
492 SLOT( textChanged( const QString& ) ) ); 512 SLOT( textChanged( const QString& ) ) );
493 label->setBuddy( mIMAddressEdit ); 513 label->setBuddy( mIMAddressEdit );
494//US layout->addWidget( label, 9, 4 ); 514//US layout->addWidget( label, 9, 4 );
495 layout->addWidget( label, 8, 0 ); 515 layout->addWidget( label, 8, 0 );
496//US layout->addMultiCellWidget( mIMAddressEdit, 9, 9, 5, 6 ); 516//US layout->addMultiCellWidget( mIMAddressEdit, 9, 9, 5, 6 );
497 layout->addWidget( mIMAddressEdit, 8,1 ); 517 layout->addWidget( mIMAddressEdit, 8,1 );
498 518
499//US layout->addColSpacing( 6, 50 ); 519//US layout->addColSpacing( 6, 50 );
500 520
501//US bar = new KSeparator( KSeparator::HLine, tab1_1 ); 521//US bar = new KSeparator( KSeparator::HLine, tab1_1 );
502//US layout->addMultiCellWidget( bar, 10, 10, 0, 6 ); 522//US layout->addMultiCellWidget( bar, 10, 10, 0, 6 );
503 523
504/*US 524/*US
505 /////////////////////////////////////// 525 ///////////////////////////////////////
506 QHBox *categoryBox = new QHBox( tab1 ); 526 QHBox *categoryBox = new QHBox( tab1 );
507 categoryBox->setSpacing( KDialogBase::spacingHintSmall() ); 527 categoryBox->setSpacing( KDialogBase::spacingHintSmall() );
508 528
509 // Categories 529 // Categories
510 button = new QPushButton( i18n( "Categories" ), categoryBox ); 530 button = new QPushButton( i18n( "Categories" ), categoryBox );
511 connect( button, SIGNAL( clicked() ), SLOT( categoryButtonClicked() ) ); 531 connect( button, SIGNAL( clicked() ), SLOT( categoryButtonClicked() ) );
512 532
513 mCategoryEdit = new KLineEdit( categoryBox ); 533 mCategoryEdit = new KLineEdit( categoryBox );
514 mCategoryEdit->setReadOnly( true ); 534 mCategoryEdit->setReadOnly( true );
515 connect( mCategoryEdit, SIGNAL( textChanged( const QString& ) ), 535 connect( mCategoryEdit, SIGNAL( textChanged( const QString& ) ),
516 SLOT( textChanged( const QString& ) ) ); 536 SLOT( textChanged( const QString& ) ) );
517 537
518 mSecrecyWidget = new SecrecyWidget( categoryBox ); 538 mSecrecyWidget = new SecrecyWidget( categoryBox );
519 connect( mSecrecyWidget, SIGNAL( changed() ), SLOT( emitModified() ) ); 539 connect( mSecrecyWidget, SIGNAL( changed() ), SLOT( emitModified() ) );
520 540
521 layout->addMultiCellWidget( categoryBox, 11, 11, 0, 6 ); 541 layout->addMultiCellWidget( categoryBox, 11, 11, 0, 6 );
522*/ 542*/
523 // Build the layout and add to the tab widget 543 // Build the layout and add to the tab widget
524 layout->activate(); // required 544 layout->activate(); // required
525 545
526 mTabWidget->addTab( tab1_1, i18n( "&Address" ) ); 546 mTabWidget->addTab( tab1_1, i18n( "&Address" ) );
527} 547}
528 548
529 549
530 550
531void AddresseeEditorWidget::setupTab2() 551void AddresseeEditorWidget::setupTab2()
532{ 552{
533 // This is the Details tab 553 // This is the Details tab
534 QWidget *tab2 = new QWidget( mTabWidget ); 554 QWidget *tab2 = new QWidget( mTabWidget );
535 555
536 QGridLayout *layout = new QGridLayout( tab2, 8, 3 ); 556 QGridLayout *layout = new QGridLayout( tab2, 8, 3 );
537 layout->setMargin( KDialogBase::marginHintSmall() ); 557 layout->setMargin( KDialogBase::marginHintSmall() );
538 layout->setSpacing( KDialogBase::spacingHintSmall() ); 558 layout->setSpacing( KDialogBase::spacingHintSmall() );
539 559
540 QLabel *label; 560 QLabel *label;
541 KSeparator* bar; 561 KSeparator* bar;
542 562
543 /////////////////////// 563 ///////////////////////
544 // Office info 564 // Office info
545 565
546 // Department 566 // Department
547 label = new QLabel( tab2 ); 567 label = new QLabel( tab2 );
548//US loadIcon call is ambiguous. Add one more parameter 568//US loadIcon call is ambiguous. Add one more parameter
549//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "folder", KIcon::Desktop ) ); 569//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "folder", KIcon::Desktop ) );
550 label->setPixmap( KGlobal::iconLoader()->loadIcon( "folder", KIcon::Desktop, 0 ) ); 570 label->setPixmap( KGlobal::iconLoader()->loadIcon( "folder", KIcon::Desktop, 0 ) );
551 layout->addMultiCellWidget( label, 0, 1, 0, 0 ); 571 layout->addMultiCellWidget( label, 0, 1, 0, 0 );
552 572
553 label = new QLabel( i18n( "Department:" ), tab2 ); 573 label = new QLabel( i18n( "Department:" ), tab2 );
554 layout->addWidget( label, 0, 1 ); 574 layout->addWidget( label, 0, 1 );
555 mDepartmentEdit = new KLineEdit( tab2 ); 575 mDepartmentEdit = new KLineEdit( tab2 );
556 connect( mDepartmentEdit, SIGNAL( textChanged( const QString& ) ), 576 connect( mDepartmentEdit, SIGNAL( textChanged( const QString& ) ),
557 SLOT( textChanged( const QString& ) ) ); 577 SLOT( textChanged( const QString& ) ) );
558 label->setBuddy( mDepartmentEdit ); 578 label->setBuddy( mDepartmentEdit );
559 layout->addWidget( mDepartmentEdit, 0, 2 ); 579 layout->addWidget( mDepartmentEdit, 0, 2 );
560 580
561 label = new QLabel( i18n( "Office:" ), tab2 ); 581 label = new QLabel( i18n( "Office:" ), tab2 );
562 layout->addWidget( label, 1, 1 ); 582 layout->addWidget( label, 1, 1 );
563 mOfficeEdit = new KLineEdit( tab2 ); 583 mOfficeEdit = new KLineEdit( tab2 );
564 connect( mOfficeEdit, SIGNAL( textChanged( const QString& ) ), 584 connect( mOfficeEdit, SIGNAL( textChanged( const QString& ) ),
565 SLOT( textChanged( const QString& ) ) ); 585 SLOT( textChanged( const QString& ) ) );
566 label->setBuddy( mOfficeEdit ); 586 label->setBuddy( mOfficeEdit );
567 layout->addWidget( mOfficeEdit, 1, 2 ); 587 layout->addWidget( mOfficeEdit, 1, 2 );
568 588
569 label = new QLabel( i18n( "Profession:" ), tab2 ); 589 label = new QLabel( i18n( "Profession:" ), tab2 );
570 layout->addWidget( label, 2, 1 ); 590 layout->addWidget( label, 2, 1 );
571 mProfessionEdit = new KLineEdit( tab2 ); 591 mProfessionEdit = new KLineEdit( tab2 );
572 connect( mProfessionEdit, SIGNAL( textChanged( const QString& ) ), 592 connect( mProfessionEdit, SIGNAL( textChanged( const QString& ) ),
573 SLOT( textChanged( const QString& ) ) ); 593 SLOT( textChanged( const QString& ) ) );
574 label->setBuddy( mProfessionEdit ); 594 label->setBuddy( mProfessionEdit );
575 layout->addWidget( mProfessionEdit, 2, 2 ); 595 layout->addWidget( mProfessionEdit, 2, 2 );
576 596
577 label = new QLabel( i18n( "Manager\'s name:" ), tab2 ); 597 label = new QLabel( i18n( "Manager\'s name:" ), tab2 );
578//US layout->addWidget( label, 0, 3 ); 598//US layout->addWidget( label, 0, 3 );
579 layout->addWidget( label, 3, 1 ); 599 layout->addWidget( label, 3, 1 );
580 mManagerEdit = new KLineEdit( tab2 ); 600 mManagerEdit = new KLineEdit( tab2 );
581 connect( mManagerEdit, SIGNAL( textChanged( const QString& ) ), 601 connect( mManagerEdit, SIGNAL( textChanged( const QString& ) ),
582 SLOT( textChanged( const QString& ) ) ); 602 SLOT( textChanged( const QString& ) ) );
583 label->setBuddy( mManagerEdit ); 603 label->setBuddy( mManagerEdit );
584//US layout->addMultiCellWidget( mManagerEdit, 0, 0, 4, 5 ); 604//US layout->addMultiCellWidget( mManagerEdit, 0, 0, 4, 5 );
585 layout->addWidget( mManagerEdit, 3, 2 ); 605 layout->addWidget( mManagerEdit, 3, 2 );
586 606
587 label = new QLabel( i18n( "Assistant's name:" ), tab2 ); 607 label = new QLabel( i18n( "Assistant's name:" ), tab2 );
588//US layout->addWidget( label, 1, 3 ); 608//US layout->addWidget( label, 1, 3 );
589 layout->addWidget( label, 4, 1 ); 609 layout->addWidget( label, 4, 1 );
590 mAssistantEdit = new KLineEdit( tab2 ); 610 mAssistantEdit = new KLineEdit( tab2 );
591 connect( mAssistantEdit, SIGNAL( textChanged( const QString& ) ), 611 connect( mAssistantEdit, SIGNAL( textChanged( const QString& ) ),
592 SLOT( textChanged( const QString& ) ) ); 612 SLOT( textChanged( const QString& ) ) );
593 label->setBuddy( mAssistantEdit ); 613 label->setBuddy( mAssistantEdit );
594//US layout->addMultiCellWidget( mAssistantEdit, 1, 1, 4, 5 ); 614//US layout->addMultiCellWidget( mAssistantEdit, 1, 1, 4, 5 );
595 layout->addWidget( mAssistantEdit, 4, 2 ); 615 layout->addWidget( mAssistantEdit, 4, 2 );
596 616
597 bar = new KSeparator( KSeparator::HLine, tab2 ); 617 bar = new KSeparator( KSeparator::HLine, tab2 );
598//US layout->addMultiCellWidget( bar, 3, 3, 0, 5 ); 618//US layout->addMultiCellWidget( bar, 3, 3, 0, 5 );
599 layout->addMultiCellWidget( bar, 5, 5, 0, 2 ); 619 layout->addMultiCellWidget( bar, 5, 5, 0, 2 );
600 620
601 ///////////////////////////////////////////////// 621 /////////////////////////////////////////////////
602 // Personal info 622 // Personal info
603 623
604 //label = new QLabel( tab2 ); 624 //label = new QLabel( tab2 );
605//US loadIcon call is ambiguous. Add one more parameter 625//US loadIcon call is ambiguous. Add one more parameter
606//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop ) ); 626//US label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop ) );
607 //label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop, 0 ) ); 627 //label->setPixmap( KGlobal::iconLoader()->loadIcon( "personal", KIcon::Desktop, 0 ) );
608//US layout->addMultiCellWidget( label, 4, 5, 0, 0 ); 628//US layout->addMultiCellWidget( label, 4, 5, 0, 0 );
609 //layout->addMultiCellWidget( label, 6, 7, 0, 0 ); 629 //layout->addMultiCellWidget( label, 6, 7, 0, 0 );
610 630
611 631
612 int iii = 6; 632 int iii = 6;
613 633
614 if ( QApplication::desktop()->width() == 640 ) { 634 if ( QApplication::desktop()->width() == 640 ) {
615 QHBox * nbox = new QHBox ( tab2 ); 635 QHBox * nbox = new QHBox ( tab2 );
616 label = new QLabel( i18n( "Nick name:" )+" ", nbox ); 636 label = new QLabel( i18n( "Nick name:" )+" ", nbox );
617 mNicknameEdit = new KLineEdit( nbox ); 637 mNicknameEdit = new KLineEdit( nbox );
618 connect( mNicknameEdit, SIGNAL( textChanged( const QString& ) ), 638 connect( mNicknameEdit, SIGNAL( textChanged( const QString& ) ),
619 SLOT( textChanged( const QString& ) ) ); 639 SLOT( textChanged( const QString& ) ) );
620 label->setBuddy( mNicknameEdit ); 640 label->setBuddy( mNicknameEdit );
621 641
622 label = new QLabel( " "+i18n( "Spouse's name:" )+" ", nbox ); 642 label = new QLabel( " "+i18n( "Spouse's name:" )+" ", nbox );
623 mSpouseEdit = new KLineEdit( nbox ); 643 mSpouseEdit = new KLineEdit( nbox );
624 connect( mSpouseEdit, SIGNAL( textChanged( const QString& ) ), 644 connect( mSpouseEdit, SIGNAL( textChanged( const QString& ) ),
625 SLOT( textChanged( const QString& ) ) ); 645 SLOT( textChanged( const QString& ) ) );
626 label->setBuddy( mSpouseEdit ); 646 label->setBuddy( mSpouseEdit );
627 layout->addMultiCellWidget( nbox, iii, iii, 1, 2 ); 647 layout->addMultiCellWidget( nbox, iii, iii, 1, 2 );
628 ++iii; 648 ++iii;
629 649
630 } else { 650 } else {
631 label = new QLabel( i18n( "Nick name:" ), tab2 ); 651 label = new QLabel( i18n( "Nick name:" ), tab2 );
632 layout->addWidget( label, iii, 1 ); 652 layout->addWidget( label, iii, 1 );
633 mNicknameEdit = new KLineEdit( tab2 ); 653 mNicknameEdit = new KLineEdit( tab2 );
634 connect( mNicknameEdit, SIGNAL( textChanged( const QString& ) ), 654 connect( mNicknameEdit, SIGNAL( textChanged( const QString& ) ),
635 SLOT( textChanged( const QString& ) ) ); 655 SLOT( textChanged( const QString& ) ) );
636 label->setBuddy( mNicknameEdit ); 656 label->setBuddy( mNicknameEdit );
637 layout->addWidget( mNicknameEdit, iii, 2 ); 657 layout->addWidget( mNicknameEdit, iii, 2 );
638 ++iii; 658 ++iii;
639 659
640 label = new QLabel( i18n( "Spouse's name:" ), tab2 ); 660 label = new QLabel( i18n( "Spouse's name:" ), tab2 );
641 layout->addWidget( label, iii, 1 ); 661 layout->addWidget( label, iii, 1 );
642 mSpouseEdit = new KLineEdit( tab2 ); 662 mSpouseEdit = new KLineEdit( tab2 );
643 connect( mSpouseEdit, SIGNAL( textChanged( const QString& ) ), 663 connect( mSpouseEdit, SIGNAL( textChanged( const QString& ) ),
644 SLOT( textChanged( const QString& ) ) ); 664 SLOT( textChanged( const QString& ) ) );
645 label->setBuddy( mSpouseEdit ); 665 label->setBuddy( mSpouseEdit );
646 layout->addWidget( mSpouseEdit, iii, 2 ); 666 layout->addWidget( mSpouseEdit, iii, 2 );
647 ++iii; 667 ++iii;
648 } 668 }
649 669
650 label = new QLabel( i18n( "Children's names:" ), tab2 ); 670 label = new QLabel( i18n( "Children's names:" ), tab2 );
651 layout->addWidget( label, iii, 1 ); 671 layout->addWidget( label, iii, 1 );
652 mChildEdit = new KLineEdit( tab2 ); 672 mChildEdit = new KLineEdit( tab2 );
653 connect( mChildEdit, SIGNAL( textChanged( const QString& ) ), 673 connect( mChildEdit, SIGNAL( textChanged( const QString& ) ),
654 SLOT( textChanged( const QString& ) ) ); 674 SLOT( textChanged( const QString& ) ) );
655 label->setBuddy( mChildEdit ); 675 label->setBuddy( mChildEdit );
656 layout->addWidget( mChildEdit, iii, 2 ); 676 layout->addWidget( mChildEdit, iii, 2 );
657 ++iii; 677 ++iii;
658 if ( QApplication::desktop()->width() == 640 ) { 678 if ( QApplication::desktop()->width() == 640 ) {
659 QHBox * nbox = new QHBox ( tab2 ); 679 QHBox * nbox = new QHBox ( tab2 );
660 label = new QLabel( i18n( "Birthday:" )+" ", nbox ); 680 label = new QLabel( i18n( "Birthday:" )+" ", nbox );
661 mBirthdayPicker = new KDateEdit( nbox ); 681 mBirthdayPicker = new KDateEdit( nbox );
662 //mBirthdayPicker->toggleDateFormat(); 682 //mBirthdayPicker->toggleDateFormat();
663 mBirthdayPicker->setHandleInvalid( true ); 683 mBirthdayPicker->setHandleInvalid( true );
664 connect( mBirthdayPicker, SIGNAL( dateChanged( QDate ) ), 684 connect( mBirthdayPicker, SIGNAL( dateChanged( QDate ) ),
665 SLOT( dateChanged( QDate ) ) ); 685 SLOT( dateChanged( QDate ) ) );
666 686
667 label->setBuddy( mBirthdayPicker ); 687 label->setBuddy( mBirthdayPicker );
668 688
669 label = new QLabel( " "+i18n( "Anniversary:" )+" ", nbox ); 689 label = new QLabel( " "+i18n( "Anniversary:" )+" ", nbox );
670 mAnniversaryPicker = new KDateEdit( nbox ); 690 mAnniversaryPicker = new KDateEdit( nbox );
671 mAnniversaryPicker->setHandleInvalid( true ); 691 mAnniversaryPicker->setHandleInvalid( true );
672 connect( mAnniversaryPicker, SIGNAL( dateChanged( QDate ) ), 692 connect( mAnniversaryPicker, SIGNAL( dateChanged( QDate ) ),
673 SLOT( dateChanged( QDate ) ) ); 693 SLOT( dateChanged( QDate ) ) );
674 694
675 label->setBuddy( mAnniversaryPicker ); 695 label->setBuddy( mAnniversaryPicker );
676 layout->addMultiCellWidget( nbox, iii, iii, 1, 2 ); 696 layout->addMultiCellWidget( nbox, iii, iii, 1, 2 );
677 ++iii; 697 ++iii;
678 698
679 } else { 699 } else {
680 700
681 label = new QLabel( i18n( "Birthday:" ), tab2 ); 701 label = new QLabel( i18n( "Birthday:" ), tab2 );
682 layout->addWidget( label, iii, 1 ); 702 layout->addWidget( label, iii, 1 );
683 mBirthdayPicker = new KDateEdit( tab2 ); 703 mBirthdayPicker = new KDateEdit( tab2 );
684 //mBirthdayPicker->toggleDateFormat(); 704 //mBirthdayPicker->toggleDateFormat();
685 mBirthdayPicker->setHandleInvalid( true ); 705 mBirthdayPicker->setHandleInvalid( true );
686 connect( mBirthdayPicker, SIGNAL( dateChanged( QDate ) ), 706 connect( mBirthdayPicker, SIGNAL( dateChanged( QDate ) ),
687 SLOT( dateChanged( QDate ) ) ); 707 SLOT( dateChanged( QDate ) ) );
688 708
689 label->setBuddy( mBirthdayPicker ); 709 label->setBuddy( mBirthdayPicker );
690 layout->addWidget( mBirthdayPicker, iii, 2 ); 710 layout->addWidget( mBirthdayPicker, iii, 2 );
691 ++iii; 711 ++iii;
692 712
693 label = new QLabel( i18n( "Anniversary:" ), tab2 ); 713 label = new QLabel( i18n( "Anniversary:" ), tab2 );
694 layout->addWidget( label, iii, 1 ); 714 layout->addWidget( label, iii, 1 );
695 mAnniversaryPicker = new KDateEdit( tab2 ); 715 mAnniversaryPicker = new KDateEdit( tab2 );
696 mAnniversaryPicker->setHandleInvalid( true ); 716 mAnniversaryPicker->setHandleInvalid( true );
697 connect( mAnniversaryPicker, SIGNAL( dateChanged( QDate ) ), 717 connect( mAnniversaryPicker, SIGNAL( dateChanged( QDate ) ),
698 SLOT( dateChanged( QDate ) ) ); 718 SLOT( dateChanged( QDate ) ) );
699 719
700 label->setBuddy( mAnniversaryPicker ); 720 label->setBuddy( mAnniversaryPicker );
701 layout->addWidget( mAnniversaryPicker, iii, 2 ); 721 layout->addWidget( mAnniversaryPicker, iii, 2 );
702 ++iii; 722 ++iii;
703 723
704 } 724 }
705 725
706 label = new QLabel( i18n( "Gender:" ), tab2 ); 726 label = new QLabel( i18n( "Gender:" ), tab2 );
707 layout->addWidget( label, iii, 1 ); 727 layout->addWidget( label, iii, 1 );
708 mGenderBox = new QComboBox ( tab2 ); 728 mGenderBox = new QComboBox ( tab2 );
709 mGenderBox->insertItem ( i18n( "ALIEN (undefined)" )); 729 mGenderBox->insertItem ( i18n( "ALIEN (undefined)" ));
710 mGenderBox->insertItem ( i18n( "female" )); 730 mGenderBox->insertItem ( i18n( "female" ));
711 mGenderBox->insertItem ( i18n( "male" )); 731 mGenderBox->insertItem ( i18n( "male" ));
diff --git a/kaddressbook/addresseeeditorwidget.h b/kaddressbook/addresseeeditorwidget.h
index 995f30e..eaf5b16 100644
--- a/kaddressbook/addresseeeditorwidget.h
+++ b/kaddressbook/addresseeeditorwidget.h
@@ -1,186 +1,188 @@
1/* 1/*
2 This file is part of KAddressBook. 2 This file is part of KAddressBook.
3 Copyright (c) 2002 Mike Pilone <mpilone@slac.com> 3 Copyright (c) 2002 Mike Pilone <mpilone@slac.com>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program 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 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#ifndef ADDRESSEEEDITORWIDGET_H 24#ifndef ADDRESSEEEDITORWIDGET_H
25#define ADDRESSEEEDITORWIDGET_H 25#define ADDRESSEEEDITORWIDGET_H
26 26
27#include <qdatetime.h> 27#include <qdatetime.h>
28 28
29#include <kabc/addressee.h> 29#include <kabc/addressee.h>
30#include <kdialogbase.h> 30#include <kdialogbase.h>
31#include <kjanuswidget.h> 31#include <kjanuswidget.h>
32 32
33#include "extensionwidget.h" 33#include "extensionwidget.h"
34 34
35class AddresseeConfig; 35class AddresseeConfig;
36class QCheckBox; 36class QCheckBox;
37class QSpinBox; 37class QSpinBox;
38class QTabWidget; 38class QTabWidget;
39 39
40#ifndef KAB_EMBEDDED 40#ifndef KAB_EMBEDDED
41class QTextEdit; 41class QTextEdit;
42#else //KAB_EMBEDDED 42#else //KAB_EMBEDDED
43class QMultiLineEdit; 43class QMultiLineEdit;
44#endif //KAB_EMBEDDED 44#endif //KAB_EMBEDDED
45 45
46class KComboBox; 46class KComboBox;
47class KDateEdit; 47class KDateEdit;
48class KLineEdit; 48class KLineEdit;
49class KSqueezedTextLabel; 49class KSqueezedTextLabel;
50 50
51class AddressEditWidget; 51class AddressEditWidget;
52class EmailEditWidget; 52class EmailEditWidget;
53class GeoWidget; 53class GeoWidget;
54class ImageWidget; 54class ImageWidget;
55class KABCore; 55class KABCore;
56class KeyWidget; 56class KeyWidget;
57class PhoneEditWidget; 57class PhoneEditWidget;
58class SecrecyWidget; 58class SecrecyWidget;
59class SoundWidget; 59class SoundWidget;
60 60
61namespace KPIM 61namespace KPIM
62{ 62{
63 class CategorySelectDialog; 63 class CategorySelectDialog;
64 class CategoryEditDialog; 64 class CategoryEditDialog;
65} 65}
66 66
67namespace KABC { class AddressBook; } 67namespace KABC { class AddressBook; }
68 68
69class AddresseeEditorWidget : public ExtensionWidget 69class AddresseeEditorWidget : public ExtensionWidget
70{ 70{
71 Q_OBJECT 71 Q_OBJECT
72 72
73 public: 73 public:
74 AddresseeEditorWidget( KABCore *core, bool isExtension, 74 AddresseeEditorWidget( KABCore *core, bool isExtension,
75 QWidget *parent, const char *name = 0 ); 75 QWidget *parent, const char *name = 0 );
76 ~AddresseeEditorWidget(); 76 ~AddresseeEditorWidget();
77 77
78 void setAddressee( const KABC::Addressee& ); 78 void setAddressee( const KABC::Addressee& );
79 const KABC::Addressee &addressee(); 79 const KABC::Addressee &addressee();
80 80
81 void contactsSelectionChanged(); 81 void contactsSelectionChanged();
82 82
83 void load(); 83 void load();
84 void save(); 84 void save();
85 85
86 bool dirty(); 86 bool dirty();
87 87
88 QString title() const; 88 QString title() const;
89 QString identifier() const; 89 QString identifier() const;
90 90
91 protected slots: 91 protected slots:
92 void setRole2FN();
93 void setCompany2FN();
92 void textChanged( const QString& ); 94 void textChanged( const QString& );
93 void pageChanged( QWidget *wdg ); 95 void pageChanged( QWidget *wdg );
94 96
95 /** 97 /**
96 Emits the modified signal and sets the dirty flag. Any slot 98 Emits the modified signal and sets the dirty flag. Any slot
97 that modifies data should use this method instead of calling emit 99 that modifies data should use this method instead of calling emit
98 modified() directly. 100 modified() directly.
99 */ 101 */
100 void emitModified(); 102 void emitModified();
101 103
102 void dateChanged( QDate ); 104 void dateChanged( QDate );
103 void invalidDate(); 105 void invalidDate();
104 void nameTextChanged( const QString& ); 106 void nameTextChanged( const QString& );
105 void nameBoxChanged(); 107 void nameBoxChanged();
106 void nameButtonClicked(); 108 void nameButtonClicked();
107 void categoryButtonClicked(); 109 void categoryButtonClicked();
108 110
109 /** 111 /**
110 Called whenever the categories change in the categories dialog. 112 Called whenever the categories change in the categories dialog.
111 */ 113 */
112 void categoriesSelected( const QStringList& ); 114 void categoriesSelected( const QStringList& );
113 115
114 /** 116 /**
115 Edits which categories are available in the CategorySelectDialog. 117 Edits which categories are available in the CategorySelectDialog.
116 */ 118 */
117 void editCategories(); 119 void editCategories();
118 120
119 private: 121 private:
120 AddresseeConfig * mAConfig; 122 AddresseeConfig * mAConfig;
121 void initGUI(); 123 void initGUI();
122 void setupTab1(); 124 void setupTab1();
123 void setupTab1_1(); 125 void setupTab1_1();
124 void setupTab2(); 126 void setupTab2();
125 void setupTab2_1(); 127 void setupTab2_1();
126 void setupTab3(); 128 void setupTab3();
127 void setupTab3_1(); 129 void setupTab3_1();
128 130
129 KABC::Addressee mAddressee; 131 KABC::Addressee mAddressee;
130 int mFormattedNameType; 132 int mFormattedNameType;
131 bool mDirty; 133 bool mDirty;
132 bool mIsExtension; 134 bool mIsExtension;
133 bool mBlockSignals; 135 bool mBlockSignals;
134 136
135 // GUI 137 // GUI
136 KPIM::CategorySelectDialog *mCategoryDialog; 138 KPIM::CategorySelectDialog *mCategoryDialog;
137 KPIM::CategoryEditDialog *mCategoryEditDialog; 139 KPIM::CategoryEditDialog *mCategoryEditDialog;
138 QTabWidget *mTabWidget; 140 QTabWidget *mTabWidget;
139 141
140 // Tab1 and Tab1_1 142 // Tab1 and Tab1_1
141 KLineEdit *mNameEdit; 143 KLineEdit *mNameEdit;
142 KLineEdit *mRoleEdit; 144 KLineEdit *mRoleEdit;
143 KLineEdit *mOrgEdit; 145 KLineEdit *mOrgEdit;
144 146
145 KSqueezedTextLabel *mFormattedNameLabel; 147 KSqueezedTextLabel *mFormattedNameLabel;
146 AddressEditWidget *mAddressEditWidget; 148 AddressEditWidget *mAddressEditWidget;
147 EmailEditWidget *mEmailWidget; 149 EmailEditWidget *mEmailWidget;
148 PhoneEditWidget *mPhoneEditWidget; 150 PhoneEditWidget *mPhoneEditWidget;
149 KLineEdit *mURLEdit; 151 KLineEdit *mURLEdit;
150 KLineEdit *mIMAddressEdit; 152 KLineEdit *mIMAddressEdit;
151 KLineEdit *mCategoryEdit; 153 KLineEdit *mCategoryEdit;
152 SecrecyWidget *mSecrecyWidget; 154 SecrecyWidget *mSecrecyWidget;
153 KSqueezedTextLabel *mNameLabel; 155 KSqueezedTextLabel *mNameLabel;
154 156
155 // Tab2 and Tab2_2 157 // Tab2 and Tab2_2
156 KLineEdit *mDepartmentEdit; 158 KLineEdit *mDepartmentEdit;
157 KLineEdit *mOfficeEdit; 159 KLineEdit *mOfficeEdit;
158 KLineEdit *mProfessionEdit; 160 KLineEdit *mProfessionEdit;
159 KLineEdit *mManagerEdit; 161 KLineEdit *mManagerEdit;
160 KLineEdit *mAssistantEdit; 162 KLineEdit *mAssistantEdit;
161 KLineEdit *mNicknameEdit; 163 KLineEdit *mNicknameEdit;
162 KLineEdit *mSpouseEdit; 164 KLineEdit *mSpouseEdit;
163 KLineEdit *mChildEdit; 165 KLineEdit *mChildEdit;
164 QComboBox *mGenderBox; 166 QComboBox *mGenderBox;
165 KDateEdit *mBirthdayPicker; 167 KDateEdit *mBirthdayPicker;
166 KDateEdit *mAnniversaryPicker; 168 KDateEdit *mAnniversaryPicker;
167#ifndef KAB_EMBEDDED 169#ifndef KAB_EMBEDDED
168 QTextEdit *mNoteEdit; 170 QTextEdit *mNoteEdit;
169#else //KAB_EMBEDDED 171#else //KAB_EMBEDDED
170 QMultiLineEdit *mNoteEdit; 172 QMultiLineEdit *mNoteEdit;
171#endif //KAB_EMBEDDED 173#endif //KAB_EMBEDDED
172 174
173 QSpinBox *mTimeZoneSpin; 175 QSpinBox *mTimeZoneSpin;
174 QSpinBox *mGeoLat; 176 QSpinBox *mGeoLat;
175 QSpinBox *mGeoLon; 177 QSpinBox *mGeoLon;
176 178
177 // Tab3 179 // Tab3
178 GeoWidget *mGeoWidget; 180 GeoWidget *mGeoWidget;
179 ImageWidget *mImageWidget; 181 ImageWidget *mImageWidget;
180#ifndef KAB_EMBEDDED 182#ifndef KAB_EMBEDDED
181 SoundWidget *mSoundWidget; 183 SoundWidget *mSoundWidget;
182#endif //KAB_EMBEDDED 184#endif //KAB_EMBEDDED
183 KeyWidget *mKeyWidget; 185 KeyWidget *mKeyWidget;
184}; 186};
185 187
186#endif 188#endif