Updated ProxSpace

This commit is contained in:
Gator96100 2016-10-31 22:04:38 +01:00
commit 7d4bfb6fe4
40881 changed files with 3752088 additions and 4038573 deletions

View file

@ -0,0 +1,136 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QEGLIMAGETEXTURESURFACE_P_H
#define QEGLIMAGETEXTURESURFACE_P_H
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
//
#include <qtmultimediawidgetdefs.h>
#include <QtCore/qsize.h>
#include <QtGui/qimage.h>
#include <QtGui/qmatrix4x4.h>
#include <QtGui/qpaintengine.h>
#include <QtOpenGL/qglshaderprogram.h>
#include <qabstractvideosurface.h>
#include <qvideosurfaceformat.h>
#include <qvideoframe.h>
QT_BEGIN_NAMESPACE
class QGLContext;
class QGLShaderProgram;
class QPainterVideoSurface;
class QEglImageTextureSurface : public QAbstractVideoSurface
{
Q_OBJECT
public:
explicit QEglImageTextureSurface(QObject *parent = 0);
~QEglImageTextureSurface();
QList<QVideoFrame::PixelFormat> supportedPixelFormats(
QAbstractVideoBuffer::HandleType handleType = QAbstractVideoBuffer::NoHandle) const;
bool start(const QVideoSurfaceFormat &format);
void stop();
bool present(const QVideoFrame &frame);
int brightness() const;
void setBrightness(int brightness);
int contrast() const;
void setContrast(int contrast);
int hue() const;
void setHue(int hue);
int saturation() const;
void setSaturation(int saturation);
bool isReady() const;
void setReady(bool ready);
void paint(QPainter *painter, const QRectF &target, const QRectF &source = QRectF(0, 0, 1, 1));
const QGLContext *glContext() const;
void setGLContext(QGLContext *context);
bool isOverlayEnabled() const;
void setOverlayEnabled(bool enabled);
QRect displayRect() const;
void setDisplayRect(const QRect &rect);
public Q_SLOTS:
void viewportDestroyed();
Q_SIGNALS:
void frameChanged();
private:
QGLContext *m_context;
QGLShaderProgram *m_program;
QVideoFrame m_frame;
QVideoFrame::PixelFormat m_pixelFormat;
QVideoSurfaceFormat::Direction m_scanLineDirection;
QSize m_frameSize;
QRect m_sourceRect;
bool m_ready;
QRect m_viewport;
QRect m_displayRect;
QColor m_colorKey;
QPainterVideoSurface *m_fallbackSurface;
bool m_fallbackSurfaceActive;
};
QT_END_NAMESPACE
#endif

View file

