]> git.sesse.net Git - kdenlive/blobdiff - src/colorscopes/abstractgfxscopewidget.cpp
Reorganize and cleanup build structure
[kdenlive] / src / colorscopes / abstractgfxscopewidget.cpp
index 43a7d81569e5f09be756dc8152cab65ae702ab0f..94f90400a6bba3052219f05412a2269388d35a42 100644 (file)
@@ -8,12 +8,11 @@
  *   (at your option) any later version.                                   *
  ***************************************************************************/
 
-#include "qtconcurrentrun.h"
-
 #include "abstractgfxscopewidget.h"
 #include "renderer.h"
 #include "monitormanager.h"
 
+#include <QtConcurrentRun>
 #include <QFuture>
 #include <QColor>
 #include <QMenu>
@@ -62,17 +61,16 @@ void AbstractGfxScopeWidget::mouseReleaseEvent(QMouseEvent *event)
 void AbstractGfxScopeWidget::slotActiveMonitorChanged()
 {
     if (m_activeRender) {
+        if (m_activeRender == m_manager->activeRenderer()) return;
         bool b = m_activeRender->disconnect(this);
         Q_ASSERT(b);
     }
-
     m_activeRender = m_manager->activeRenderer();
+
+    if (m_activeRender) {
 #ifdef DEBUG_AGSW
     qDebug() << "Active monitor has changed in " << widgetName() << ". Is the clip monitor active now? " << m_activeRender->name();
 #endif
-
-    //b &= connect(m_activeRender, SIGNAL(rendererPosition(int)), this, SLOT(slotRenderZoneUpdated()));
-    if (m_activeRender) {
         bool b = connect(m_activeRender, SIGNAL(frameUpdated(QImage)), this, SLOT(slotRenderZoneUpdated(QImage)));
         Q_ASSERT(b);
     }
@@ -81,6 +79,11 @@ void AbstractGfxScopeWidget::slotActiveMonitorChanged()
     forceUpdate(true);
 }
 
+void AbstractGfxScopeWidget::slotClearMonitor()
+{
+    m_activeRender = NULL;
+}
+
 void AbstractGfxScopeWidget::slotRenderZoneUpdated(QImage frame)
 {
     m_scopeImage = frame;