X-Git-Url: http://cgit.sxemacs.org/?a=blobdiff_plain;f=declarative%2Fvideoplayer.h;h=d944b3b499cfe7ce53aa7dad38fae0c967356666;hb=1f7e1a5a0cf588f60f5be6c0c61fd5a8659aec95;hp=388b6212397289a12a21a9662933493287d1df8f;hpb=40393bf9e36aac18cb907a71dee9e826577c73c3;p=harmattan%2Fcameraplus diff --git a/declarative/videoplayer.h b/declarative/videoplayer.h index 388b621..d944b3b 100644 --- a/declarative/videoplayer.h +++ b/declarative/videoplayer.h @@ -23,13 +23,22 @@ #ifndef VIDEO_PLAYER_H #define VIDEO_PLAYER_H +#if defined(QT4) #include +#elif defined(QT5) +#include +#endif #include class CameraConfig; -class QtCamGraphicsViewfinder; +class QtCamViewfinderRenderer; +#if defined(QT4) class VideoPlayer : public QDeclarativeItem { +#elif defined(QT5) +class VideoPlayer : public QQuickPaintedItem { +#endif + Q_OBJECT Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged); @@ -40,12 +49,24 @@ class VideoPlayer : public QDeclarativeItem { Q_ENUMS(State); public: + +#if defined(QT4) VideoPlayer(QDeclarativeItem *parent = 0); +#elif defined(QT5) + VideoPlayer(QQuickItem *parent = 0); +#endif + ~VideoPlayer(); virtual void componentComplete(); virtual void classBegin(); +#if defined(QT4) + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); +#elif defined(QT5) + void paint(QPainter *painter); +#endif + QUrl source() const; void setSource(const QUrl& source); @@ -81,13 +102,16 @@ signals: protected: void geometryChanged(const QRectF& newGeometry, const QRectF& oldGeometry); +private slots: + void updateRequested(); + private: static gboolean bus_call(GstBus *bus, GstMessage *msg, gpointer data); bool setState(const State& state); CameraConfig *m_config; - QtCamGraphicsViewfinder *m_vf; + QtCamViewfinderRenderer *m_renderer; QUrl m_url; GstElement *m_bin;