[vlmc-devel] [PATCH] Renderer: have quint64 as a pointer of Window Id
Yikai Lu
luyikei.qmltu at gmail.com
Tue Apr 5 11:46:54 CEST 2016
---
src/Gui/preview/PreviewWidget.cpp | 2 +-
src/Renderer/ClipRenderer.cpp | 4 ++--
src/Renderer/GenericRenderer.cpp | 8 +++-----
src/Renderer/GenericRenderer.h | 7 ++-----
src/Renderer/WorkflowRenderer.cpp | 5 ++---
5 files changed, 10 insertions(+), 16 deletions(-)
diff --git a/src/Gui/preview/PreviewWidget.cpp b/src/Gui/preview/PreviewWidget.cpp
index a50e9a9..fb080d8 100644
--- a/src/Gui/preview/PreviewWidget.cpp
+++ b/src/Gui/preview/PreviewWidget.cpp
@@ -71,7 +71,7 @@ PreviewWidget::setRenderer(GenericRenderer *renderer)
// Give the renderer to the ruler
m_ui->rulerWidget->setRenderer( m_renderer );
- m_renderer->setRenderWidget( m_ui->renderWidget );
+ m_renderer->setRenderWidget( reinterpret_cast<quint64>( static_cast<RenderWidget*>( m_ui->renderWidget )->id() ) );
#if defined ( Q_OS_MAC )
/* Releases the NSView in the RenderWidget*/
diff --git a/src/Renderer/ClipRenderer.cpp b/src/Renderer/ClipRenderer.cpp
index 318d6bd..6e86da7 100644
--- a/src/Renderer/ClipRenderer.cpp
+++ b/src/Renderer/ClipRenderer.cpp
@@ -31,7 +31,6 @@
#include "Library/Library.h"
#include "Media/Media.h"
#include "Workflow/MainWorkflow.h"
-#include "Gui/preview/RenderWidget.h"
ClipRenderer::ClipRenderer() :
GenericRenderer(),
@@ -89,7 +88,8 @@ ClipRenderer::startPreview()
delete m_sourceRenderer;
m_sourceRenderer = m_selectedClip->getMedia()->source()->createRenderer( m_eventWatcher );
- m_sourceRenderer->setOutputWidget( (void *) static_cast< RenderWidget* >( m_renderWidget )->id() );
+ if ( m_renderWidgetId != 0 )
+ m_sourceRenderer->setOutputWidget( (void *) m_renderWidgetId );
connect( m_eventWatcher, SIGNAL( stopped() ), this, SLOT( videoStopped() ) );
connect( m_eventWatcher, SIGNAL( paused() ), this, SIGNAL( paused() ) );
diff --git a/src/Renderer/GenericRenderer.cpp b/src/Renderer/GenericRenderer.cpp
index 6ed435a..3456b3e 100644
--- a/src/Renderer/GenericRenderer.cpp
+++ b/src/Renderer/GenericRenderer.cpp
@@ -21,12 +21,12 @@
*****************************************************************************/
#include "GenericRenderer.h"
-#include "preview/RenderWidget.h"
#include <QtGlobal>
GenericRenderer::GenericRenderer()
: m_sourceRenderer( nullptr )
, m_paused( false )
+ , m_renderWidgetId( 0 )
{
m_eventWatcher = new RendererEventWatcher;
}
@@ -37,11 +37,10 @@ GenericRenderer::~GenericRenderer()
delete m_eventWatcher;
}
-#ifdef WITH_GUI
void
-GenericRenderer::setRenderWidget(QWidget *renderWidget)
+GenericRenderer::setRenderWidget( quint64 id )
{
- m_renderWidget = renderWidget;
+ m_renderWidgetId = id;
}
RendererEventWatcher*
@@ -49,4 +48,3 @@ GenericRenderer::eventWatcher()
{
return m_eventWatcher;
}
-#endif
diff --git a/src/Renderer/GenericRenderer.h b/src/Renderer/GenericRenderer.h
index 5cb34f5..cf9a670 100644
--- a/src/Renderer/GenericRenderer.h
+++ b/src/Renderer/GenericRenderer.h
@@ -26,9 +26,6 @@
#include "config.h"
#include <QObject>
-#ifdef WITH_GUI
-# include <QWidget>
-#endif
#include "EffectsEngine/EffectUser.h"
#include "Workflow/Types.h"
@@ -57,7 +54,7 @@ public:
* \param renderWidget The widget to use for render.
* \sa setPreviewLabel( QLabel* )
*/
- void setRenderWidget( QWidget* renderWidget );
+ void setRenderWidget( quint64 id );
#endif
/**
@@ -174,7 +171,7 @@ protected:
*/
bool m_paused;
- QWidget* m_renderWidget;
+ quint64 m_renderWidgetId;
public slots:
/**
diff --git a/src/Renderer/WorkflowRenderer.cpp b/src/Renderer/WorkflowRenderer.cpp
index f50838a..fa8066f 100644
--- a/src/Renderer/WorkflowRenderer.cpp
+++ b/src/Renderer/WorkflowRenderer.cpp
@@ -37,7 +37,6 @@
#include "Backend/IBackend.h"
#include "Backend/ISource.h"
#include "Workflow/MainWorkflow.h"
-#include "Gui/preview/RenderWidget.h"
#include "Settings/Settings.h"
#include "Tools/VlmcDebug.h"
#include "Workflow/Types.h"
@@ -88,8 +87,8 @@ WorkflowRenderer::setupRenderer( quint32 width, quint32 height, double fps, cons
m_sourceRenderer = m_source->createRenderer( m_eventWatcher );
m_sourceRenderer->setName( "WorkflowRenderer" );
m_sourceRenderer->enableMemoryInput( m_esHandler, getLockCallback(), getUnlockCallback() );
- if ( m_renderWidget != nullptr )
- m_sourceRenderer->setOutputWidget( (void *) static_cast< RenderWidget* >( m_renderWidget )->id() );
+ if ( m_renderWidgetId != 0 )
+ m_sourceRenderer->setOutputWidget( (void *) m_renderWidgetId );
}
int
--
1.9.1
More information about the Vlmc-devel
mailing list