@ -0,0 +1,175 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QPAINTERVIDEOSURFACE_P_H
#define QPAINTERVIDEOSURFACE_P_H
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
//
#include <qtmultimediawidgetdefs.h>
#include <QtCore/qsize.h>
#include <QtGui/qimage.h>
#include <QtGui/qmatrix4x4.h>
#include <QtGui/qpaintengine.h>
#include <qabstractvideosurface.h>
#include <qvideoframe.h>
QT_BEGIN_NAMESPACE
class QGLContext;
QT_END_NAMESPACE
QT_USE_NAMESPACE
QT_BEGIN_NAMESPACE
class QVideoSurfacePainter
{
public:
virtual ~QVideoSurfacePainter();
virtual QList<QVideoFrame::PixelFormat> supportedPixelFormats(
QAbstractVideoBuffer::HandleType handleType) const = 0;
virtual bool isFormatSupported(const QVideoSurfaceFormat &format) const = 0;
virtual QAbstractVideoSurface::Error start(const QVideoSurfaceFormat &format) = 0;
virtual void stop() = 0;
virtual QAbstractVideoSurface::Error setCurrentFrame(const QVideoFrame &frame) = 0;
virtual QAbstractVideoSurface::Error paint(
const QRectF &target, QPainter *painter, const QRectF &source) = 0;
virtual void updateColors(int brightness, int contrast, int hue, int saturation) = 0;
virtual void viewportDestroyed() {}
};
class Q_AUTOTEST_EXPORT QPainterVideoSurface : public QAbstractVideoSurface
{
Q_OBJECT
public:
explicit QPainterVideoSurface(QObject *parent = 0);
~QPainterVideoSurface();
QList<QVideoFrame::PixelFormat> supportedPixelFormats(
QAbstractVideoBuffer::HandleType handleType = QAbstractVideoBuffer::NoHandle) const;
bool isFormatSupported(const QVideoSurfaceFormat &format) const;
bool start(const QVideoSurfaceFormat &format);
void stop();
bool present(const QVideoFrame &frame);
int brightness() const;
void setBrightness(int brightness);
int contrast() const;
void setContrast(int contrast);
int hue() const;
void setHue(int hue);
int saturation() const;
void setSaturation(int saturation);
bool isReady() const;
void setReady(bool ready);
void paint(QPainter *painter, const QRectF &target, const QRectF &source = QRectF(0, 0, 1, 1));
#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_1_CL) && !defined(QT_OPENGL_ES_1)
const QGLContext *glContext() const;
void setGLContext(QGLContext *context);
enum ShaderType
{
NoShaders = 0x00,
FragmentProgramShader = 0x01,
GlslShader = 0x02
};
Q_DECLARE_FLAGS(ShaderTypes, ShaderType)
ShaderTypes supportedShaderTypes() const;
ShaderType shaderType() const;
void setShaderType(ShaderType type);
#endif
public Q_SLOTS:
void viewportDestroyed();
Q_SIGNALS:
void frameChanged();
private:
void createPainter();
QVideoSurfacePainter *m_painter;
#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_1_CL) && !defined(QT_OPENGL_ES_1)
QGLContext *m_glContext;
ShaderTypes m_shaderTypes;
ShaderType m_shaderType;
#endif
int m_brightness;
int m_contrast;
int m_hue;
int m_saturation;
QVideoFrame::PixelFormat m_pixelFormat;
QSize m_frameSize;
QRect m_sourceRect;
bool m_colorsDirty;
bool m_ready;
};
#if !defined(QT_NO_OPENGL) && !defined(QT_OPENGL_ES_1_CL) && !defined(QT_OPENGL_ES_1)
Q_DECLARE_OPERATORS_FOR_FLAGS(QPainterVideoSurface::ShaderTypes)
#endif
QT_END_NAMESPACE
#endif

View file

