summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--bin/kdepim/kaddressbook/germantranslation.txt6
-rw-r--r--kabc/addressee.cpp4
-rw-r--r--kabc/addressee.h2
-rw-r--r--kabc/field.cpp8
-rw-r--r--kaddressbook/phoneeditwidget.cpp31
5 files changed, 35 insertions, 16 deletions
diff --git a/bin/kdepim/kaddressbook/germantranslation.txt b/bin/kdepim/kaddressbook/germantranslation.txt
index f12f880..06f25e9 100644
--- a/bin/kdepim/kaddressbook/germantranslation.txt
+++ b/bin/kdepim/kaddressbook/germantranslation.txt
@@ -401,5 +401,5 @@
{ "Types","Typen" },
{ "Messenger","Messenger" },
-{ "Other","Anderes" },
+{ "Other","Sonstiges" },
{ "Video","Video" },
{ "Mailbox","Mailbox" },
@@ -825,10 +825,10 @@
{ "Mobile2 (Car)","Handy2 (Auto)" },
{ "Callback","Rückruf" },
-{ "Fax (Other)","Fax (Anderes)" },
+{ "Fax (Other)","Fax (Sonst.)" },
{ "Primary","Bevorzugt" },
{ "Mobile (Home)","Handy (Privat)" },
{ "Unfiled","Nicht zugeordnet" },
{ "Format.n.:","Format.N.:" },
-{ "","" },
+{ "Other Phone","Sonst. Telefon" },
{ "","" },
{ "","" },
diff --git a/kabc/addressee.cpp b/kabc/addressee.cpp
index 789a694..0d8e8e8 100644
--- a/kabc/addressee.cpp
+++ b/kabc/addressee.cpp
@@ -1096,4 +1096,8 @@ QString Addressee::pagerLabel()
return i18n("Pager");
}
+QString Addressee::otherPhoneLabel()
+{
+ return i18n("Other Phone");
+}
QString Addressee::sipLabel()
diff --git a/kabc/addressee.h b/kabc/addressee.h
index 0c488eb..fcadda6 100644
--- a/kabc/addressee.h
+++ b/kabc/addressee.h
@@ -359,5 +359,5 @@ class Addressee
*/
static QString pagerLabel();
-
+ static QString otherPhoneLabel();
/**
Return translated label for sip field.
diff --git a/kabc/field.cpp b/kabc/field.cpp
index 20885de..6f2b307 100644
--- a/kabc/field.cpp
+++ b/kabc/field.cpp
@@ -89,5 +89,6 @@ class Field::FieldImpl
Sip,
MobileWorkPhone,
- MobileHomePhone
+ MobileHomePhone,
+ OtherPhone
};
@@ -207,4 +208,6 @@ QString Field::label()
case FieldImpl::Sip:
return Addressee::sipLabel();
+ case FieldImpl::OtherPhone:
+ return Addressee::otherPhoneLabel();
case FieldImpl::CustomField:
return mImpl->label();
@@ -311,4 +314,6 @@ QString Field::value( const KABC::Addressee &a )
case FieldImpl::Sip:
return a.phoneNumber( PhoneNumber::Pcs | PhoneNumber::Pref ).number();
+ case FieldImpl::OtherPhone:
+ return a.phoneNumber( PhoneNumber::Voice ).number();
case FieldImpl::HomeAddressStreet:
return a.address( Address::Home ).street();
@@ -443,4 +448,5 @@ Field::List Field::allFields()
createField( FieldImpl::Resource );
createField( FieldImpl::Sip );
+ createField( FieldImpl::OtherPhone );
}
diff --git a/kaddressbook/phoneeditwidget.cpp b/kaddressbook/phoneeditwidget.cpp
index 9e7e221..66f0a5e 100644
--- a/kaddressbook/phoneeditwidget.cpp
+++ b/kaddressbook/phoneeditwidget.cpp
@@ -170,19 +170,28 @@ void PhoneEditWidget::setPhoneNumbers( const KABC::PhoneNumber::List &li )
mTypeNumberEditList.clear();
KABC::PhoneNumber::List::Iterator it;
- KABC::PhoneNumber::List list = li;
- PhoneTypeNumberEdit* edit = 0;//mTypeNumberEditList.first();
+ KABC::PhoneNumber::List list2 = li;
+ KABC::PhoneNumber::List list ;
+
+ PhoneNumber::TypeList tList = PhoneNumber::supportedTypeList();
+ int i = 0;
+ int max = tList.count();
+ while ( i < max-1 ) {
+ for ( it = list2.begin(); it != list2.end(); ++it ) {
+ if ( (*it).type() == tList[i] ) {
+ list.append( (*it ) );
+ break;
+ }
+ }
+ ++i;
+ }
+ for ( it = list2.begin(); it != list2.end(); ++it ) {
+ if ( (*it).type() == tList[ max-1 ] )
+ list.append( (*it ) );
+ }
for ( it = list.begin(); it != list.end(); ++it ) {
- if ( edit ) {
- edit->setPhoneNumber( (*it ) );
- edit = mTypeNumberEditList.next();
- } else {
PhoneTypeNumberEdit* editNew = appendEditCombo();
editNew->setPhoneNumber( (*it ) );
}
- }
- while ( edit ) {
- edit->hide();
- edit = mTypeNumberEditList.next();
- }
+
}
KABC::PhoneNumber::List PhoneEditWidget::phoneNumbers()