summaryrefslogtreecommitdiffabout
path: root/kabc
authorzautrix <zautrix>2005-06-26 10:43:45 (UTC)
committer zautrix <zautrix>2005-06-26 10:43:45 (UTC)
commit98bc92a09eb27fef0efa9c3dc5e963f7faa0319c (patch) (unidiff)
treef80716d3e1239054a0a48bec6e9f67dd57e2156a /kabc
parentf27e8c6cc8abbd27f10167334d608c7e0af7f711 (diff)
downloadkdepimpi-98bc92a09eb27fef0efa9c3dc5e963f7faa0319c.zip
kdepimpi-98bc92a09eb27fef0efa9c3dc5e963f7faa0319c.tar.gz
kdepimpi-98bc92a09eb27fef0efa9c3dc5e963f7faa0319c.tar.bz2
details addressee better
Diffstat (limited to 'kabc') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/addresseeview.cpp200
-rw-r--r--kabc/addresseeview.h5
2 files changed, 169 insertions, 36 deletions
diff --git a/kabc/addresseeview.cpp b/kabc/addresseeview.cpp
index 667a5e2..202a718 100644
--- a/kabc/addresseeview.cpp
+++ b/kabc/addresseeview.cpp
@@ -56,6 +56,7 @@
56//US static int kphoneInstalled = 0; 56//US static int kphoneInstalled = 0;
57 57
58using namespace KABC; 58using namespace KABC;
59bool AddresseeView::sFullDetailsMode = false;
59 60
60AddresseeView::AddresseeView( QWidget *parent, const char *name ) 61AddresseeView::AddresseeView( QWidget *parent, const char *name )
61 : QTextBrowser( parent, name ) 62 : QTextBrowser( parent, name )
@@ -100,20 +101,26 @@ void AddresseeView::printMe()
100} 101}
101void AddresseeView::setSource(const QString& n) 102void AddresseeView::setSource(const QString& n)
102{ 103{
103 //qDebug("********AddresseeView::setSource %s", n.latin1()); 104 qDebug("********AddresseeView::setSource %s", n.latin1());
104 105
105 if ( n.left( 6 ) == "mailto" ) 106 if ( n == "allDetails" ) {
106 ExternalAppHandler::instance()->mailToOneContact( n.mid(7) ); 107 sFullDetailsMode = true;
107 else if ( n.left( 7 ) == "phoneto" ) 108 setAddressee( mCurrentContact );
108 ExternalAppHandler::instance()->callByPhone( n.mid(8) ); 109 } else if ( n == "notAllDetails" ) {
109 else if ( n.left( 5 ) == "faxto" ) 110 sFullDetailsMode = false;
110 ExternalAppHandler::instance()->callByFax( n.mid(6) ); 111 setAddressee( mCurrentContact );
111 else if ( n.left( 5 ) == "smsto" ) 112 } else if ( n.left( 6 ) == "mailto" )
112 ExternalAppHandler::instance()->callBySMS( n.mid(6) ); 113 ExternalAppHandler::instance()->mailToOneContact( n.mid(7) );
113 else if ( n.left( 7 ) == "pagerto" ) 114 else if ( n.left( 7 ) == "phoneto" )
114 ExternalAppHandler::instance()->callByPager( n.mid(8) ); 115 ExternalAppHandler::instance()->callByPhone( n.mid(8) );
115 else if ( n.left( 5 ) == "sipto" ) 116 else if ( n.left( 5 ) == "faxto" )
116 ExternalAppHandler::instance()->callBySIP( n.mid(6) ); 117 ExternalAppHandler::instance()->callByFax( n.mid(6) );
118 else if ( n.left( 5 ) == "smsto" )
119 ExternalAppHandler::instance()->callBySMS( n.mid(6) );
120 else if ( n.left( 7 ) == "pagerto" )
121 ExternalAppHandler::instance()->callByPager( n.mid(8) );
122 else if ( n.left( 5 ) == "sipto" )
123 ExternalAppHandler::instance()->callBySIP( n.mid(6) );
117 124
118} 125}
119void AddresseeView::setAddressee( const KABC::Addressee& mAddressee ) 126void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
@@ -122,7 +129,7 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
122 // mAddressee = addr; 129 // mAddressee = addr;
123 // clear view 130 // clear view
124 //setText( QString::null ); 131 //setText( QString::null );
125 132 mCurrentContact = mAddressee;
126 if ( mAddressee.isEmpty() ) { 133 if ( mAddressee.isEmpty() ) {
127 setText( QString::null); 134 setText( QString::null);
128 return; 135 return;
@@ -187,15 +194,7 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
187 } 194 }
188 } 195 }
189 196
190 if ( !mAddressee.url().url().isEmpty() ) { 197
191 dynamicPart += QString(
192 "<tr><td align=\"right\"><b>%1</b></td>"
193 "<td align=\"left\">%2</td></tr>" )
194 .arg( i18n( "Homepage" ) )
195//US .arg( KStringHandler::tagURLs( mAddressee.url().url() ) );
196 .arg( mAddressee.url().url() );
197 //qDebug("AddresseeView::setAddressee has to be verified.");
198 }
199 198
200 KABC::Address::List addresses = mAddressee.addresses(); 199 KABC::Address::List addresses = mAddressee.addresses();
201 KABC::Address::List::ConstIterator addrIt; 200 KABC::Address::List::ConstIterator addrIt;
@@ -223,17 +222,150 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
223 222
224 } 223 }
225 } 224 }
225
226
227 QString notes;
228 if ( sFullDetailsMode ) {
229 notes = QString(
230 "<tr><td align=\"right\"><b>%1</b></td>"
231 "<td align=\"left\"><a href=\"notAllDetails\">%4</a></td></tr>" )
232 .arg( i18n("Details:") )
233 .arg( i18n("Click here to hide!") );
234
235 QString tempX = mAddressee.secrecy().asString();
236
237 notes += QString(
238 "<tr><td align=\"right\"><b>%1</b></td>"
239 "<td align=\"left\">%2</td></tr>" )
240 .arg( "" )
241 .arg( tempX );
242
243
244 tempX = mAddressee.categories().join(" - ");
245 if ( !tempX.isEmpty() ) {
246 notes += QString(
247 "<tr><td align=\"right\"><b>%1</b></td>"
248 "<td align=\"left\">%2</td></tr>" )
249 .arg( i18n( "Category" ) )
250 .arg( tempX );
251 }
252 tempX = mAddressee.custom( "KADDRESSBOOK", "X-Profession" );
253 if ( !tempX.isEmpty() ) {
254 notes += QString(
255 "<tr><td align=\"right\"><b>%1</b></td>"
256 "<td align=\"left\">%2</td></tr>" )
257 .arg( i18n( "Profession" ) )
258 .arg( tempX );
259 }
260 tempX = mAddressee.custom( "KADDRESSBOOK", "X-Office" );
261 if ( !tempX.isEmpty() ) {
262 notes += QString(
263 "<tr><td align=\"right\"><b>%1</b></td>"
264 "<td align=\"left\">%2</td></tr>" )
265 .arg( i18n( "Office" ) )
266 .arg( tempX );
267 }
268 tempX = mAddressee.custom( "KADDRESSBOOK", "X-Department" );
269 if ( !tempX.isEmpty() ) {
270 notes += QString(
271 "<tr><td align=\"right\"><b>%1</b></td>"
272 "<td align=\"left\">%2</td></tr>" )
273 .arg( i18n( "Department" ) )
274 .arg( tempX );
275 }
276
277 tempX = mAddressee.custom( "KADDRESSBOOK", "X-ManagersName" );
278 if ( !tempX.isEmpty() ) {
279 notes += QString(
280 "<tr><td align=\"right\"><b>%1</b></td>"
281 "<td align=\"left\">%2</td></tr>" )
282 .arg( i18n( "Manager" ) )
283 .arg( tempX );
284 }
285 tempX = mAddressee.custom( "KADDRESSBOOK", "X-AssistantsName" );
286 if ( !tempX.isEmpty() ) {
287 notes += QString(
288 "<tr><td align=\"right\"><b>%1</b></td>"
289 "<td align=\"left\">%2</td></tr>" )
290 .arg( i18n( "Assistant" ) )
291 .arg( tempX );
292 }
293 if ( !mAddressee.url().url().isEmpty() ) {
294 notes += QString(
295 "<tr><td align=\"right\"><b>%1</b></td>"
296 "<td align=\"left\">%2</td></tr>" )
297 .arg( i18n( "Homepage" ) )
298 .arg( mAddressee.url().url() );
299 }
300 tempX = mAddressee.nickName();
301 if ( !tempX.isEmpty() ) {
302 notes += QString(
303 "<tr><td align=\"right\"><b>%1</b></td>"
304 "<td align=\"left\">%2</td></tr>" )
305 .arg( i18n( "Nickname" ) )
306 .arg( tempX );
307 }
308 tempX = mAddressee.custom( "KADDRESSBOOK", "X-IMAddress" );
309 if ( !tempX.isEmpty() ) {
310 notes += QString(
311 "<tr><td align=\"right\"><b>%1</b></td>"
312 "<td align=\"left\">%2</td></tr>" )
313 .arg( i18n( "Messanger" ) )
314 .arg( tempX );
315 }
316 tempX = mAddressee.custom( "KADDRESSBOOK", "X-Gender" );
317 if ( !tempX.isEmpty() ) {
318 notes += QString(
319 "<tr><td align=\"right\"><b>%1</b></td>"
320 "<td align=\"left\">%2</td></tr>" )
321 .arg( i18n( "Gender" ) )
322 .arg( i18n(tempX) );
323 }
324 tempX = mAddressee.custom( "KADDRESSBOOK", "X-Anniversary" );
325 if ( !tempX.isEmpty() ) {
326 QDate dt = KGlobal::locale()->readDate( tempX, "%Y-%m-%d");
327 tempX = KGlobal::locale()->formatDate(dt, true);
328 notes += QString(
329 "<tr><td align=\"right\"><b>%1</b></td>"
330 "<td align=\"left\">%2</td></tr>" )
331 .arg( i18n( "Anniversary" ) )
332 .arg( tempX );
333 }
334 tempX = mAddressee.custom( "KADDRESSBOOK", "X-SpousesName" );
335 if ( !tempX.isEmpty() ) {
336 notes += QString(
337 "<tr><td align=\"right\"><b>%1</b></td>"
338 "<td align=\"left\">%2</td></tr>" )
339 .arg( i18n( "Spouse" ) )
340 .arg( tempX );
341 }
342 tempX = mAddressee.custom( "KADDRESSBOOK", "X-Children" );
343 if ( !tempX.isEmpty() ) {
344 notes += QString(
345 "<tr><td align=\"right\"><b>%1</b></td>"
346 "<td align=\"left\">%2</td></tr>" )
347 .arg( i18n( "Children" ) )
348 .arg( tempX );
349 }
350
351 if ( !mAddressee.note().isEmpty() ) {
352 notes += QString(
353 "<tr>"
354 "<td align=\"right\" valign=\"top\"><b>%1</b></td>" // note label
355 "<td align=\"left\">%2</td>" // note
356 "</tr>" ).arg( i18n( "Notes" ) )
357 //US .arg( mAddressee.note().replace( '\n', "<br>" ) );
358 .arg( mAddressee.note().replace( QRegExp("\n"), "<br>" ) );
359 //qDebug("AddresseeView::setAddressee has to be verified.");
360 }
361 } else {
362 notes = QString(
363 "<tr><td align=\"right\"><b>%1</b></td>"
364 "<td align=\"left\"><a href=\"allDetails\">%4</a></td></tr>" )
365 .arg( i18n("Details:") )
366 .arg( i18n("Click here to show!") );
367
226 368
227 QString notes;
228 if ( !mAddressee.note().isEmpty() ) {
229 notes = QString(
230 "<tr>"
231 "<td align=\"right\" valign=\"top\"><b>%1</b></td>" // note label
232 "<td align=\"left\">%2</td>" // note
233 "</tr>" ).arg( i18n( "Notes" ) )
234//US .arg( mAddressee.note().replace( '\n', "<br>" ) );
235 .arg( mAddressee.note().replace( QRegExp("\n"), "<br>" ) );
236 //qDebug("AddresseeView::setAddressee has to be verified.");
237 } 369 }
238 370
239 QString aRole = ""; 371 QString aRole = "";
diff --git a/kabc/addresseeview.h b/kabc/addresseeview.h
index e977d8f..a4de085 100644
--- a/kabc/addresseeview.h
+++ b/kabc/addresseeview.h
@@ -49,8 +49,9 @@ class AddresseeView : public QTextBrowser
49 */ 49 */
50 //KABC::Addressee addressee() const; 50 //KABC::Addressee addressee() const;
51 void printMe(); 51 void printMe();
52 52 static bool sFullDetailsMode;
53 private: 53 private:
54 Addressee mCurrentContact;
54 //KABC::Addressee mAddressee; 55 //KABC::Addressee mAddressee;
55 QString mText; 56 QString mText;
56 QString getPhoneNumbers( KABC::PhoneNumber::List phones, bool preferred ); 57 QString getPhoneNumbers( KABC::PhoneNumber::List phones, bool preferred );