summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt2
-rw-r--r--bin/kdepim/kaddressbook/germantranslation.txt6
-rw-r--r--kabc/addressee.cpp25
-rw-r--r--kabc/addressee.h5
-rw-r--r--kabc/field.cpp20
-rw-r--r--kabc/phonenumber.cpp11
-rw-r--r--kaddressbook/views/kaddressbooktableview.cpp2
7 files changed, 60 insertions, 11 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt
index 53eb428..bc0c62a 100644
--- a/bin/kdepim/WhatsNew.txt
+++ b/bin/kdepim/WhatsNew.txt
@@ -1,17 +1,19 @@
1Info about the changes in new versions of KDE-Pim/Pi 1Info about the changes in new versions of KDE-Pim/Pi
2 2
3********** VERSION 2.0.26 ************ 3********** VERSION 2.0.26 ************
4 4
5And again fixed some bugs. 5And again fixed some bugs.
6Added two more fields to the KA/Pi view config:
7A "Mobile (home)" and a "Mobile (work)" field.
6 8
7********** VERSION 2.0.25 ************ 9********** VERSION 2.0.25 ************
8 10
9And again fixed some bugs. 11And again fixed some bugs.
10 12
11********** VERSION 2.0.24 ************ 13********** VERSION 2.0.24 ************
12 14
13Fixed again a lot of small bugs. 15Fixed again a lot of small bugs.
14Some performance optimizations in date navigator. 16Some performance optimizations in date navigator.
15Month view displays now multi days events on top of each cell, such that it is more likely that all multi days items of one event are in the same row. 17Month view displays now multi days events on top of each cell, such that it is more likely that all multi days items of one event are in the same row.
16 18
17********** VERSION 2.0.23 ************ 19********** VERSION 2.0.23 ************
diff --git a/bin/kdepim/kaddressbook/germantranslation.txt b/bin/kdepim/kaddressbook/germantranslation.txt
index e54e140..f67a34d 100644
--- a/bin/kdepim/kaddressbook/germantranslation.txt
+++ b/bin/kdepim/kaddressbook/germantranslation.txt
@@ -744,19 +744,19 @@
744{ "Clock skew of\nsyncing devices\nis %1 seconds!","Uhrzeitunterschied der\nsyncenden Geräte\nist %1 Sekunden!" }, 744{ "Clock skew of\nsyncing devices\nis %1 seconds!","Uhrzeitunterschied der\nsyncenden Geräte\nist %1 Sekunden!" },
745{ "Synchronize!","Synchronisiere!" }, 745{ "Synchronize!","Synchronisiere!" },
746{ "High clock skew!","Großer Uhrzeitunterschied!" }, 746{ "High clock skew!","Großer Uhrzeitunterschied!" },
747{ "ADJUST\nYOUR\nCLOCKS!","JUSTIERE\nDIE\nUHREN!" }, 747{ "ADJUST\nYOUR\nCLOCKS!","JUSTIERE\nDIE\nUHREN!" },
748{ "The clocks of the syncing\ndevices have a difference\nof more than 5 minutes.\nPlease adjust your clocks.\nYou may get wrong syncing results!\nPlease confirm synchronization!","Die Uhren der syncenden Geräte\nhaben einen Unterschied von\nmehr als 5 Minuten. Bitte die\nUhrzeiten anpassen. Sie können\nfalsche Sync-Resultate erhalten!\nBitte das Syncen bestätigen!" }, 748{ "The clocks of the syncing\ndevices have a difference\nof more than 5 minutes.\nPlease adjust your clocks.\nYou may get wrong syncing results!\nPlease confirm synchronization!","Die Uhren der syncenden Geräte\nhaben einen Unterschied von\nmehr als 5 Minuten. Bitte die\nUhrzeiten anpassen. Sie können\nfalsche Sync-Resultate erhalten!\nBitte das Syncen bestätigen!" },
749{ "Change search field enable jump bar","Ändere Suchfeld um Jumpbar anzuzeigen" }, 749{ "Change search field enable jump bar","Ändere Suchfeld um Jumpbar anzuzeigen" },
750{ "Search with '*' prefix (wildcard)","Suche mit '*' Prefix (Wildcard)" }, 750{ "Search with '*' prefix (wildcard)","Suche mit '*' Prefix (Wildcard)" },
751{ "Shrink searchfield in portrait view","Verkleinere Suchfeld im Portraitmodus" }, 751{ "Shrink searchfield in portrait view","Verkleinere Suchfeld im Portraitmodus" },
752{ "Edit new contact","Bearbeite neuen Kontakt" }, 752{ "Edit new contact","Bearbeite neuen Kontakt" },
753{ "Edit ","Bearbeite " }, 753{ "Edit ","Bearbeite " },
754{ "No contact changed!","Kein Kontakt verändert" }, 754{ "No contact changed!","Kein Kontakt verändert" },
755{ "%1 contacts changed!","%1 Kontakte geändert!" }, 755{ "%1 contacts changed!","%1 Kontakte geändert!" },
756{ "","" }, 756{ "Mobile (home)","Handy (Arbeit)" },
757{ "","" }, 757{ "Mobile (work)","Handy (Privat)" },
758{ "","" }, 758{ "Def.Formatted Name","Def. Format. Name" },
759{ "","" }, 759{ "","" },
760{ "","" }, 760{ "","" },
761{ "","" }, 761{ "","" },
762{ "","" }, \ No newline at end of file 762{ "","" }, \ No newline at end of file
diff --git a/kabc/addressee.cpp b/kabc/addressee.cpp
index 39d14bb..7f592e9 100644
--- a/kabc/addressee.cpp
+++ b/kabc/addressee.cpp
@@ -42,24 +42,25 @@ $Id$
42 42
43using namespace KABC; 43using namespace KABC;
44 44
45static bool matchBinaryPattern( int value, int pattern ); 45static bool matchBinaryPattern( int value, int pattern );
46static bool matchBinaryPatternA( int value, int pattern ); 46static bool matchBinaryPatternA( int value, int pattern );
47static bool matchBinaryPatternP( int value, int pattern ); 47static bool matchBinaryPatternP( int value, int pattern );
48 48
49struct Addressee::AddresseeData : public KShared 49struct Addressee::AddresseeData : public KShared
50{ 50{
51 QString uid; 51 QString uid;
52 QString name; 52 QString name;
53 QString formattedName; 53 QString formattedName;
54 QString defaultFormattedName;
54 QString familyName; 55 QString familyName;
55 QString givenName; 56 QString givenName;
56 QString additionalName; 57 QString additionalName;
57 QString prefix; 58 QString prefix;
58 QString suffix; 59 QString suffix;
59 QString nickName; 60 QString nickName;
60 QDateTime birthday; 61 QDateTime birthday;
61 QString mailer; 62 QString mailer;
62 TimeZone timeZone; 63 TimeZone timeZone;
63 Geo geo; 64 Geo geo;
64 QString title; 65 QString title;
65 QString role; 66 QString role;
@@ -738,35 +739,51 @@ QString Addressee::nameLabel()
738{ 739{
739 return i18n("Name"); 740 return i18n("Name");
740} 741}
741 742
742 743
743void Addressee::setFormattedName( const QString &formattedName ) 744void Addressee::setFormattedName( const QString &formattedName )
744{ 745{
745 if ( formattedName == mData->formattedName ) return; 746 if ( formattedName == mData->formattedName ) return;
746 detach(); 747 detach();
747 mData->empty = false; 748 mData->empty = false;
748 mData->formattedName = formattedName; 749 mData->formattedName = formattedName;
749} 750}
751void Addressee::setDefaultFormattedName( const QString &formattedName )
752{
753 if ( formattedName == mData->defaultFormattedName ) return;
754 detach();
755 mData->empty = false;
756 mData->defaultFormattedName = formattedName;
757}
750 758
751QString Addressee::formattedName() const 759QString Addressee::formattedName() const
752{ 760{
753 return mData->formattedName; 761 return mData->formattedName;
754} 762}
763QString Addressee::defaultFormattedName() const
764{
765 return mData->defaultFormattedName;
766}
755 767
756QString Addressee::formattedNameLabel() 768QString Addressee::formattedNameLabel()
757{ 769{
758 return i18n("Formatted Name"); 770 return i18n("Formatted Name");
759} 771}
760 772
773QString Addressee::defaultFormattedNameLabel()
774{
775 return i18n("Def.Formatted Name");
776}
777
761 778
762void Addressee::setFamilyName( const QString &familyName ) 779void Addressee::setFamilyName( const QString &familyName )
763{ 780{
764 if ( familyName == mData->familyName ) return; 781 if ( familyName == mData->familyName ) return;
765 detach(); 782 detach();
766 mData->empty = false; 783 mData->empty = false;
767 mData->familyName = familyName; 784 mData->familyName = familyName;
768} 785}
769 786
770QString Addressee::familyName() const 787QString Addressee::familyName() const
771{ 788{
772 return mData->familyName; 789 return mData->familyName;
@@ -971,24 +988,32 @@ QString Addressee::homePhoneLabel()
971 988
972 989
973QString Addressee::businessPhoneLabel() 990QString Addressee::businessPhoneLabel()
974{ 991{
975 return i18n("Business Phone"); 992 return i18n("Business Phone");
976} 993}
977 994
978 995
979QString Addressee::mobilePhoneLabel() 996QString Addressee::mobilePhoneLabel()
980{ 997{
981 return i18n("Mobile Phone"); 998 return i18n("Mobile Phone");
982} 999}
1000QString Addressee::mobileWorkPhoneLabel()
1001{
1002 return i18n("Mobile (work)");
1003}
1004QString Addressee::mobileHomePhoneLabel()
1005{
1006 return i18n("Mobile (home)");
1007}
983 1008
984 1009
985QString Addressee::homeFaxLabel() 1010QString Addressee::homeFaxLabel()
986{ 1011{
987 return i18n("Home Fax"); 1012 return i18n("Home Fax");
988} 1013}
989 1014
990 1015
991QString Addressee::businessFaxLabel() 1016QString Addressee::businessFaxLabel()
992{ 1017{
993 return i18n("Business Fax"); 1018 return i18n("Business Fax");
994} 1019}
diff --git a/kabc/addressee.h b/kabc/addressee.h
index 8051fec..0d688f8 100644
--- a/kabc/addressee.h
+++ b/kabc/addressee.h
@@ -145,32 +145,35 @@ class Addressee
145 Return name. 145 Return name.
146 */ 146 */
147 QString name() const; 147 QString name() const;
148 /** 148 /**
149 Return translated label for name field. 149 Return translated label for name field.
150 */ 150 */
151 static QString nameLabel(); 151 static QString nameLabel();
152 152
153 /** 153 /**
154 Set formatted name. 154 Set formatted name.
155 */ 155 */
156 void setFormattedName( const QString &formattedName ); 156 void setFormattedName( const QString &formattedName );
157 void setDefaultFormattedName( const QString &formattedName );
157 /** 158 /**
158 Return formatted name. 159 Return formatted name.
159 */ 160 */
160 QString formattedName() const; 161 QString formattedName() const;
162 QString defaultFormattedName() const;
161 /** 163 /**
162 Return translated label for formattedName field. 164 Return translated label for formattedName field.
163 */ 165 */
164 static QString formattedNameLabel(); 166 static QString formattedNameLabel();
167 static QString defaultFormattedNameLabel();
165 168
166 /** 169 /**
167 Set family name. 170 Set family name.
168 */ 171 */
169 void setFamilyName( const QString &familyName ); 172 void setFamilyName( const QString &familyName );
170 /** 173 /**
171 Return family name. 174 Return family name.
172 */ 175 */
173 QString familyName() const; 176 QString familyName() const;
174 /** 177 /**
175 Return translated label for familyName field. 178 Return translated label for familyName field.
176 */ 179 */
@@ -319,24 +322,26 @@ class Addressee
319 */ 322 */
320 static QString homePhoneLabel(); 323 static QString homePhoneLabel();
321 324
322 /** 325 /**
323 Return translated label for businessPhone field. 326 Return translated label for businessPhone field.
324 */ 327 */
325 static QString businessPhoneLabel(); 328 static QString businessPhoneLabel();
326 329
327 /** 330 /**
328 Return translated label for mobilePhone field. 331 Return translated label for mobilePhone field.
329 */ 332 */
330 static QString mobilePhoneLabel(); 333 static QString mobilePhoneLabel();
334 static QString mobileWorkPhoneLabel();
335 static QString mobileHomePhoneLabel();
331 336
332 /** 337 /**
333 Return translated label for homeFax field. 338 Return translated label for homeFax field.
334 */ 339 */
335 static QString homeFaxLabel(); 340 static QString homeFaxLabel();
336 341
337 /** 342 /**
338 Return translated label for businessFax field. 343 Return translated label for businessFax field.
339 */ 344 */
340 static QString businessFaxLabel(); 345 static QString businessFaxLabel();
341 346
342 /** 347 /**
diff --git a/kabc/field.cpp b/kabc/field.cpp
index 89d0b77..5c561c3 100644
--- a/kabc/field.cpp
+++ b/kabc/field.cpp
@@ -77,25 +77,28 @@ class Field::FieldImpl
77 BusinessFax, 77 BusinessFax,
78 CarPhone, 78 CarPhone,
79 Isdn, 79 Isdn,
80 Pager, 80 Pager,
81 Email, 81 Email,
82 Mailer, 82 Mailer,
83 Title, 83 Title,
84 Role, 84 Role,
85 Organization, 85 Organization,
86 Note, 86 Note,
87 Url, 87 Url,
88 Resource, 88 Resource,
89 Sip 89 Sip,
90 DefaultFormattedName,
91 MobileWorkPhone,
92 MobileHomePhone
90 }; 93 };
91 94
92 int fieldId() { return mFieldId; } 95 int fieldId() { return mFieldId; }
93 int category() { return mCategory; } 96 int category() { return mCategory; }
94 97
95 QString label() { return mLabel; } 98 QString label() { return mLabel; }
96 QString key() { return mKey; } 99 QString key() { return mKey; }
97 QString app() { return mApp; } 100 QString app() { return mApp; }
98 101
99 private: 102 private:
100 int mFieldId; 103 int mFieldId;
101 int mCategory; 104 int mCategory;
@@ -117,24 +120,26 @@ Field::Field( FieldImpl *impl )
117} 120}
118 121
119Field::~Field() 122Field::~Field()
120{ 123{
121 delete mImpl; 124 delete mImpl;
122} 125}
123 126
124QString Field::label() 127QString Field::label()
125{ 128{
126 switch ( mImpl->fieldId() ) { 129 switch ( mImpl->fieldId() ) {
127 case FieldImpl::FormattedName: 130 case FieldImpl::FormattedName:
128 return Addressee::formattedNameLabel(); 131 return Addressee::formattedNameLabel();
132 case FieldImpl::DefaultFormattedName:
133 return Addressee::defaultFormattedNameLabel();
129 case FieldImpl::FamilyName: 134 case FieldImpl::FamilyName:
130 return Addressee::familyNameLabel(); 135 return Addressee::familyNameLabel();
131 case FieldImpl::GivenName: 136 case FieldImpl::GivenName:
132 return Addressee::givenNameLabel(); 137 return Addressee::givenNameLabel();
133 case FieldImpl::AdditionalName: 138 case FieldImpl::AdditionalName:
134 return Addressee::additionalNameLabel(); 139 return Addressee::additionalNameLabel();
135 case FieldImpl::Prefix: 140 case FieldImpl::Prefix:
136 return Addressee::prefixLabel(); 141 return Addressee::prefixLabel();
137 case FieldImpl::Suffix: 142 case FieldImpl::Suffix:
138 return Addressee::suffixLabel(); 143 return Addressee::suffixLabel();
139 case FieldImpl::NickName: 144 case FieldImpl::NickName:
140 return Addressee::nickNameLabel(); 145 return Addressee::nickNameLabel();
@@ -161,24 +166,28 @@ QString Field::label()
161 case FieldImpl::BusinessAddressPostalCode: 166 case FieldImpl::BusinessAddressPostalCode:
162 return Addressee::businessAddressPostalCodeLabel(); 167 return Addressee::businessAddressPostalCodeLabel();
163 case FieldImpl::BusinessAddressCountry: 168 case FieldImpl::BusinessAddressCountry:
164 return Addressee::businessAddressCountryLabel(); 169 return Addressee::businessAddressCountryLabel();
165 case FieldImpl::BusinessAddressLabel: 170 case FieldImpl::BusinessAddressLabel:
166 return Addressee::businessAddressLabelLabel(); 171 return Addressee::businessAddressLabelLabel();
167 case FieldImpl::HomePhone: 172 case FieldImpl::HomePhone:
168 return Addressee::homePhoneLabel(); 173 return Addressee::homePhoneLabel();
169 case FieldImpl::BusinessPhone: 174 case FieldImpl::BusinessPhone:
170 return Addressee::businessPhoneLabel(); 175 return Addressee::businessPhoneLabel();
171 case FieldImpl::MobilePhone: 176 case FieldImpl::MobilePhone:
172 return Addressee::mobilePhoneLabel(); 177 return Addressee::mobilePhoneLabel();
178 case FieldImpl::MobileHomePhone:
179 return Addressee::mobileHomePhoneLabel();
180 case FieldImpl::MobileWorkPhone:
181 return Addressee::mobileWorkPhoneLabel();
173 case FieldImpl::HomeFax: 182 case FieldImpl::HomeFax:
174 return Addressee::homeFaxLabel(); 183 return Addressee::homeFaxLabel();
175 case FieldImpl::BusinessFax: 184 case FieldImpl::BusinessFax:
176 return Addressee::businessFaxLabel(); 185 return Addressee::businessFaxLabel();
177 case FieldImpl::CarPhone: 186 case FieldImpl::CarPhone:
178 return Addressee::carPhoneLabel(); 187 return Addressee::carPhoneLabel();
179 case FieldImpl::Isdn: 188 case FieldImpl::Isdn:
180 return Addressee::isdnLabel(); 189 return Addressee::isdnLabel();
181 case FieldImpl::Pager: 190 case FieldImpl::Pager:
182 return Addressee::pagerLabel(); 191 return Addressee::pagerLabel();
183 case FieldImpl::Email: 192 case FieldImpl::Email:
184 return Addressee::emailLabel(); 193 return Addressee::emailLabel();
@@ -230,24 +239,26 @@ QString Field::categoryLabel( int category )
230 case CustomCategory: 239 case CustomCategory:
231 return i18n("Custom"); 240 return i18n("Custom");
232 default: 241 default:
233 return i18n("Undefined"); 242 return i18n("Undefined");
234 } 243 }
235} 244}
236 245
237QString Field::value( const KABC::Addressee &a ) 246QString Field::value( const KABC::Addressee &a )
238{ 247{
239 switch ( mImpl->fieldId() ) { 248 switch ( mImpl->fieldId() ) {
240 case FieldImpl::FormattedName: 249 case FieldImpl::FormattedName:
241 return a.formattedName(); 250 return a.formattedName();
251 case FieldImpl::DefaultFormattedName:
252 return a.defaultFormattedName();
242 case FieldImpl::FamilyName: 253 case FieldImpl::FamilyName:
243 return a.familyName(); 254 return a.familyName();
244 case FieldImpl::GivenName: 255 case FieldImpl::GivenName:
245 return a.givenName(); 256 return a.givenName();
246 case FieldImpl::AdditionalName: 257 case FieldImpl::AdditionalName:
247 return a.additionalName(); 258 return a.additionalName();
248 case FieldImpl::Prefix: 259 case FieldImpl::Prefix:
249 return a.prefix(); 260 return a.prefix();
250 case FieldImpl::Suffix: 261 case FieldImpl::Suffix:
251 return a.suffix(); 262 return a.suffix();
252 case FieldImpl::NickName: 263 case FieldImpl::NickName:
253 return a.nickName(); 264 return a.nickName();
@@ -279,24 +290,28 @@ QString Field::value( const KABC::Addressee &a )
279 return a.url().prettyURL(); 290 return a.url().prettyURL();
280//US 291//US
281 case FieldImpl::Resource: 292 case FieldImpl::Resource:
282 return a.resource()->resourceName(); 293 return a.resource()->resourceName();
283 case FieldImpl::Category: 294 case FieldImpl::Category:
284 return a.categories().join(","); 295 return a.categories().join(",");
285 case FieldImpl::HomePhone: 296 case FieldImpl::HomePhone:
286 return a.phoneNumber( PhoneNumber::Home ).number(); 297 return a.phoneNumber( PhoneNumber::Home ).number();
287 case FieldImpl::BusinessPhone: 298 case FieldImpl::BusinessPhone:
288 return a.phoneNumber( PhoneNumber::Work ).number(); 299 return a.phoneNumber( PhoneNumber::Work ).number();
289 case FieldImpl::MobilePhone: 300 case FieldImpl::MobilePhone:
290 return a.phoneNumber( PhoneNumber::Cell ).number(); 301 return a.phoneNumber( PhoneNumber::Cell ).number();
302 case FieldImpl::MobileWorkPhone:
303 return a.phoneNumber( PhoneNumber::Cell | PhoneNumber::Work ).number();
304 case FieldImpl::MobileHomePhone:
305 return a.phoneNumber( PhoneNumber::Cell | PhoneNumber::Home ).number();
291 case FieldImpl::HomeFax: 306 case FieldImpl::HomeFax:
292 return a.phoneNumber( PhoneNumber::Home | PhoneNumber::Fax ).number(); 307 return a.phoneNumber( PhoneNumber::Home | PhoneNumber::Fax ).number();
293 case FieldImpl::BusinessFax: 308 case FieldImpl::BusinessFax:
294 return a.phoneNumber( PhoneNumber::Work | PhoneNumber::Fax ).number(); 309 return a.phoneNumber( PhoneNumber::Work | PhoneNumber::Fax ).number();
295 case FieldImpl::CarPhone: 310 case FieldImpl::CarPhone:
296 return a.phoneNumber( PhoneNumber::Car ).number(); 311 return a.phoneNumber( PhoneNumber::Car ).number();
297 case FieldImpl::Isdn: 312 case FieldImpl::Isdn:
298 return a.phoneNumber( PhoneNumber::Isdn ).number(); 313 return a.phoneNumber( PhoneNumber::Isdn ).number();
299 case FieldImpl::Pager: 314 case FieldImpl::Pager:
300 return a.phoneNumber( PhoneNumber::Pager ).number(); 315 return a.phoneNumber( PhoneNumber::Pager ).number();
301 case FieldImpl::Sip: 316 case FieldImpl::Sip:
302 return a.phoneNumber( PhoneNumber::Sip ).number(); 317 return a.phoneNumber( PhoneNumber::Sip ).number();
@@ -384,47 +399,50 @@ bool Field::setValue( KABC::Addressee &a, const QString &value )
384 } 399 }
385} 400}
386 401
387bool Field::isCustom() 402bool Field::isCustom()
388{ 403{
389 return mImpl->fieldId() == FieldImpl::CustomField; 404 return mImpl->fieldId() == FieldImpl::CustomField;
390} 405}
391 406
392Field::List Field::allFields() 407Field::List Field::allFields()
393{ 408{
394 if ( mAllFields.isEmpty() ) { 409 if ( mAllFields.isEmpty() ) {
395 createField( FieldImpl::FormattedName, Frequent ); 410 createField( FieldImpl::FormattedName, Frequent );
411 createField( FieldImpl::DefaultFormattedName, Frequent );
396 createField( FieldImpl::FamilyName, Frequent ); 412 createField( FieldImpl::FamilyName, Frequent );
397 createField( FieldImpl::GivenName, Frequent ); 413 createField( FieldImpl::GivenName, Frequent );
398 createField( FieldImpl::AdditionalName ); 414 createField( FieldImpl::AdditionalName );
399 createField( FieldImpl::Prefix ); 415 createField( FieldImpl::Prefix );
400 createField( FieldImpl::Suffix ); 416 createField( FieldImpl::Suffix );
401 createField( FieldImpl::NickName, Personal ); 417 createField( FieldImpl::NickName, Personal );
402 createField( FieldImpl::Birthday, Personal ); 418 createField( FieldImpl::Birthday, Personal );
403 createField( FieldImpl::Category ); 419 createField( FieldImpl::Category );
404 createField( FieldImpl::HomeAddressStreet, Address|Personal ); 420 createField( FieldImpl::HomeAddressStreet, Address|Personal );
405 createField( FieldImpl::HomeAddressLocality, Address|Personal ); 421 createField( FieldImpl::HomeAddressLocality, Address|Personal );
406 createField( FieldImpl::HomeAddressRegion, Address|Personal ); 422 createField( FieldImpl::HomeAddressRegion, Address|Personal );
407 createField( FieldImpl::HomeAddressPostalCode, Address|Personal ); 423 createField( FieldImpl::HomeAddressPostalCode, Address|Personal );
408 createField( FieldImpl::HomeAddressCountry, Address|Personal ); 424 createField( FieldImpl::HomeAddressCountry, Address|Personal );
409 createField( FieldImpl::HomeAddressLabel, Address|Personal ); 425 createField( FieldImpl::HomeAddressLabel, Address|Personal );
410 createField( FieldImpl::BusinessAddressStreet, Address|Organization ); 426 createField( FieldImpl::BusinessAddressStreet, Address|Organization );
411 createField( FieldImpl::BusinessAddressLocality, Address|Organization ); 427 createField( FieldImpl::BusinessAddressLocality, Address|Organization );
412 createField( FieldImpl::BusinessAddressRegion, Address|Organization ); 428 createField( FieldImpl::BusinessAddressRegion, Address|Organization );
413 createField( FieldImpl::BusinessAddressPostalCode, Address|Organization ); 429 createField( FieldImpl::BusinessAddressPostalCode, Address|Organization );
414 createField( FieldImpl::BusinessAddressCountry, Address|Organization ); 430 createField( FieldImpl::BusinessAddressCountry, Address|Organization );
415 createField( FieldImpl::BusinessAddressLabel, Address|Organization ); 431 createField( FieldImpl::BusinessAddressLabel, Address|Organization );
416 createField( FieldImpl::HomePhone, Personal|Frequent ); 432 createField( FieldImpl::HomePhone, Personal|Frequent );
417 createField( FieldImpl::BusinessPhone, Organization|Frequent ); 433 createField( FieldImpl::BusinessPhone, Organization|Frequent );
418 createField( FieldImpl::MobilePhone, Frequent ); 434 createField( FieldImpl::MobilePhone, Frequent );
435 createField( FieldImpl::MobileHomePhone, Frequent );
436 createField( FieldImpl::MobileWorkPhone, Frequent );
419 createField( FieldImpl::HomeFax ); 437 createField( FieldImpl::HomeFax );
420 createField( FieldImpl::BusinessFax ); 438 createField( FieldImpl::BusinessFax );
421 createField( FieldImpl::CarPhone ); 439 createField( FieldImpl::CarPhone );
422 createField( FieldImpl::Isdn ); 440 createField( FieldImpl::Isdn );
423 createField( FieldImpl::Pager ); 441 createField( FieldImpl::Pager );
424 createField( FieldImpl::Email, Email|Frequent ); 442 createField( FieldImpl::Email, Email|Frequent );
425 createField( FieldImpl::Mailer, Email ); 443 createField( FieldImpl::Mailer, Email );
426 createField( FieldImpl::Title, Organization ); 444 createField( FieldImpl::Title, Organization );
427 createField( FieldImpl::Role, Organization ); 445 createField( FieldImpl::Role, Organization );
428 createField( FieldImpl::Organization, Organization ); 446 createField( FieldImpl::Organization, Organization );
429 createField( FieldImpl::Note ); 447 createField( FieldImpl::Note );
430 createField( FieldImpl::Url ); 448 createField( FieldImpl::Url );
diff --git a/kabc/phonenumber.cpp b/kabc/phonenumber.cpp
index 041effc..4c6231d 100644
--- a/kabc/phonenumber.cpp
+++ b/kabc/phonenumber.cpp
@@ -168,33 +168,32 @@ PhoneNumber::TypeList PhoneNumber::typeList()
168 return list; 168 return list;
169} 169}
170 170
171QString PhoneNumber::label( int type ) 171QString PhoneNumber::label( int type )
172{ 172{
173 return typeLabel( type ); 173 return typeLabel( type );
174} 174}
175 175
176QString PhoneNumber::typeLabel( int type ) 176QString PhoneNumber::typeLabel( int type )
177{ 177{
178 QString typeString; 178 QString typeString;
179 179
180 if ((type & Home) == Home)
181 typeString += i18n("Home");
182 else if ((type & Work) == Work)
183 typeString += i18n("Work");
184 180
185 if (!typeString.isEmpty())
186 typeString += " ";
187 if ((type & Cell) == Cell) 181 if ((type & Cell) == Cell)
188 typeString += i18n("Mobile") +" "; 182 typeString += i18n("Mobile") +" ";
183 if ((type & Home) == Home)
184 typeString += i18n("Home")+" ";
185 else if ((type & Work) == Work)
186 typeString += i18n("Work")+" ";
187
189 if ((type & Sip) == Sip) 188 if ((type & Sip) == Sip)
190 typeString += i18n("SIP")+" "; 189 typeString += i18n("SIP")+" ";
191 if ((type & Car) == Car) 190 if ((type & Car) == Car)
192 typeString += i18n("Car")+" "; 191 typeString += i18n("Car")+" ";
193 192
194 if ((type & Fax) == Fax) 193 if ((type & Fax) == Fax)
195 typeString += i18n("Fax"); 194 typeString += i18n("Fax");
196 else if ((type & Msg) == Msg) 195 else if ((type & Msg) == Msg)
197 typeString += i18n("Messenger"); 196 typeString += i18n("Messenger");
198 else if ((type & Video) == Video) 197 else if ((type & Video) == Video)
199 typeString += i18n("Video"); 198 typeString += i18n("Video");
200 else if ((type & Bbs) == Bbs) 199 else if ((type & Bbs) == Bbs)
diff --git a/kaddressbook/views/kaddressbooktableview.cpp b/kaddressbook/views/kaddressbooktableview.cpp
index e322473..565cd1d 100644
--- a/kaddressbook/views/kaddressbooktableview.cpp
+++ b/kaddressbook/views/kaddressbooktableview.cpp
@@ -177,25 +177,25 @@ void KAddressBookTableView::doSearch( const QString& s, KABC::Field *field )
177 if (re.match((*fieldIt)->value( *it ).lower()) != -1) 177 if (re.match((*fieldIt)->value( *it ).lower()) != -1)
178#endif 178#endif
179 { 179 {
180 //qDebug("match %s %s %s", pattern.latin1(), (*fieldIt)->value( *it ).latin1(), (*fieldIt)->label().latin1() ); 180 //qDebug("match %s %s %s", pattern.latin1(), (*fieldIt)->value( *it ).latin1(), (*fieldIt)->label().latin1() );
181 ContactListViewItem *item = new ContactListViewItem(*it, mListView, addressBook(), fields()); 181 ContactListViewItem *item = new ContactListViewItem(*it, mListView, addressBook(), fields());
182 break; 182 break;
183 } 183 }
184 } 184 }
185 } 185 }
186 } 186 }
187 // Sometimes the background pixmap gets messed up when we add lots 187 // Sometimes the background pixmap gets messed up when we add lots
188 // of items. 188 // of items.
189 mListView->repaint(); 189 //mListView->repaint();
190 if ( mListView->firstChild() ) { 190 if ( mListView->firstChild() ) {
191 mListView->setCurrentItem ( mListView->firstChild() ); 191 mListView->setCurrentItem ( mListView->firstChild() );
192 mListView->setSelected ( mListView->firstChild(), true ); 192 mListView->setSelected ( mListView->firstChild(), true );
193 } 193 }
194 else 194 else
195 emit selected(QString::null); 195 emit selected(QString::null);
196 196
197} 197}
198void KAddressBookTableView::writeConfig(KConfig *config) 198void KAddressBookTableView::writeConfig(KConfig *config)
199{ 199{
200 KAddressBookView::writeConfig(config); 200 KAddressBookView::writeConfig(config);
201 201