From c3cd96285d997d82d1fd64b517f7658d2e10c1b6 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Mardelle Date: Mon, 20 Jul 2009 17:11:57 +0000 Subject: [PATCH] Show image preview in clip properties dialog and disable transcode action when no clip is selected in project tree svn path=/trunk/kdenlive/; revision=3740 --- src/clipproperties.cpp | 7 ++++++- src/projectlist.cpp | 7 +++++++ src/projectlist.h | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/clipproperties.cpp b/src/clipproperties.cpp index 3742d688..6ff00600 100644 --- a/src/clipproperties.cpp +++ b/src/clipproperties.cpp @@ -130,6 +130,9 @@ ClipProperties::ClipProperties(DocClipBase *clip, Timecode tc, double fps, QWidg m_view.image_size->setText(props.value("frame_size")); if (props.contains("transparency")) m_view.image_transparency->setChecked(props.value("transparency").toInt()); + int width = 180.0 * KdenliveSettings::project_display_ratio(); + if (width % 2 == 1) width++; + m_view.clip_thumb->setPixmap(QPixmap(url.path()).scaled(QSize(width, 180), Qt::KeepAspectRatio)); } else if (t == COLOR) { m_view.clip_path->setEnabled(false); m_view.tabWidget->removeTab(METATAB); @@ -499,7 +502,9 @@ void ClipProperties::parseFolder() m_view.slide_info->setText(i18n("%1 images found", m_count)); QDomElement xml = m_clip->toXML(); xml.setAttribute("resource", m_view.clip_path->text() + extension); - QPixmap pix = m_clip->thumbProducer()->getImage(KUrl(m_view.clip_path->text() + extension), 1, 240, 180); + int width = 180.0 * KdenliveSettings::project_display_ratio(); + if (width % 2 == 1) width++; + QPixmap pix = m_clip->thumbProducer()->getImage(KUrl(m_view.clip_path->text() + extension), 1, width, 180); QMap props = m_clip->properties(); m_view.clip_duration->setText(m_tc.getTimecodeFromFrames(props.value("ttl").toInt() * m_count)); m_view.clip_thumb->setPixmap(pix); diff --git a/src/projectlist.cpp b/src/projectlist.cpp index 8668a1b8..bb5f18f0 100644 --- a/src/projectlist.cpp +++ b/src/projectlist.cpp @@ -63,6 +63,7 @@ ProjectList::ProjectList(QWidget *parent) : m_deleteAction(NULL), m_openAction(NULL), m_reloadAction(NULL), + m_transcodeAction(NULL), m_selectedItem(NULL), m_refreshed(false), m_infoQueue(), @@ -164,6 +165,7 @@ void ProjectList::setupGeneratorMenu(QMenu *addMenu, QMenu *transcodeMenu) if (addMenu->isEmpty()) addMenu->setEnabled(false); m_menu->addMenu(transcodeMenu); if (transcodeMenu->isEmpty()) transcodeMenu->setEnabled(false); + m_transcodeAction = transcodeMenu; m_menu->addAction(m_reloadAction); m_menu->addAction(m_editAction); m_menu->addAction(m_openAction); @@ -245,6 +247,7 @@ void ProjectList::slotClipSelected() m_editAction->setEnabled(true); m_deleteAction->setEnabled(true); m_reloadAction->setEnabled(true); + m_transcodeAction->setEnabled(true); if (clip->clipType() == IMAGE && !KdenliveSettings::defaultimageapp().isEmpty()) { m_openAction->setIcon(KIcon(KdenliveSettings::defaultimageapp())); m_openAction->setEnabled(true); @@ -258,6 +261,7 @@ void ProjectList::slotClipSelected() m_deleteAction->setEnabled(false); m_openAction->setEnabled(false); m_reloadAction->setEnabled(false); + m_transcodeAction->setEnabled(false); } } @@ -358,6 +362,7 @@ void ProjectList::slotContextMenu(const QPoint &pos, QTreeWidgetItem *item) m_editAction->setEnabled(enable); m_deleteAction->setEnabled(enable); m_reloadAction->setEnabled(enable); + m_transcodeAction->setEnabled(enable); if (enable) { ProjectItem *clip = static_cast (item); if (clip->clipType() == IMAGE && !KdenliveSettings::defaultimageapp().isEmpty()) { @@ -400,6 +405,7 @@ void ProjectList::slotRemoveClip() m_deleteAction->setEnabled(false); m_openAction->setEnabled(false); m_reloadAction->setEnabled(false); + m_transcodeAction->setEnabled(false); } } @@ -938,6 +944,7 @@ void ProjectList::slotSelectClip(const QString &ix) m_editAction->setEnabled(true); m_deleteAction->setEnabled(true); m_reloadAction->setEnabled(true); + m_transcodeAction->setEnabled(true); if (clip->clipType() == IMAGE && !KdenliveSettings::defaultimageapp().isEmpty()) { m_openAction->setIcon(KIcon(KdenliveSettings::defaultimageapp())); m_openAction->setEnabled(true); diff --git a/src/projectlist.h b/src/projectlist.h index 60e283bf..4deff5c8 100644 --- a/src/projectlist.h +++ b/src/projectlist.h @@ -169,6 +169,7 @@ private: QAction *m_deleteAction; QAction *m_openAction; QAction *m_reloadAction; + QMenu *m_transcodeAction; KdenliveDoc *m_doc; ProjectItem *m_selectedItem; bool m_refreshed; -- 2.39.2