From 9d3ed99ab02271496c0412fe97ad89575492582c Mon Sep 17 00:00:00 2001 From: Simon Paul St James Date: Tue, 27 Jan 2009 19:50:21 +0000 Subject: Initial import of Matthias's draft patch for adding video and audio previewing (similar to the file dialog) to Dolphin's metadata panel. Since Phonon is currently in-process only with the memory/ stability issues that come with this, this might have to be disabled by default - we'll see how it goes. Thanks, Matthias! CCMAIL:kretz@kde.org CCMAIL:peter.penz@gmx.at svn path=/trunk/KDE/kdebase/apps/; revision=917389 --- src/panels/information/informationpanel.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/panels/information/informationpanel.cpp') diff --git a/src/panels/information/informationpanel.cpp b/src/panels/information/informationpanel.cpp index a77a39908..35d29869e 100644 --- a/src/panels/information/informationpanel.cpp +++ b/src/panels/information/informationpanel.cpp @@ -35,6 +35,7 @@ #include #include +#include #include #include #include @@ -47,8 +48,12 @@ #include "settings/dolphinsettings.h" #include "metadatawidget.h" +#include "phononwidget.h" #include "metatextlabel.h" #include "pixmapviewer.h" +#include +#include +#include InformationPanel::InformationPanel(QWidget* parent) : Panel(parent), @@ -60,6 +65,8 @@ InformationPanel::InformationPanel(QWidget* parent) : m_urlCandidate(), m_fileItem(), m_selection(), + m_infoLabel(0), + m_phononWidget(0), m_nameLabel(0), m_preview(0), m_metaDataWidget(0), @@ -354,6 +361,9 @@ void InformationPanel::cancelRequest() void InformationPanel::showMetaInfo() { + delete m_phononWidget; + m_phononWidget = 0; + m_metaTextLabel->clear(); if (showMultipleSelectionInfo()) { @@ -413,6 +423,16 @@ void InformationPanel::showMetaInfo() if (m_metaDataWidget != 0) { m_metaDataWidget->setFile(item.targetUrl()); } + + if (Phonon::BackendCapabilities::isMimeTypeAvailable(item.mimetype())) { + PhononWidget *p = new PhononWidget(this); + p->setUrl(item.url()); + m_phononWidget = p; + + QVBoxLayout *l = qobject_cast(layout()); + Q_ASSERT(l); + l->insertWidget(3, m_phononWidget); + } } } -- cgit v1.3