@ -0,0 +1,275 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QVIDEOWIDGET_P_H
#define QVIDEOWIDGET_P_H
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
//
#include <qtmultimediawidgetdefs.h>
#include "qvideowidget.h"
#ifndef QT_NO_OPENGL
#include <QGLWidget>
#endif
#include "qpaintervideosurface_p.h"
#include <QtCore/qpointer.h>
QT_BEGIN_NAMESPACE
class QMediaService;
class QVideoWidgetControlInterface
{
public:
virtual ~QVideoWidgetControlInterface() {}
virtual void setBrightness(int brightness) = 0;
virtual void setContrast(int contrast) = 0;
virtual void setHue(int hue) = 0;
virtual void setSaturation(int saturation) = 0;
virtual void setFullScreen(bool fullScreen) = 0;
virtual Qt::AspectRatioMode aspectRatioMode() const = 0;
virtual void setAspectRatioMode(Qt::AspectRatioMode mode) = 0;
};
class QVideoWidgetBackend : public QObject, public QVideoWidgetControlInterface
{
Q_OBJECT
public:
virtual QSize sizeHint() const = 0;
virtual void showEvent() = 0;
virtual void hideEvent(QHideEvent *event) = 0;
virtual void resizeEvent(QResizeEvent *event) = 0;
virtual void moveEvent(QMoveEvent *event) = 0;
virtual void paintEvent(QPaintEvent *event) = 0;
};
class QVideoWidgetControl;
class QVideoWidgetControlBackend : public QObject, public QVideoWidgetControlInterface
{
Q_OBJECT
public:
QVideoWidgetControlBackend(QMediaService *service, QVideoWidgetControl *control, QWidget *widget);
void releaseControl();
void setBrightness(int brightness);
void setContrast(int contrast);
void setHue(int hue);
void setSaturation(int saturation);
void setFullScreen(bool fullScreen);
Qt::AspectRatioMode aspectRatioMode() const;
void setAspectRatioMode(Qt::AspectRatioMode mode);
private:
QMediaService *m_service;
QVideoWidgetControl *m_widgetControl;
};
class QVideoRendererControl;
class QRendererVideoWidgetBackend : public QVideoWidgetBackend
{
Q_OBJECT
public:
QRendererVideoWidgetBackend(QMediaService *service, QVideoRendererControl *control, QWidget *widget);
~QRendererVideoWidgetBackend();
void releaseControl();
void clearSurface();
void setBrightness(int brightness);
void setContrast(int contrast);
void setHue(int hue);
void setSaturation(int saturation);
void setFullScreen(bool fullScreen);
Qt::AspectRatioMode aspectRatioMode() const;
void setAspectRatioMode(Qt::AspectRatioMode mode);
QSize sizeHint() const;
void showEvent();
void hideEvent(QHideEvent *event);
void resizeEvent(QResizeEvent *event);
void moveEvent(QMoveEvent *event);
void paintEvent(QPaintEvent *event);
Q_SIGNALS:
void fullScreenChanged(bool fullScreen);
void brightnessChanged(int brightness);
void contrastChanged(int contrast);
void hueChanged(int hue);
void saturationChanged(int saturation);
private Q_SLOTS:
void formatChanged(const QVideoSurfaceFormat &format);
void frameChanged();
private:
void updateRects();
QMediaService *m_service;
QVideoRendererControl *m_rendererControl;
QWidget *m_widget;
QPainterVideoSurface *m_surface;
Qt::AspectRatioMode m_aspectRatioMode;
QRect m_boundingRect;
QRectF m_sourceRect;
QSize m_nativeSize;
bool m_updatePaintDevice;
};
class QVideoWindowControl;
class QWindowVideoWidgetBackend : public QVideoWidgetBackend
{
Q_OBJECT
public:
QWindowVideoWidgetBackend(QMediaService *service, QVideoWindowControl *control, QWidget *widget);
~QWindowVideoWidgetBackend();
void releaseControl();
void setBrightness(int brightness);
void setContrast(int contrast);
void setHue(int hue);
void setSaturation(int saturation);
void setFullScreen(bool fullScreen);
Qt::AspectRatioMode aspectRatioMode() const;
void setAspectRatioMode(Qt::AspectRatioMode mode);
QSize sizeHint() const;
void showEvent();
void hideEvent(QHideEvent *event);
void resizeEvent(QResizeEvent *event);
void moveEvent(QMoveEvent *event);
void paintEvent(QPaintEvent *event);
#if defined(Q_WS_WIN)
bool winEvent(MSG *message, long *result);
#endif
private:
QMediaService *m_service;
QVideoWindowControl *m_windowControl;
QWidget *m_widget;
QSize m_pixelAspectRatio;
};
class QMediaService;
class QVideoOutputControl;
class QVideoWidgetPrivate
{
Q_DECLARE_PUBLIC(QVideoWidget)
public:
QVideoWidgetPrivate()
: q_ptr(0)
, mediaObject(0)
, service(0)
, widgetBackend(0)
, windowBackend(0)
, rendererBackend(0)
, currentControl(0)
, currentBackend(0)
, brightness(0)
, contrast(0)
, hue(0)
, saturation(0)
, aspectRatioMode(Qt::KeepAspectRatio)
, nonFullScreenFlags(0)
, wasFullScreen(false)
{
}
QVideoWidget *q_ptr;
QPointer<QMediaObject> mediaObject;
QMediaService *service;
QVideoWidgetControlBackend *widgetBackend;
QWindowVideoWidgetBackend *windowBackend;
QRendererVideoWidgetBackend *rendererBackend;
QVideoWidgetControlInterface *currentControl;
QVideoWidgetBackend *currentBackend;
int brightness;
int contrast;
int hue;
int saturation;
Qt::AspectRatioMode aspectRatioMode;
Qt::WindowFlags nonFullScreenFlags;
bool wasFullScreen;
bool createWidgetBackend();
bool createWindowBackend();
bool createRendererBackend();
void setCurrentControl(QVideoWidgetControlInterface *control);
void clearService();
void _q_serviceDestroyed();
void _q_brightnessChanged(int brightness);
void _q_contrastChanged(int contrast);
void _q_hueChanged(int hue);
void _q_saturationChanged(int saturation);
void _q_fullScreenChanged(bool fullScreen);
void _q_dimensionsChanged();
};
QT_END_NAMESPACE
#endif

