[SCM] ktp-contact-list packaging branch, master, updated. debian/15.12.1-2-1070-g6c56f91

Maximiliano Curia maxy at moszumanska.debian.org
Sat May 28 00:05:57 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-list.git;a=commitdiff;h=13d93ed

The following commit has been merged in the master branch:
commit 13d93ed9747b50ec44b3e59651a5fbff89525635
Author: Lukas Hetzenecker <lukas.hetzenecker at gmail.com>
Date:   Thu Apr 14 14:42:12 2011 +0200

    Round borders around avatars in contact list
    Reviewed by: Martin Klapetek
    REVIEW: 101065
---
 contact-delegate.cpp | 21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

diff --git a/contact-delegate.cpp b/contact-delegate.cpp
index 2e32dd3..705f800 100644
--- a/contact-delegate.cpp
+++ b/contact-delegate.cpp
@@ -1,6 +1,7 @@
 #include "contact-delegate.h"
 
 #include <QtGui/QPainter>
+#include <QtGui/QPainterPath>
 #include <QApplication>
 #include <QStyle>
 #include <QtGui/QToolTip>
@@ -38,6 +39,7 @@ void ContactDelegate::paint(QPainter * painter, const QStyleOptionViewItem & opt
 
     painter->save();
 
+    painter->setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform | QPainter::HighQualityAntialiasing);
     painter->setClipRect(optV4.rect);
 
     QStyle *style = QApplication::style();
@@ -52,12 +54,27 @@ void ContactDelegate::paint(QPainter * painter, const QStyleOptionViewItem & opt
 
         QPixmap avatar = QPixmap::fromImage(QImage(index.data(AccountsModel::AvatarRole).toString()));
 
-        if (avatar.isNull()) {
+        bool noContactAvatar = avatar.isNull();
+
+        if (noContactAvatar) {
             avatar = SmallIcon("im-user", KIconLoader::SizeMedium);
         }
 
+        QPainterPath roundedPath;
+        roundedPath.addRoundedRect(iconRect, 20, 20, Qt::RelativeSize);
+
+        if (!noContactAvatar) {
+            painter->save();
+            painter->setClipPath(roundedPath);
+        }
+
         painter->drawPixmap(iconRect, avatar);
 
+        if (!noContactAvatar) {
+            painter->restore();
+            painter->drawPath(roundedPath);
+        }
+
         QPixmap icon;
 
         switch (index.data(AccountsModel::PresenceTypeRole).toInt()) {
@@ -300,7 +317,7 @@ bool ContactDelegate::helpEvent(QHelpEvent *event, QAbstractItemView *view, cons
     } else {
         table += QString("<tr><td><img src='%1' width='96' /></td>").arg(contactAvatar);
     }
-    
+
     table += "<td><table><tr>";
     table += QString("<td align='right'><b>%1</b></td>").arg(i18n("Alias:"));
     table += QString("<td>%1</td></tr>").arg(alias);

-- 
ktp-contact-list packaging



More information about the pkg-kde-commits mailing list