summaryrefslogtreecommitdiffabout
path: root/kabc
authorzautrix <zautrix>2005-10-30 03:18:28 (UTC)
committer zautrix <zautrix>2005-10-30 03:18:28 (UTC)
commit760f042066478106b87a63d6aba1ac1473a58dae (patch) (unidiff)
treeefa26bd696cd152e36552317e2d26a615db0866a /kabc
parent54d04eb1b2cb8ec4a3b2cf3dfdfbade45dc7ae7a (diff)
downloadkdepimpi-760f042066478106b87a63d6aba1ac1473a58dae.zip
kdepimpi-760f042066478106b87a63d6aba1ac1473a58dae.tar.gz
kdepimpi-760f042066478106b87a63d6aba1ac1473a58dae.tar.bz2
fixes
Diffstat (limited to 'kabc') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/phonenumber.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/kabc/phonenumber.cpp b/kabc/phonenumber.cpp
index 897c56d..12b9b09 100644
--- a/kabc/phonenumber.cpp
+++ b/kabc/phonenumber.cpp
@@ -47,328 +47,328 @@ PhoneNumber::PhoneNumber( const QString &number, int type ) :
47PhoneNumber::~PhoneNumber() 47PhoneNumber::~PhoneNumber()
48{ 48{
49} 49}
50 50
51void PhoneNumber::init() 51void PhoneNumber::init()
52{ 52{
53 mId = KApplication::randomString( 8 ); 53 mId = KApplication::randomString( 8 );
54} 54}
55 55
56bool PhoneNumber::operator==( const PhoneNumber &p ) const 56bool PhoneNumber::operator==( const PhoneNumber &p ) const
57{ 57{
58 if ( mNumber != p.mNumber ) return false; 58 if ( mNumber != p.mNumber ) return false;
59 if ( mType != p.mType ) return false; 59 if ( mType != p.mType ) return false;
60 60
61 return true; 61 return true;
62} 62}
63 63
64bool PhoneNumber::operator!=( const PhoneNumber &p ) const 64bool PhoneNumber::operator!=( const PhoneNumber &p ) const
65{ 65{
66 return !( p == *this ); 66 return !( p == *this );
67} 67}
68void PhoneNumber::makeCompat() 68void PhoneNumber::makeCompat()
69{ 69{
70 mType = getCompatType( mType ); 70 mType = getCompatType( mType );
71} 71}
72int PhoneNumber::getCompatType( int type ) 72int PhoneNumber::getCompatType( int type )
73{ 73{
74 74
75 if ((type & Cell) == Cell) { 75 if ((type & Cell) == Cell) {
76 if ((type & Work) == Work) 76 if ((type & Work) == Work)
77 return Car; 77 return Car;
78 return Cell; 78 return Cell;
79 } 79 }
80 if ((type & Home) == Home) { 80 if ((type & Home) == Home) {
81 if ((type & Pref) == Pref) 81 if ((type & Pref) == Pref)
82 return (Home | Pref); 82 return (Home | Pref);
83 if ((type & Fax) == Fax) 83 if ((type & Fax) == Fax)
84 return (Home | Fax); 84 return (Home | Fax);
85 return (Home); 85 return (Home);
86 } 86 }
87 if ((type & Work) == Work) { 87 if ((type & Work) == Work) {
88 if ((type & Pref) == Pref) 88 if ((type & Pref) == Pref)
89 return (Work| Pref); 89 return (Work| Pref);
90 if ((type & Fax) == Fax) 90 if ((type & Fax) == Fax)
91 return (Fax |Work); 91 return (Fax |Work);
92 if ((type & Msg) == Msg) { 92 if ((type & Msg) == Msg) {
93 if ((type & Voice) == Voice) 93 if ((type & Voice) == Voice)
94 return ( Msg | Voice |Work); 94 return ( Msg | Voice |Work);
95 return ( Msg | Work); 95 return ( Msg | Work);
96 } 96 }
97 return Work; 97 return Work;
98 } 98 }
99 if ((type & Pcs) == Pcs) { 99 if ((type & Pcs) == Pcs) {
100 if ((type & Pref) == Pref) 100 if ((type & Pref) == Pref)
101 return Pcs | Pref; 101 return Pcs | Pref;
102 if ((type & Voice) == Voice) 102 if ((type & Voice) == Voice)
103 return Pcs | Voice; 103 return Pcs | Voice;
104 return Pcs; 104 return Pcs;
105 } 105 }
106 if ((type & Car) == Car) 106 if ((type & Car) == Car)
107 return Car; 107 return Car;
108 if ((type & Pager) == Pager) 108 if ((type & Pager) == Pager)
109 return Pager; 109 return Pager;
110 if ((type & Isdn) == Isdn) 110 if ((type & Isdn) == Isdn)
111 return Isdn; 111 return Isdn;
112#if 0 112#if 0
113 if ((type & Video) == Video) 113 if ((type & Video) == Video)
114 return Video; 114 return Video;
115#endif 115#endif
116 if ((type & Msg) == Msg) 116 if ((type & Msg) == Msg)
117 return Msg; 117 return Msg;
118 if ((type & Fax) == Fax) 118 if ((type & Fax) == Fax)
119 return Fax; 119 return Fax;
120 120
121 if ((type & Pref) == Pref) 121 if ((type & Pref) == Pref)
122 return Pref; 122 return Pref;
123 123
124 return Voice; 124 return Voice;
125 125
126} 126}
127bool PhoneNumber::simplifyNumber() 127bool PhoneNumber::simplifyNumber()
128{ 128{
129 QString Number; 129 QString Number;
130 int i; 130 int i;
131 Number = mNumber.stripWhiteSpace (); 131 Number = mNumber.stripWhiteSpace ();
132 mNumber = ""; 132 mNumber = "";
133 for ( i = 0; i < Number.length(); ++i) { 133 for ( i = 0; i < Number.length(); ++i) {
134 if ( Number.at(i).isDigit() || Number.at(i) == '+'|| Number.at(i) == '*'|| Number.at(i) == '#' ) 134 if ( Number.at(i).isDigit() || Number.at(i) == '+'|| Number.at(i) == '*'|| Number.at(i) == '#' )
135 mNumber += Number.at(i); 135 mNumber += Number.at(i);
136 } 136 }
137 return ( mNumber.length() > 0 ); 137 return ( mNumber.length() > 0 );
138} 138}
139// make cellphone compatible 139// make cellphone compatible
140void PhoneNumber::simplifyType() 140void PhoneNumber::simplifyType()
141{ 141{
142 if ( mType & Fax ) mType = Fax; 142 if ( mType & Fax ) mType = Fax;
143 else if ( mType & Cell ) mType = Cell; 143 else if ( mType & Cell ) mType = Cell;
144 else if ( mType & Work ) mType = Work ; 144 else if ( mType & Work ) mType = Work ;
145 else if ( mType & Home ) mType = Home; 145 else if ( mType & Home ) mType = Home;
146 else mType = Pref; 146 else mType = Pref;
147} 147}
148bool PhoneNumber::contains( const PhoneNumber &p ) 148bool PhoneNumber::contains( const PhoneNumber &p )
149{ 149{
150 PhoneNumber myself; 150 PhoneNumber myself;
151 PhoneNumber other; 151 PhoneNumber other;
152 myself = *this; 152 myself = *this;
153 other = p; 153 other = p;
154 myself.simplifyNumber(); 154 myself.simplifyNumber();
155 other.simplifyNumber(); 155 other.simplifyNumber();
156 if ( myself.number() != other.number ()) 156 if ( myself.number() != other.number ())
157 return false; 157 return false;
158 myself.simplifyType(); 158 myself.simplifyType();
159 other.simplifyType(); 159 other.simplifyType();
160 if ( myself.type() == other.type()) 160 if ( myself.type() == other.type())
161 return true; 161 return true;
162 return false; 162 return false;
163} 163}
164 164
165void PhoneNumber::setId( const QString &id ) 165void PhoneNumber::setId( const QString &id )
166{ 166{
167 mId = id; 167 mId = id;
168} 168}
169 169
170QString PhoneNumber::id() const 170QString PhoneNumber::id() const
171{ 171{
172 return mId; 172 return mId;
173} 173}
174 174
175void PhoneNumber::setNumber( const QString &number ) 175void PhoneNumber::setNumber( const QString &number )
176{ 176{
177 mNumber = number; 177 mNumber = number;
178} 178}
179 179
180QString PhoneNumber::number() const 180QString PhoneNumber::number() const
181{ 181{
182 return mNumber; 182 return mNumber;
183} 183}
184 184
185void PhoneNumber::setType( int type ) 185void PhoneNumber::setType( int type )
186{ 186{
187 mType = type; 187 mType = type;
188} 188}
189 189
190int PhoneNumber::type() const 190int PhoneNumber::type() const
191{ 191{
192 return mType; 192 return mType;
193} 193}
194 194
195QString PhoneNumber::typeLabel() const 195QString PhoneNumber::typeLabel() const
196{ 196{
197 QString label; 197 QString label;
198 bool first = true; 198 bool first = true;
199 199
200 TypeList list = typeList(); 200 TypeList list = typeList();
201 201
202 TypeList::Iterator it; 202 TypeList::Iterator it;
203 for ( it = list.begin(); it != list.end(); ++it ) { 203 for ( it = list.begin(); it != list.end(); ++it ) {
204 if ( ( type() & (*it) ) && ( (*it) != Pref ) ) { 204 if ( ( type() & (*it) ) && ( (*it) != Pref ) ) {
205 label.append( ( first ? "" : "/" ) + typeLabel( *it ) ); 205 label.append( ( first ? "" : "/" ) + typeLabel( *it ) );
206 if ( first ) 206 if ( first )
207 first = false; 207 first = false;
208 } 208 }
209 } 209 }
210 210
211 return label; 211 return label;
212} 212}
213 213
214QString PhoneNumber::label() const 214QString PhoneNumber::label() const
215{ 215{
216 return typeLabel( type() ); 216 return typeLabel( type() );
217} 217}
218 218
219PhoneNumber::TypeList PhoneNumber::typeList() 219PhoneNumber::TypeList PhoneNumber::typeList()
220{ 220{
221 TypeList list; 221 TypeList list;
222 222
223 list << Home << Work << Msg << Pref << Voice << Fax << Cell << Video 223 list << Home << Work << Msg << Pref << Voice << Fax << Cell << Video
224 << Bbs << Modem << Car << Isdn << Pcs << Pager; 224 << Bbs << Modem << Car << Isdn << Pcs << Pager;
225 225
226 return list; 226 return list;
227} 227}
228PhoneNumber::TypeList PhoneNumber::supportedTypeList() 228PhoneNumber::TypeList PhoneNumber::supportedTypeList()
229{ 229{
230 static TypeList list; 230 static TypeList list;
231 if ( list.count() == 0 ) 231 if ( list.count() == 0 )
232 list << (Home| Pref) << (Work| Pref) << Cell <<(Pcs|Pref)<< (Pcs|Voice)<< Home << Work << Car << Pcs <<(Work| Msg | Voice) << (Work| Msg) << (Home | Fax) << (Work| Fax) << Fax<< Pager << Isdn << Msg << Pref << Voice; 232 list << (Home| Pref) << (Work| Pref) << Cell <<(Pcs|Pref)<< (Pcs|Voice)<< Home << Work << Car << Pcs <<(Work| Msg | Voice) << (Work| Msg) << (Home | Fax) << (Work| Fax) << Fax<< Pager << Isdn << Msg << Pref << Voice;
233 return list; 233 return list;
234} 234}
235QStringList PhoneNumber::supportedTypeListNames() 235QStringList PhoneNumber::supportedTypeListNames()
236{ 236{
237 static QStringList list; 237 static QStringList list;
238 if ( list.count() == 0 ) 238 if ( list.count() == 0 )
239 list << i18n("Home") << i18n("Work") << i18n("Mobile") << i18n("SIP") << i18n("VoIP") <<i18n("Home2")<< i18n("Work2") << i18n("Mobile2") << i18n("SIP2") << i18n("Assistent") << i18n("Company") << i18n("Fax (Home)") << i18n("Fax (Work)") << i18n("Fax (Other)") << i18n("Pager") << i18n("ISDN") << i18n("Callback") << i18n("Primary")<< i18n("Other"); 239 list << i18n("Home") << i18n("Work") << i18n("Mobile") << i18n("SiP") << i18n("VoIP") <<i18n("Home2")<< i18n("Work2") << i18n("Mobile2") << i18n("SiP2") << i18n("Assistent") << i18n("Company") << i18n("Fax (Home)") << i18n("Fax (Work)") << i18n("Fax (Other)") << i18n("Pager") << i18n("ISDN") << i18n("Callback") << i18n("Primary")<< i18n("Other");
240 return list; 240 return list;
241} 241}
242 242
243int PhoneNumber::typeListIndex4Type(int type ) 243int PhoneNumber::typeListIndex4Type(int type )
244{ 244{
245 TypeList list = supportedTypeList(); 245 TypeList list = supportedTypeList();
246 int i = 0; 246 int i = 0;
247 while ( i < list.count() ) { 247 while ( i < list.count() ) {
248 if ( list [i] == type ) 248 if ( list [i] == type )
249 return i; 249 return i;
250 ++i; 250 ++i;
251 } 251 }
252 return list.count()-1; 252 return list.count()-1;
253} 253}
254 254
255QString PhoneNumber::label( int type ) 255QString PhoneNumber::label( int type )
256{ 256{
257 return typeLabel( type ); 257 return typeLabel( type );
258} 258}
259 259
260QString PhoneNumber::typeLabel( int type ) 260QString PhoneNumber::typeLabel( int type )
261{ 261{
262 if ((type & Cell) == Cell) 262 if ((type & Cell) == Cell)
263 return i18n("Mobile"); 263 return i18n("Mobile");
264 if ((type & Home) == Home) { 264 if ((type & Home) == Home) {
265 if ((type & Pref) == Pref) 265 if ((type & Pref) == Pref)
266 return i18n("Home"); 266 return i18n("Home");
267 if ((type & Fax) == Fax) 267 if ((type & Fax) == Fax)
268 return i18n("Fax (Home)"); 268 return i18n("Fax (Home)");
269 return i18n("Home2"); 269 return i18n("Home2");
270 } 270 }
271 271
272 if ((type & Work) == Work) { 272 if ((type & Work) == Work) {
273 if ((type & Pref) == Pref) 273 if ((type & Pref) == Pref)
274 return i18n("Work"); 274 return i18n("Work");
275 if ((type & Fax) == Fax) 275 if ((type & Fax) == Fax)
276 return i18n("Fax (Work)"); 276 return i18n("Fax (Work)");
277 if ((type & Msg) == Msg) { 277 if ((type & Msg) == Msg) {
278 if ((type & Voice) == Voice) 278 if ((type & Voice) == Voice)
279 return i18n("Assistent"); 279 return i18n("Assistent");
280 return i18n("Company"); 280 return i18n("Company");
281 } 281 }
282 return i18n("Work2"); 282 return i18n("Work2");
283 } 283 }
284 if ((type & Pcs) == Pcs) { 284 if ((type & Pcs) == Pcs) {
285 if ((type & Pref) == Pref) 285 if ((type & Pref) == Pref)
286 return i18n("SiP"); 286 return i18n("SiP");
287 if ((type & Voice) == Voice) 287 if ((type & Voice) == Voice)
288 return i18n("VoIP"); 288 return i18n("VoIP");
289 return i18n("SiP2"); 289 return i18n("SiP2");
290 } 290 }
291 if ((type & Car) == Car) 291 if ((type & Car) == Car)
292 return i18n("Mobile2"); 292 return i18n("Mobile2");
293 if ((type & Pager) == Pager) 293 if ((type & Pager) == Pager)
294 return i18n("Pager"); 294 return i18n("Pager");
295 if ((type & Isdn) == Isdn) 295 if ((type & Isdn) == Isdn)
296 return i18n("ISDN"); 296 return i18n("ISDN");
297 if ((type & Video) == Video) 297 if ((type & Video) == Video)
298 return i18n("Video"); 298 return i18n("Video");
299 299
300 if ((type & Msg) == Msg) 300 if ((type & Msg) == Msg)
301 return i18n("Callback"); 301 return i18n("Callback");
302 if ((type & Fax) == Fax) 302 if ((type & Fax) == Fax)
303 return i18n("Fax (Other)"); 303 return i18n("Fax (Other)");
304 304
305 if ((type & Pref) == Pref) 305 if ((type & Pref) == Pref)
306 return i18n("Primary"); 306 return i18n("Primary");
307 307
308 308
309 return i18n("Other"); 309 return i18n("Other");
310 310
311 311
312#if 0 312#if 0
313 313
314 314
315 315
316 QString typeString; 316 QString typeString;
317 317
318 318
319 if ((type & Cell) == Cell) 319 if ((type & Cell) == Cell)
320 typeString += i18n("Mobile") +" "; 320 typeString += i18n("Mobile") +" ";
321 if ((type & Home) == Home) 321 if ((type & Home) == Home)
322 typeString += i18n("Home")+" "; 322 typeString += i18n("Home")+" ";
323 else if ((type & Work) == Work) 323 else if ((type & Work) == Work)
324 typeString += i18n("Work")+" "; 324 typeString += i18n("Work")+" ";
325 325
326 if ((type & Sip) == Sip) 326 if ((type & Sip) == Sip)
327 typeString += i18n("SIP")+" "; 327 typeString += i18n("SIP")+" ";
328 if ((type & Car) == Car) 328 if ((type & Car) == Car)
329 typeString += i18n("Car")+" "; 329 typeString += i18n("Car")+" ";
330 330
331 if ((type & Fax) == Fax) 331 if ((type & Fax) == Fax)
332 typeString += i18n("Fax"); 332 typeString += i18n("Fax");
333 else if ((type & Msg) == Msg) 333 else if ((type & Msg) == Msg)
334 typeString += i18n("Messenger"); 334 typeString += i18n("Messenger");
335 else if ((type & Video) == Video) 335 else if ((type & Video) == Video)
336 typeString += i18n("Video"); 336 typeString += i18n("Video");
337 else if ((type & Bbs) == Bbs) 337 else if ((type & Bbs) == Bbs)
338 typeString += i18n("Mailbox"); 338 typeString += i18n("Mailbox");
339 else if ((type & Modem) == Modem) 339 else if ((type & Modem) == Modem)
340 typeString += i18n("Modem"); 340 typeString += i18n("Modem");
341 else if ((type & Isdn) == Isdn) 341 else if ((type & Isdn) == Isdn)
342 typeString += i18n("ISDN"); 342 typeString += i18n("ISDN");
343 else if ((type & Pcs) == Pcs) 343 else if ((type & Pcs) == Pcs)
344 typeString += i18n("PCS"); 344 typeString += i18n("PCS");
345 else if ((type & Pager) == Pager) 345 else if ((type & Pager) == Pager)
346 typeString += i18n("Pager"); 346 typeString += i18n("Pager");
347 // add the prefered flag 347 // add the prefered flag
348 /* 348 /*
349 if ((type & Pref) == Pref) 349 if ((type & Pref) == Pref)
350 typeString += i18n("(p)"); 350 typeString += i18n("(p)");
351 */ 351 */
352 //if we still have no match, return "other" 352 //if we still have no match, return "other"
353 if (typeString.isEmpty()) { 353 if (typeString.isEmpty()) {
354 if ((type & Voice) == Voice) 354 if ((type & Voice) == Voice)
355 return i18n("Voice"); 355 return i18n("Voice");
356 else 356 else
357 return i18n("Other"); 357 return i18n("Other");
358 } 358 }
359 359
360 return typeString.stripWhiteSpace(); 360 return typeString.stripWhiteSpace();
361#endif 361#endif
362} 362}
363 363
364QDataStream &KABC::operator<<( QDataStream &s, const PhoneNumber &phone ) 364QDataStream &KABC::operator<<( QDataStream &s, const PhoneNumber &phone )
365{ 365{
366 return s << phone.mId << phone.mType << phone.mNumber; 366 return s << phone.mId << phone.mType << phone.mNumber;
367} 367}
368 368
369QDataStream &KABC::operator>>( QDataStream &s, PhoneNumber &phone ) 369QDataStream &KABC::operator>>( QDataStream &s, PhoneNumber &phone )
370{ 370{
371 s >> phone.mId >> phone.mType >> phone.mNumber; 371 s >> phone.mId >> phone.mType >> phone.mNumber;
372 372
373 return s; 373 return s;
374} 374}