From 8fcfffae8d06bbfd4b3a182d911adb6b62259098 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Mardelle Date: Thu, 6 Nov 2008 23:24:04 +0000 Subject: [PATCH] Fix tooltips & icon for audio clips when loading a project svn path=/branches/KDE4/; revision=2627 --- src/projectitem.cpp | 21 +++++++++++---------- src/projectlist.cpp | 6 +++++- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/projectitem.cpp b/src/projectitem.cpp index 89ffd9cf..3e79b65c 100644 --- a/src/projectitem.cpp +++ b/src/projectitem.cpp @@ -57,6 +57,7 @@ ProjectItem::ProjectItem(QTreeWidget * parent, DocClipBase *clip) QString name = m_clip->getProperty("name"); if (name.isEmpty()) name = KUrl(m_clip->getProperty("resource")).fileName(); m_clipType = (CLIPTYPE) m_clip->getProperty("type").toInt(); + if (m_clipType != UNKNOWN) slotSetToolTip(); setText(1, name); setText(2, m_clip->description()); if ((m_clip->clipType() == AV || m_clip->clipType() == AUDIO) && KdenliveSettings::audiothumbnails()) m_clip->askForAudioThumbs(); @@ -158,31 +159,31 @@ DocClipBase *ProjectItem::referencedClip() { void ProjectItem::slotSetToolTip() { QString tip = ""; switch (m_clipType) { - case 1: + case AUDIO: tip.append(i18n("Audio clip") + "
" + clipUrl().path()); break; - case 2: + case VIDEO: tip.append(i18n("Mute video clip") + "
" + clipUrl().path()); break; - case 3: + case AV: tip.append(i18n("Video clip") + "
" + clipUrl().path()); break; - case 4: + case COLOR: tip.append(i18n("Color clip")); break; - case 5: + case IMAGE: tip.append(i18n("Image clip") + "
" + clipUrl().path()); break; - case 6: + case TEXT: tip.append(i18n("Text clip")); break; - case 7: + case SLIDESHOW: tip.append(i18n("Slideshow clip")); break; - case 8: + case VIRTUAL: tip.append(i18n("Virtual clip")); break; - case 9: + case PLAYLIST: tip.append(i18n("Playlist clip") + "
" + clipUrl().path()); break; default: @@ -225,8 +226,8 @@ void ProjectItem::setProperties(const QMap < QString, QString > &attributes, con m_clipType = AV; } m_clip->setClipType(m_clipType); + slotSetToolTip(); } - slotSetToolTip(); m_clip->setProperties(attributes); if ((m_clipType == AV || m_clipType == AUDIO) && KdenliveSettings::audiothumbnails()) m_clip->askForAudioThumbs(); diff --git a/src/projectlist.cpp b/src/projectlist.cpp index 2530c2ee..5d9bea01 100644 --- a/src/projectlist.cpp +++ b/src/projectlist.cpp @@ -587,7 +587,11 @@ void ProjectList::slotRefreshClipThumbnail(ProjectItem *item, bool update) { if (!item->referencedClip()) return; int height = 50; int width = (int)(height * m_render->dar()); - QPixmap pix = item->referencedClip()->thumbProducer()->extractImage(item->referencedClip()->getClipThumbFrame(), width, height); + DocClipBase *clip = item->referencedClip(); + if (!clip) slotProcessNextThumbnail(); + QPixmap pix; + if (clip->clipType() == AUDIO) pix = KIcon("audio-x-generic").pixmap(QSize(width, height)); + else pix = item->referencedClip()->thumbProducer()->extractImage(item->referencedClip()->getClipThumbFrame(), width, height); item->setIcon(0, pix); if (update) emit projectModified(); if (!m_thumbnailQueue.isEmpty()) QTimer::singleShot(300, this, SLOT(slotProcessNextThumbnail())); -- 2.39.2