[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdelibs/kdeui/icons
From:       Olivier Goffart <ogoffart () kde ! org>
Date:       2009-02-22 17:02:57
Message-ID: 1235322177.711583.32406.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 930075 by ogoffart:

Return directly the pixmap when the size is the same (mosts of the cases)




 M  +10 -8     kiconengine.cpp  


--- trunk/KDE/kdelibs/kdeui/icons/kiconengine.cpp #930074:930075
@@ -114,18 +114,20 @@
 {
     Q_UNUSED(state)
 
-    QPixmap pix(size);
-    pix.fill(QColor(0,0,0,0));
-
-    QPainter painter(&pix);
-
     const int kstate = qIconModeToKIconState(mode);
     const int iconSize = qMin(size.width(), size.height());
+    QPixmap pix = iconLoader()->loadIcon(d->iconName, KIconLoader::Desktop, \
iconSize, kstate, d->overlays);  
-    painter.drawPixmap(QPoint(), iconLoader()->loadIcon(d->iconName, \
                KIconLoader::Desktop,
-                                                        iconSize, kstate, \
d->overlays)); +    if(pix.size() == size)
+        return pix;
 
-    return pix;
+    QPixmap pix2(size);
+    pix2.fill(QColor(0,0,0,0));
+
+    QPainter painter(&pix);
+    painter.drawPixmap(QPoint(), pix);
+
+    return pix2;
 }
 
 QString KIconEngine::key() const


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic