]> git.sesse.net Git - kdenlive/commitdiff
Fix scaling options in render dialog being activated/deactived inappropriately
authorTill Theato <root@ttill.de>
Mon, 28 Jun 2010 07:00:16 +0000 (07:00 +0000)
committerTill Theato <root@ttill.de>
Mon, 28 Jun 2010 07:00:16 +0000 (07:00 +0000)
svn path=/trunk/kdenlive/; revision=4545

src/renderwidget.cpp
src/renderwidget.h

index bdfcb7cf0a568791ee67a5b285484de819aa02a1..81d657c2672dd6eb7b22df87fc075ece2bb20b21 100644 (file)
@@ -199,9 +199,8 @@ RenderWidget::RenderWidget(const QString &projectfolder, QWidget * parent) :
     }
 
     QDBusConnectionInterface* interface = QDBusConnection::sessionBus().interface();
-    if (!interface || (!interface->isServiceRegistered("org.kde.ksmserver") && !interface->isServiceRegistered("org.gnome.SessionManager"))) {
+    if (!interface || (!interface->isServiceRegistered("org.kde.ksmserver") && !interface->isServiceRegistered("org.gnome.SessionManager")))
         m_view.shutdown->setEnabled(false);
-    }
 
     focusFirstVisibleItem();
 }
@@ -956,11 +955,12 @@ void RenderWidget::refreshCategory()
         m_view.open_dvd->setVisible(false);
         m_view.create_chapter->setVisible(false);
     }
-    if (destination == "websites") m_view.open_browser->setVisible(true);
-    else m_view.open_browser->setVisible(false);
-    if (!destination.isEmpty() && QString("dvd websites audioonly").contains(destination))
-        m_view.rescale->setEnabled(false);
-    else m_view.rescale->setEnabled(true);
+
+    if (destination == "websites")
+        m_view.open_browser->setVisible(true);
+    else
+        m_view.open_browser->setVisible(false);
+
     // hide groups that are not in the correct destination
     for (int i = 0; i < m_renderCategory.count(); i++) {
         sizeItem = m_renderCategory.at(i);
@@ -987,8 +987,10 @@ void RenderWidget::refreshCategory()
         m_view.size_list->setEnabled(true);
     }
 
-    if (m_view.format_list->count() > 1) m_view.format_list->setVisible(true);
-    else m_view.format_list->setVisible(false);
+    if (m_view.format_list->count() > 1)
+        m_view.format_list->setVisible(true);
+    else
+        m_view.format_list->setVisible(false);
     refreshView();
 }
 
@@ -1112,10 +1114,6 @@ KUrl RenderWidget::filenameWithExtension(KUrl url, QString extension)
     return KUrl(directory + filename);
 }
 
-
-/**
- * Called when a new format or size has been selected.
- */
 void RenderWidget::refreshParams()
 {
     // Format not available (e.g. codec not installed); Disable start button
@@ -1130,13 +1128,13 @@ void RenderWidget::refreshParams()
     QString extension = item->data(ExtensionRole).toString();
     m_view.advanced_params->setPlainText(params);
     QString destination = m_view.destination_list->itemData(m_view.destination_list->currentIndex()).toString();
-    if (params.contains(" s=") || destination == "audioonly") {
+    if (params.contains(" s=") || params.startsWith("s=") || destination == "audioonly") {
         // profile has a fixed size, do not allow resize
         m_view.rescale->setEnabled(false);
         m_view.rescale_box->setEnabled(false);
     } else {
         m_view.rescale->setEnabled(true);
-        m_view.rescale_box->setEnabled(true);
+        m_view.rescale_box->setEnabled(m_view.rescale->isChecked());
     }
     KUrl url = filenameWithExtension(m_view.out_file->url(), extension);
     m_view.out_file->setUrl(url);
index 5014cde4d0c4229c94b6f4561ee63f67d466554e..a9988695c0f98df23540656cfbdf381c6b6f4c89 100644 (file)
@@ -122,6 +122,8 @@ private slots:
     void slotUpdateButtons();
     void refreshView();
     void refreshCategory();
+
+    /** @brief Updates available options when a new format has been selected. */
     void refreshParams();
     void slotSaveProfile();
     void slotEditProfile();