summaryrefslogtreecommitdiffabout
path: root/kabc/phonenumber.cpp
Side-by-side diff
Diffstat (limited to 'kabc/phonenumber.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/phonenumber.cpp34
1 files changed, 15 insertions, 19 deletions
diff --git a/kabc/phonenumber.cpp b/kabc/phonenumber.cpp
index abb3b3b..041effc 100644
--- a/kabc/phonenumber.cpp
+++ b/kabc/phonenumber.cpp
@@ -139,102 +139,98 @@ QString PhoneNumber::typeLabel() const
QString label;
bool first = true;
TypeList list = typeList();
TypeList::Iterator it;
for ( it = list.begin(); it != list.end(); ++it ) {
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 << Sip;
return list;
}
QString PhoneNumber::label( int type )
{
return typeLabel( type );
}
QString PhoneNumber::typeLabel( int type )
{
QString typeString;
if ((type & Home) == Home)
typeString += i18n("Home");
else if ((type & Work) == Work)
typeString += i18n("Work");
if (!typeString.isEmpty())
typeString += " ";
-
if ((type & Cell) == Cell)
- typeString += i18n("Mobile");
- else if ((type & Fax) == Fax)
+ typeString += i18n("Mobile") +" ";
+ if ((type & Sip) == Sip)
+ typeString += i18n("SIP")+" ";
+ if ((type & Car) == Car)
+ typeString += i18n("Car")+" ";
+
+ if ((type & Fax) == Fax)
typeString += i18n("Fax");
else if ((type & Msg) == Msg)
typeString += i18n("Messenger");
- else if ((type & Voice) == Voice) {
-// add nothing in case of the Voice flag
-// typeString += i18n("Voice");
- }
else if ((type & Video) == Video)
typeString += i18n("Video");
else if ((type & Bbs) == Bbs)
typeString += i18n("Mailbox");
else if ((type & Modem) == Modem)
typeString += i18n("Modem");
- else if ((type & Car) == Car)
- typeString += i18n("Car");
else if ((type & Isdn) == Isdn)
typeString += i18n("ISDN");
else if ((type & Pcs) == Pcs)
typeString += i18n("PCS");
else if ((type & Pager) == Pager)
typeString += i18n("Pager");
- else if ((type & Sip) == Sip)
- typeString += i18n("SIP");
-
// add the prefered flag
- if (!typeString.isEmpty())
- typeString += " ";
/*
if ((type & Pref) == Pref)
typeString += i18n("(p)");
*/
//if we still have no match, return "other"
- if (typeString.isEmpty())
- return i18n("Other");
-
-
- return typeString;
+ if (typeString.isEmpty()) {
+ if ((type & Voice) == Voice)
+ return i18n("Voice");
+ else
+ return i18n("Other");
+ }
+
+ return typeString.stripWhiteSpace();
}
QDataStream &KABC::operator<<( QDataStream &s, const PhoneNumber &phone )
{
return s << phone.mId << phone.mType << phone.mNumber;
}
QDataStream &KABC::operator>>( QDataStream &s, PhoneNumber &phone )
{
s >> phone.mId >> phone.mType >> phone.mNumber;
return s;
}