+void ToolTipManager::startPreviewJob()
+{
+ m_generatingPreview = true;
+ KIO::PreviewJob* job = KIO::filePreview(KFileItemList() << m_item, 256, 256);
+
+ connect(job, SIGNAL(gotPreview(const KFileItem&, const QPixmap&)),
+ this, SLOT(setPreviewPix(const KFileItem&, const QPixmap&)));
+ connect(job, SIGNAL(failed(const KFileItem&)),
+ this, SLOT(previewFailed()));
+}
+
+
+void ToolTipManager::setPreviewPix(const KFileItem& item,
+ const QPixmap& pixmap)
+{
+ if ((m_item.url() != item.url()) || pixmap.isNull()) {
+ // an old preview or an invalid preview has been received
+ previewFailed();
+ } else {
+ m_previewPixmap = pixmap;
+ m_generatingPreview = false;
+ }
+}
+
+void ToolTipManager::previewFailed()
+{
+ m_generatingPreview = false;
+}
+
+
+void ToolTipManager::showToolTip(const QPixmap& pixmap)