View file

@ -0,0 +1 @@
#include "qcameraviewfinder.h"

View file

@ -0,0 +1 @@
#include "qgraphicsvideoitem.h"

View file

@ -0,0 +1 @@
#include "qvideowidget.h"

View file

@ -0,0 +1 @@
#include "qvideowidgetcontrol.h"

View file

@ -0,0 +1,10 @@
#ifndef QT_QTMULTIMEDIAWIDGETS_MODULE_H
#define QT_QTMULTIMEDIAWIDGETS_MODULE_H
#include <QtMultimediaWidgets/QtMultimediaWidgetsDepends>
#include "qcameraviewfinder.h"
#include "qgraphicsvideoitem.h"
#include "qtmultimediawidgetdefs.h"
#include "qvideowidget.h"
#include "qvideowidgetcontrol.h"
#include "qtmultimediawidgetsversion.h"
#endif

View file

@ -0,0 +1,7 @@
/* This file was generated by qmake with the info from <root>/src/multimediawidgets/multimediawidgets.pro. */
#ifdef __cplusplus /* create empty PCH in C mode */
#include <QtCore/QtCore>
#include <QtGui/QtGui>
#include <QtMultimedia/QtMultimedia>
#include <QtWidgets/QtWidgets>
#endif

View file

@ -0,0 +1 @@
#include "qtmultimediawidgetsversion.h"

View file

@ -0,0 +1,74 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QCAMERAVIEWFINDER_H
#define QCAMERAVIEWFINDER_H
#include <QtCore/qstringlist.h>
#include <QtCore/qpair.h>
#include <QtCore/qsize.h>
#include <QtCore/qpoint.h>
#include <QtCore/qrect.h>
#include <QtMultimedia/qmediacontrol.h>
#include <QtMultimedia/qmediaobject.h>
#include <QtMultimedia/qmediaservice.h>
#include <QtMultimediaWidgets/qvideowidget.h>
QT_BEGIN_NAMESPACE
class QCamera;
class QCameraViewfinderPrivate;
class Q_MULTIMEDIAWIDGETS_EXPORT QCameraViewfinder : public QVideoWidget
{
Q_OBJECT
public:
explicit QCameraViewfinder(QWidget *parent = Q_NULLPTR);
~QCameraViewfinder();
QMediaObject *mediaObject() const;
protected:
bool setMediaObject(QMediaObject *object);
private:
Q_DISABLE_COPY(QCameraViewfinder)
Q_DECLARE_PRIVATE(QCameraViewfinder)
};
QT_END_NAMESPACE
#endif // QCAMERA_H

View file

