summaryrefslogtreecommitdiffabout
path: root/kabc/phonenumber.cpp
Side-by-side diff
Diffstat (limited to 'kabc/phonenumber.cpp') (more/less context) (show whitespace changes)
-rw-r--r--kabc/phonenumber.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/kabc/phonenumber.cpp b/kabc/phonenumber.cpp
index 0d46ba7..eee25a5 100644
--- a/kabc/phonenumber.cpp
+++ b/kabc/phonenumber.cpp
@@ -201,48 +201,74 @@ QString PhoneNumber::typeLabel() const
if ( ( type() & (*it) ) && ( (*it) != Pref ) ) {
label.append( ( first ? "" : "/" ) + typeLabel( *it ) );
if ( first )
first = false;
}
}
return label;
}
QString PhoneNumber::label() const
{
return typeLabel( type() );
}
PhoneNumber::TypeList PhoneNumber::typeList()
{
TypeList list;
list << Home << Work << Msg << Pref << Voice << Fax << Cell << Video
<< Bbs << Modem << Car << Isdn << Pcs << Pager;
return list;
}
+PhoneNumber::TypeList PhoneNumber::supportedTypeList()
+{
+ static TypeList list;
+ if ( list.count() == 0 )
+ list << (Home| Pref) << (Work| Pref) << Cell << Home << Work << Car << (Work| Msg | Voice) << (Work| Msg) << (Home | Fax) << (Work| Fax) << Fax<< (Pcs|Pref)<< Pcs<< Pager << Isdn << Video << Msg << Pref << Voice;
+ return list;
+}
+QStringList PhoneNumber::supportedTypeListNames()
+{
+ static QStringList list;
+ if ( list.count() == 0 )
+ list << i18n("Home") << i18n("Work") << i18n("Mobile") << i18n("Home2")<< i18n("Work2") << i18n("Mobile2 (Work)") << i18n("Assistent") << i18n("Company") << i18n("Fax (Home)") << i18n("Fax (Work)") << i18n("Fax (Other)") << i18n("SIP") << i18n("VoIP") << i18n("Pager") << i18n("ISDN") << i18n("Video") << i18n("Callback") << i18n("Primary")<< i18n("Other");
+ return list;
+}
+
+int PhoneNumber::typeListIndex4Type(int type )
+{
+ TypeList list = supportedTypeList();
+ int i = 0;
+ while ( i < list.count() ) {
+ if ( list [i] == type )
+ return i;
+ ++i;
+ }
+ return list.count()-1;
+}
QString PhoneNumber::label( int type )
{
return typeLabel( type );
}
QString PhoneNumber::typeLabel( int type )
{
if ((type & Cell) == Cell)
return i18n("Mobile");
if ((type & Home) == Home) {
if ((type & Pref) == Pref)
return i18n("Home");
if ((type & Fax) == Fax)
return i18n("Fax (Home)");
return i18n("Home2");
}
if ((type & Work) == Work) {
if ((type & Pref) == Pref)
return i18n("Work");
if ((type & Fax) == Fax)
return i18n("Fax (Work)");
if ((type & Msg) == Msg) {