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

List:       kde-commits
Subject:    KDE/kdelibs/knewstuff/knewstuff2/ui
From:       Christoph Feck <christoph () maxiom ! de>
Date:       2009-04-11 17:43:18
Message-ID: 1239471798.563635.11379.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 952371 by cfeck:

QAsyncPixmap -> QAsyncImage

This class is marked as internal, and lxr showed no violations.

Internally, KNewStuff already uses QImage, but when loading, it
uses a QPixmap, then converts to a QImage. Looking at how Qt
loads image data, this will actually result in useless conversions
from QImage->QPixmap->QImage. This commit avoids those.

As suggested on #kde-devel, the commit is done in two parts, the
second part (the file rename) follows.

CCMAIL:spillner@kde.org


 M  +5 -5      itemsmodel.cpp  
 M  +3 -3      itemsmodel.h  
 M  +4 -4      itemsview.cpp  
 M  +4 -4      qasyncpixmap.cpp  
 M  +4 -4      qasyncpixmap.h  


--- trunk/KDE/kdelibs/knewstuff/knewstuff2/ui/itemsmodel.cpp #952370:952371
@@ -123,9 +123,9 @@
     if (!preview.isEmpty()) {
         m_hasPreviewImages = true;
         m_imageIndexes.insert(preview, index(m_entries.count() - 1, 0));
-        QAsyncPixmap *pix = new QAsyncPixmap(preview, this);
-        connect(pix, SIGNAL(signalLoaded(const QString &, const QPixmap&)),
-                this, SLOT(slotEntryPreviewLoaded(const QString &, const QPixmap&)));
+        QAsyncImage *pix = new QAsyncImage(preview, this);
+        connect(pix, SIGNAL(signalLoaded(const QString &, const QImage&)),
+                this, SLOT(slotEntryPreviewLoaded(const QString &, const QImage&)));
     }
 }
 
@@ -147,11 +147,11 @@
     emit dataChanged(entryIndex, entryIndex);
 }
 
-void ItemsModel::slotEntryPreviewLoaded(const QString &url, const QPixmap & pix)
+void ItemsModel::slotEntryPreviewLoaded(const QString &url, const QImage & pix)
 {
     if( pix.isNull())
         return;
-    QImage image = pix.toImage();
+    QImage image = pix;
     m_largePreviewImages.insert(url, image);
     m_previewImages.insert(url, image.scaled(64, 64, Qt::KeepAspectRatio));
 
--- trunk/KDE/kdelibs/knewstuff/knewstuff2/ui/itemsmodel.h #952370:952371
@@ -62,9 +62,9 @@
         kPayload,
         /** the preview url */
         kPreview,
-        /** the preview pixmap */
+        /** the preview image */
         kPreviewPixmap,
-        /** the preview image unscaled */
+        /** the unscaled preview image */
         kLargePreviewPixmap,
         /** the rating of the entry */
         kRating,
@@ -91,7 +91,7 @@
 public slots:
     void slotEntryChanged(KNS::Entry * entry);
 private slots:
-    void slotEntryPreviewLoaded(const QString &url, const QPixmap & pix);
+    void slotEntryPreviewLoaded(const QString &url, const QImage & pix);
 private:
 
     // the list of entries
--- trunk/KDE/kdelibs/knewstuff/knewstuff2/ui/itemsview.cpp #952370:952371
@@ -26,7 +26,7 @@
 #include <QtGui/QWidget>
 #include <QtCore/QTimer>
 #include <QtGui/QLayout>
-#include <QtGui/QPixmap>
+#include <QtGui/QImage>
 #include <QtGui/QFont>
 #include <QtGui/QComboBox>
 #include <QtGui/QPushButton>
@@ -193,10 +193,10 @@
                 if (!imageurl.isEmpty()) {
                     QLabel *f = new QLabel(m_root);
                     f->setFrameStyle(QFrame::Panel | QFrame::Sunken);
-                    QAsyncPixmap *pix = new QAsyncPixmap(imageurl, m_root);
+                    QAsyncImage *pix = new QAsyncImage(imageurl, m_root);
                     f->setFixedSize(64, 64);
-                    //connect(pix, SIGNAL(signalLoaded(const QPixmap&)),
-                    //        f, SLOT(setPixmap(const QPixmap&)));
+                    //connect(pix, SIGNAL(signalLoaded(const QImage&)),
+                    //        f, SLOT(setImage(const QImage&)));
                     previewLayout->addWidget(f);
                 }
                 //previewLayout->addWidget(dxsbutton);
--- trunk/KDE/kdelibs/knewstuff/knewstuff2/ui/qasyncpixmap.cpp #952370:952371
@@ -27,8 +27,8 @@
 
 #include <QtCore/QFile>
 
-QAsyncPixmap::QAsyncPixmap(const QString& url, QObject* parent)
-        : QObject(parent), QPixmap(), m_url(url)
+QAsyncImage::QAsyncImage(const QString& url, QObject* parent)
+        : QObject(parent), QImage(), m_url(url)
 {
     if (!m_url.isEmpty()) {
         KIO::TransferJob *job = KIO::get(m_url, KIO::NoReload, KIO::HideProgressInfo);
@@ -38,13 +38,13 @@
     }
 }
 
-void QAsyncPixmap::slotData(KIO::Job *job, const QByteArray& buf)
+void QAsyncImage::slotData(KIO::Job *job, const QByteArray& buf)
 {
     Q_UNUSED(job);
     m_buffer.append(buf);
 }
 
-void QAsyncPixmap::slotDownload(KJob *job)
+void QAsyncImage::slotDownload(KJob *job)
 {
     //kDebug(550) << "DOWNLOAD";
     if (job->error()) {
--- trunk/KDE/kdelibs/knewstuff/knewstuff2/ui/qasyncpixmap.h #952370:952371
@@ -19,7 +19,7 @@
 #ifndef KNEWSTUFF2_UI_QASYNCPIXMAP_H
 #define KNEWSTUFF2_UI_QASYNCPIXMAP_H
 
-#include <QtGui/QPixmap>
+#include <QtGui/QImage>
 #include <QtCore/QObject>
 #include <QtCore/QByteArray>
 
@@ -41,14 +41,14 @@
  *
  * @internal
  */
-class QAsyncPixmap : public QObject, public QPixmap
+class QAsyncImage : public QObject, public QImage
 {
     Q_OBJECT
 public:
-    QAsyncPixmap(const QString& url, QObject* parent);
+    QAsyncImage(const QString& url, QObject* parent);
 
 Q_SIGNALS:
-    void signalLoaded(const QString & url, const QPixmap& pix);
+    void signalLoaded(const QString & url, const QImage& pix);
 
 private Q_SLOTS:
     void slotDownload(KJob *job);
[prev in list] [next in list] [prev in thread] [next in thread] 

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