@ -0,0 +1,101 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QGRAPHICSVIDEOITEM_H
#define QGRAPHICSVIDEOITEM_H
#include <QtWidgets/qgraphicsitem.h>
#include <QtMultimediaWidgets/qvideowidget.h>
#include <QtMultimedia/qmediabindableinterface.h>
QT_BEGIN_NAMESPACE
class QVideoSurfaceFormat;
QT_END_NAMESPACE
QT_BEGIN_NAMESPACE
class QGraphicsVideoItemPrivate;
class Q_MULTIMEDIAWIDGETS_EXPORT QGraphicsVideoItem : public QGraphicsObject, public QMediaBindableInterface
{
Q_OBJECT
Q_INTERFACES(QMediaBindableInterface)
Q_PROPERTY(QMediaObject* mediaObject READ mediaObject WRITE setMediaObject)
Q_PROPERTY(Qt::AspectRatioMode aspectRatioMode READ aspectRatioMode WRITE setAspectRatioMode)
Q_PROPERTY(QPointF offset READ offset WRITE setOffset)
Q_PROPERTY(QSizeF size READ size WRITE setSize)
Q_PROPERTY(QSizeF nativeSize READ nativeSize NOTIFY nativeSizeChanged)
public:
explicit QGraphicsVideoItem(QGraphicsItem *parent = Q_NULLPTR);
~QGraphicsVideoItem();
QMediaObject *mediaObject() const;
Qt::AspectRatioMode aspectRatioMode() const;
void setAspectRatioMode(Qt::AspectRatioMode mode);
QPointF offset() const;
void setOffset(const QPointF &offset);
QSizeF size() const;
void setSize(const QSizeF &size);
QSizeF nativeSize() const;
QRectF boundingRect() const;
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = Q_NULLPTR);
Q_SIGNALS:
void nativeSizeChanged(const QSizeF &size);
protected:
void timerEvent(QTimerEvent *event);
QVariant itemChange(GraphicsItemChange change, const QVariant &value);
bool setMediaObject(QMediaObject *object);
QGraphicsVideoItemPrivate *d_ptr;
private:
Q_DECLARE_PRIVATE(QGraphicsVideoItem)
Q_PRIVATE_SLOT(d_func(), void _q_present())
Q_PRIVATE_SLOT(d_func(), void _q_updateNativeSize())
Q_PRIVATE_SLOT(d_func(), void _q_serviceDestroyed())
};
QT_END_NAMESPACE
#endif

View file

@ -0,0 +1,65 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
//
#ifndef QTMULTIMEDIAWIDGETS_P_H
#define QTMULTIMEDIAWIDGETS_P_H
#include <QtCore/qglobal.h>
QT_BEGIN_NAMESPACE
#ifndef QT_STATIC
# if defined(QT_BUILD_MULTIMEDIAWIDGETS_LIB)
# define Q_MULTIMEDIAWIDGETS_EXPORT Q_DECL_EXPORT
# else
# define Q_MULTIMEDIAWIDGETS_EXPORT Q_DECL_IMPORT
# endif
#else
# define Q_MULTIMEDIAWIDGETS_EXPORT
#endif
QT_END_NAMESPACE
#endif // QMULTIMEDIAWIDGETS_P_H

View file

@ -0,0 +1,9 @@
/* This file was generated by syncqt. */
#ifndef QT_QTMULTIMEDIAWIDGETS_VERSION_H
#define QT_QTMULTIMEDIAWIDGETS_VERSION_H
#define QTMULTIMEDIAWIDGETS_VERSION_STR "5.6.1"
#define QTMULTIMEDIAWIDGETS_VERSION 0x050601
#endif // QT_QTMULTIMEDIAWIDGETS_VERSION_H

View file

