From ff13434daedec0fba905d3eb462a907872bbd563 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Mardelle Date: Thu, 25 Dec 2008 09:49:23 +0000 Subject: [PATCH] GUI fixes (enable / disable) actions when they should be available or not. svn path=/branches/KDE4/; revision=2822 --- src/clipproperties.cpp | 27 +++++++++++++++++++++- src/clipproperties.h | 2 ++ src/slideshowclip.cpp | 7 ++++-- src/widgets/clipproperties_ui.ui | 39 ++++++++++++-------------------- 4 files changed, 47 insertions(+), 28 deletions(-) diff --git a/src/clipproperties.cpp b/src/clipproperties.cpp index ee08ce24..6d02576f 100644 --- a/src/clipproperties.cpp +++ b/src/clipproperties.cpp @@ -163,10 +163,15 @@ ClipProperties::ClipProperties(DocClipBase *clip, Timecode tc, double fps, QWidg m_view.luma_file->addItem(KIcon(folder + '/' + fname), fname, folder + '/' + fname); } + slotEnableLuma(m_view.slide_fade->isChecked()); + slotEnableLumaFile(m_view.slide_luma->isChecked()); + if (!lumaFile.isEmpty()) { m_view.slide_luma->setChecked(true); m_view.luma_file->setCurrentIndex(m_view.luma_file->findData(lumaFile)); - } + } else m_view.luma_file->setEnabled(false); + connect(m_view.slide_fade, SIGNAL(stateChanged(int)), this, SLOT(slotEnableLuma(int))); + connect(m_view.slide_luma, SIGNAL(stateChanged(int)), this, SLOT(slotEnableLumaFile(int))); connect(m_view.image_type, SIGNAL(currentIndexChanged(int)), this, SLOT(parseFolder())); } else if (t != AUDIO) { @@ -216,6 +221,26 @@ ClipProperties::ClipProperties(DocClipBase *clip, Timecode tc, double fps, QWidg adjustSize(); } +void ClipProperties::slotEnableLuma(int state) { + bool enable = false; + if (state == Qt::Checked) enable = true; + m_view.luma_duration->setEnabled(enable); + m_view.slide_luma->setEnabled(enable); + if (enable) { + m_view.luma_file->setEnabled(m_view.slide_luma->isChecked()); + } else m_view.luma_file->setEnabled(false); + m_view.label_softness->setEnabled(m_view.slide_luma->isChecked() && enable); + m_view.luma_softness->setEnabled(m_view.label_softness->isEnabled()); +} + +void ClipProperties::slotEnableLumaFile(int state) { + bool enable = false; + if (state == Qt::Checked) enable = true; + m_view.luma_file->setEnabled(enable); + m_view.luma_softness->setEnabled(enable); + m_view.label_softness->setEnabled(enable); +} + void ClipProperties::slotFillMarkersList() { m_view.markers_list->clear(); QList < CommentedTime > marks = m_clip->commentedSnapMarkers(); diff --git a/src/clipproperties.h b/src/clipproperties.h index 929cc75b..6e486fe0 100644 --- a/src/clipproperties.h +++ b/src/clipproperties.h @@ -44,6 +44,8 @@ private slots: void slotDeleteMarker(); void slotFillMarkersList(); void slotCheckMaxLength(); + void slotEnableLuma(int state); + void slotEnableLumaFile(int state); private: Ui::ClipProperties_UI m_view; diff --git a/src/slideshowclip.cpp b/src/slideshowclip.cpp index 55f63fd1..90651110 100644 --- a/src/slideshowclip.cpp +++ b/src/slideshowclip.cpp @@ -83,8 +83,11 @@ void SlideshowClip::slotEnableLuma(int state) { if (state == Qt::Checked) enable = true; m_view.luma_duration->setEnabled(enable); m_view.luma_fade->setEnabled(enable); - if (enable) m_view.luma_file->setEnabled(m_view.luma_fade->isChecked()); - else m_view.luma_file->setEnabled(false); + if (enable) { + m_view.luma_file->setEnabled(m_view.luma_fade->isChecked()); + } else m_view.luma_file->setEnabled(false); + m_view.label_softness->setEnabled(m_view.luma_fade->isChecked() && enable); + m_view.luma_softness->setEnabled(m_view.label_softness->isEnabled()); } void SlideshowClip::slotEnableLumaFile(int state) { diff --git a/src/widgets/clipproperties_ui.ui b/src/widgets/clipproperties_ui.ui index cbf4bfb8..27462589 100644 --- a/src/widgets/clipproperties_ui.ui +++ b/src/widgets/clipproperties_ui.ui @@ -369,7 +369,7 @@ - + Softness @@ -493,6 +493,19 @@ Advanced + + + + Qt::Vertical + + + + 20 + 19 + + + + @@ -533,19 +546,6 @@ - - - - Qt::Vertical - - - - 20 - 19 - - - - @@ -581,17 +581,6 @@ - clip_force_ar - clip_ar - label_4 - label - clip_vindex - label_2 - clip_aindex - clip_force_threads - clip_force_vindex - clip_force_aindex - clip_threads -- 2.39.2