-rw-r--r-- | kabc/addresseeview.cpp | 48 |
1 files changed, 42 insertions, 6 deletions
diff --git a/kabc/addresseeview.cpp b/kabc/addresseeview.cpp index 8f104e0..aa96210 100644 --- a/kabc/addresseeview.cpp +++ b/kabc/addresseeview.cpp @@ -230,71 +230,107 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee ) //qDebug("AddresseeView::setAddressee has to be verified."); } QString aRole = ""; QString aOrga = ""; if ( true /*!mAddressee.role().isEmpty()*/ ) { aRole = "<tr>" "<td align=\"left\">" + mAddressee.role() + "</td>" "</tr>"; } if ( true /*!mAddressee.organization().isEmpty()*/ ) { aOrga = "<tr>" "<td align=\"left\">" + mAddressee.organization() + "</td>" "</tr>"; } mText = ""; QString picString = ""; KABC::Picture picture = mAddressee.photo(); bool picAvailintern = false; bool picAvailUrl = false; if (! picture.undefined() ) { picAvailintern = (picture.isIntern() && !picture.data().isNull()); picAvailUrl = !picture.isIntern() && QFile::exists(picture.url() ); } if ( picAvailUrl || picAvailintern || QApplication::desktop()->width() > 320 ) { picString = "<img src=\"myimage\" width=\"50\" height=\"70\">"; if ( picAvailintern ) { QMimeSourceFactory::defaultFactory()->setImage( "myimage", picture.data() ); } else { if ( picAvailUrl ) { QMimeSourceFactory::defaultFactory()->setPixmap( "myimage", QPixmap( picture.url() )); } else { - static bool setDefaultImage = false; - if ( !setDefaultImage ) { - qDebug("Setting default pixmap "); - QMimeSourceFactory::defaultFactory()->setPixmap( "defaultPenguin", KGlobal::iconLoader()->loadIcon( "package_toys", KIcon::Desktop, 128 ) ); - setDefaultImage = true; + if ( !mAddressee.custom( "KADDRESSBOOK", "X-Children" ).isEmpty() ) { + static bool setDefaultImageChildren = false; + if ( !setDefaultImageChildren ) { + QMimeSourceFactory::defaultFactory()->setPixmap( "familyIcon", KGlobal::iconLoader()->loadIcon( "ic_kids", KIcon::Desktop, 128 ) ); + setDefaultImageChildren = true; + } + picString = "<img src=\"familyIcon\" width=\"64\" height=\"64\">"; + + } else if ( !mAddressee.custom( "KADDRESSBOOK", "X-SpousesName" ).isEmpty() ) { + static bool setDefaultImagepouses = false; + if ( !setDefaultImagepouses ) { + QMimeSourceFactory::defaultFactory()->setPixmap( "SpousesIcon", KGlobal::iconLoader()->loadIcon( "ic_family", KIcon::Desktop, 128 ) ); + setDefaultImagepouses = true; + } + picString = "<img src=\"SpousesIcon\" width=\"64\" height=\"64\">"; + } else { + QString gen = mAddressee.custom( "KADDRESSBOOK", "X-Gender" ); + if ( gen == "male" ) { + static bool setDefaultImageMale = false; + if ( !setDefaultImageMale ) { + QMimeSourceFactory::defaultFactory()->setPixmap( "MaleIcon", KGlobal::iconLoader()->loadIcon( "ic_male", KIcon::Desktop, 128 ) ); + setDefaultImageMale = true; + } + picString = "<img src=\"MaleIcon\" width=\"64\" height=\"64\">"; + + } else if ( gen == "female" ) { + static bool setDefaultImageFemale = false; + if ( !setDefaultImageFemale ) { + QMimeSourceFactory::defaultFactory()->setPixmap( "FemaleIcon", KGlobal::iconLoader()->loadIcon( "ic_female", KIcon::Desktop, 128 ) ); + setDefaultImageFemale = true; + } + picString = "<img src=\"FemaleIcon\" width=\"64\" height=\"64\">"; + + } else { + static bool setDefaultImage = false; + if ( !setDefaultImage ) { + qDebug("Setting default pixmap "); + QMimeSourceFactory::defaultFactory()->setPixmap( "defaultIcon", KGlobal::iconLoader()->loadIcon( "ic_penguin", KIcon::Desktop, 128 ) ); + setDefaultImage = true; + } + picString = "<img src=\"defaultIcon\" width=\"64\" height=\"64\">"; + } } - picString = "<img src=\"defaultPenguin\" width=\"64\" height=\"64\">"; } } mText = QString::fromLatin1( "<html>" "<body text=\"%1\" bgcolor=\"%2\">" // text and background color "<table>" "<tr>" "<td rowspan=\"3\" align=\"right\" valign=\"top\">" "%3" "</td>" "<td align=\"left\"><font size=\"+2\"><b>%4</b></font></td>" // name "</tr>" "%5" // role "%6" // organization "<td colspan=\"2\"> </td>" "%7" // dynamic part "%8" // notes "</table>" "</body>" "</html>") //US .arg( /*KGlobalSettings::textColor().name()*/ "black" ) //US .arg( /*KGlobalSettings::baseColor().name()*/ "white" ) .arg( picString ) .arg( name ) .arg( aRole ) .arg( aOrga ) .arg( dynamicPart ) .arg( notes ); } else { // no picture! |