@ -0,0 +1,125 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QVIDEOWIDGET_H
#define QVIDEOWIDGET_H
#include <QtWidgets/qwidget.h>
#include <QtMultimediaWidgets/qtmultimediawidgetdefs.h>
#include <QtMultimedia/qmediabindableinterface.h>
QT_BEGIN_NAMESPACE
class QMediaObject;
class QVideoWidgetPrivate;
class Q_MULTIMEDIAWIDGETS_EXPORT QVideoWidget : public QWidget, public QMediaBindableInterface
{
Q_OBJECT
Q_INTERFACES(QMediaBindableInterface)
Q_PROPERTY(QMediaObject* mediaObject READ mediaObject WRITE setMediaObject)
Q_PROPERTY(bool fullScreen READ isFullScreen WRITE setFullScreen NOTIFY fullScreenChanged)
Q_PROPERTY(Qt::AspectRatioMode aspectRatioMode READ aspectRatioMode WRITE setAspectRatioMode)
Q_PROPERTY(int brightness READ brightness WRITE setBrightness NOTIFY brightnessChanged)
Q_PROPERTY(int contrast READ contrast WRITE setContrast NOTIFY contrastChanged)
Q_PROPERTY(int hue READ hue WRITE setHue NOTIFY hueChanged)
Q_PROPERTY(int saturation READ saturation WRITE setSaturation NOTIFY saturationChanged)
public:
explicit QVideoWidget(QWidget *parent = Q_NULLPTR);
~QVideoWidget();
QMediaObject *mediaObject() const;
#ifdef Q_QDOC
bool isFullScreen() const;
#endif
Qt::AspectRatioMode aspectRatioMode() const;
int brightness() const;
int contrast() const;
int hue() const;
int saturation() const;
QSize sizeHint() const;
public Q_SLOTS:
void setFullScreen(bool fullScreen);
void setAspectRatioMode(Qt::AspectRatioMode mode);
void setBrightness(int brightness);
void setContrast(int contrast);
void setHue(int hue);
void setSaturation(int saturation);
Q_SIGNALS:
void fullScreenChanged(bool fullScreen);
void brightnessChanged(int brightness);
void contrastChanged(int contrast);
void hueChanged(int hue);
void saturationChanged(int saturation);
protected:
bool event(QEvent *event);
void showEvent(QShowEvent *event);
void hideEvent(QHideEvent *event);
void resizeEvent(QResizeEvent *event);
void moveEvent(QMoveEvent *event);
void paintEvent(QPaintEvent *event);
bool setMediaObject(QMediaObject *object);
#if defined(Q_WS_WIN)
bool winEvent(MSG *message, long *result);
#endif
QVideoWidget(QVideoWidgetPrivate &dd, QWidget *parent);
QVideoWidgetPrivate *d_ptr;
private:
Q_DECLARE_PRIVATE(QVideoWidget)
Q_PRIVATE_SLOT(d_func(), void _q_serviceDestroyed())
Q_PRIVATE_SLOT(d_func(), void _q_brightnessChanged(int))
Q_PRIVATE_SLOT(d_func(), void _q_contrastChanged(int))
Q_PRIVATE_SLOT(d_func(), void _q_hueChanged(int))
Q_PRIVATE_SLOT(d_func(), void _q_saturationChanged(int))
Q_PRIVATE_SLOT(d_func(), void _q_fullScreenChanged(bool))
Q_PRIVATE_SLOT(d_func(), void _q_dimensionsChanged())
};
QT_END_NAMESPACE
#endif

View file

@ -0,0 +1,91 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL21$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see http://www.qt.io/terms-conditions. For further
** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file. Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** As a special exception, The Qt Company gives you certain additional
** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QVIDEOWIDGETCONTROL_H
#define QVIDEOWIDGETCONTROL_H
#include <QtMultimediaWidgets/qvideowidget.h>
#include <QtMultimedia/qmediacontrol.h>
#include <QtWidgets/qwidget.h>
QT_BEGIN_NAMESPACE
class QVideoWidgetControlPrivate;
class Q_MULTIMEDIAWIDGETS_EXPORT QVideoWidgetControl : public QMediaControl
{
Q_OBJECT
public:
virtual ~QVideoWidgetControl();
virtual QWidget *videoWidget() = 0;
virtual Qt::AspectRatioMode aspectRatioMode() const = 0;
virtual void setAspectRatioMode(Qt::AspectRatioMode mode) = 0;
virtual bool isFullScreen() const = 0;
virtual void setFullScreen(bool fullScreen) = 0;
virtual int brightness() const = 0;
virtual void setBrightness(int brightness) = 0;
virtual int contrast() const = 0;
virtual void setContrast(int contrast) = 0;
virtual int hue() const = 0;
virtual void setHue(int hue) = 0;
virtual int saturation() const = 0;
virtual void setSaturation(int saturation) = 0;
Q_SIGNALS:
void fullScreenChanged(bool fullScreen);
void brightnessChanged(int brightness);
void contrastChanged(int contrast);
void hueChanged(int hue);
void saturationChanged(int saturation);
protected:
explicit QVideoWidgetControl(QObject *parent = Q_NULLPTR);
};
#define QVideoWidgetControl_iid "org.qt-project.qt.videowidgetcontrol/5.0"
Q_MEDIA_DECLARE_CONTROL(QVideoWidgetControl, QVideoWidgetControl_iid)
QT_END_NAMESPACE
#endif