18 #include "graphicsvideowidget.h"
19 #include "graphicsvideosurface_p.h"
20 #include "../../QGlib/signal.h"
25 GraphicsVideoWidget::GraphicsVideoWidget(QGraphicsItem *parent, Qt::WindowFlags wFlags)
26 : QGraphicsWidget(parent, wFlags)
28 setFlag(QGraphicsItem::ItemHasNoContents,
false);
31 GraphicsVideoWidget::~GraphicsVideoWidget()
36 GraphicsVideoSurface *GraphicsVideoWidget::surface()
const
38 return m_surface.data();
41 void GraphicsVideoWidget::setSurface(GraphicsVideoSurface *surface)
44 m_surface.data()->d->items.remove(
this);
50 m_surface.data()->d->items.insert(
this);
60 if (!m_surface || m_surface.data()->d->videoSink.isNull() ||
61 widget != m_surface.data()->d->view->viewport()
63 painter->fillRect(r, Qt::black);
65 QGlib::emit<void>(m_surface.data()->d->videoSink,
"paint",
66 (
void*)painter, r.x(), r.y(), r.width(), r.height());