void ThumbnailGenerator::cacheThumbnail() { mImage.setText("Thumb::URI" , 0, mOriginalUri); mImage.setText("Thumb::MTime" , 0, QString::number(mOriginalTime)); mImage.setText("Thumb::Size" , 0, QString::number(mOriginalFileSize)); mImage.setText("Thumb::Mimetype" , 0, mOriginalMimeType); mImage.setText("Thumb::Image::Width" , 0, QString::number(mOriginalWidth)); mImage.setText("Thumb::Image::Height", 0, QString::number(mOriginalHeight)); mImage.setText("Software" , 0, "Gwenview"); emit thumbnailReadyToBeCached(mThumbnailPath, mImage); }
//------------------------------------------------------------------------ // // ThumbnailLoadJob implementation // //------------------------------------------------------------------------ ThumbnailLoadJob::ThumbnailLoadJob(const KFileItemList& items, ThumbnailGroup::Enum group) : KIO::Job() , mState(STATE_NEXTTHUMB) , mThumbnailGroup(group) { LOG(this); // Make sure we have a place to store our thumbnails QString thumbnailDir = ThumbnailLoadJob::thumbnailBaseDir(mThumbnailGroup); KStandardDirs::makeDir(thumbnailDir, 0700); // Look for images and store the items in our todo list Q_ASSERT(!items.empty()); mItems = items; mCurrentItem = KFileItem(); connect(&mThumbnailThread, SIGNAL(done(QImage, QSize)), SLOT(thumbnailReady(QImage, QSize)), Qt::QueuedConnection); connect(&mThumbnailThread, SIGNAL(thumbnailReadyToBeCached(QString, QImage)), sThumbnailCache, SLOT(queueThumbnail(QString, QImage)), Qt::QueuedConnection); }