]> git.sesse.net Git - kdenlive/blobdiff - src/monitormanager.cpp
* Fix aspect ratio of thumbnails to correctly use the project's arpect ratio
[kdenlive] / src / monitormanager.cpp
index 0c5e1a8714c86601897544f15c54ca284b379528..662748e83605cd16c26ed3d7b0bb4a04014399ca 100644 (file)
@@ -49,7 +49,8 @@ void MonitorManager::initMonitors(Monitor *clipMonitor, Monitor *projectMonitor,
 
     m_monitorsList.append(clipMonitor);
     m_monitorsList.append(projectMonitor);
-    m_monitorsList.append(recMonitor);
+    if (recMonitor)
+        m_monitorsList.append(recMonitor);
 }
 
 void MonitorManager::appendMonitor(AbstractMonitor *monitor)
@@ -80,7 +81,7 @@ void MonitorManager::activateMonitor(QString name)
     emit checkColorScopes();
 }
 
-bool MonitorManager::isActive(const QString name) const
+bool MonitorManager::isActive(const QString &name) const
 {
     return m_activeMonitor ? m_activeMonitor->name() == name: false;
 }
@@ -183,6 +184,7 @@ void MonitorManager::slotResetProfiles()
 {
     if (m_blocked) return;
     if (m_projectMonitor == NULL || m_clipMonitor == NULL) return;
+    blockSignals(true);
     QString active = m_activeMonitor ? m_activeMonitor->name() : QString();
     activateMonitor("clip");
     m_clipMonitor->resetProfile(KdenliveSettings::current_profile());
@@ -192,6 +194,9 @@ void MonitorManager::slotResetProfiles()
     m_projectMonitor->updateTimecodeFormat();
     //m_projectMonitor->refreshMonitor(true);
     if (!active.isEmpty()) activateMonitor(active);
+    blockSignals(false);
+    emit raiseMonitor(m_activeMonitor);
+    emit checkColorScopes();
 }
 
 void MonitorManager::slotRefreshCurrentMonitor()
@@ -211,6 +216,11 @@ void MonitorManager::slotUpdateAudioMonitoring()
     }
 }
 
+void MonitorManager::clearScopeSource()
+{
+    emit clearScopes();
+}
+
 void MonitorManager::updateScopeSource()
 {
     emit checkColorScopes();
@@ -218,7 +228,9 @@ void MonitorManager::updateScopeSource()
 
 AbstractRender *MonitorManager::activeRenderer()
 {
-    if (m_activeMonitor) return m_activeMonitor->abstractRender();
+    if (m_activeMonitor) {
+        return m_activeMonitor->abstractRender();
+    }
     return NULL;
 }