Changed QCamera::captureMode property to QFlags

This enables the expression of extra camera modes like
viewfinder only or capture during video recording.

Change-Id: Ie02fdeef5eb7fd6fc2f133c1afb0141e37c22b06
Reviewed-by: Mithra Pattison <mithra.pattison@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
This commit is contained in:
Dmytro Poplavskiy
2012-01-12 16:27:34 +10:00
committed by Qt by Nokia
parent a6268601c9
commit 53d71baed3
22 changed files with 88 additions and 83 deletions

View File

@@ -338,7 +338,7 @@ void Camera::stopCamera()
void Camera::updateCaptureMode()
{
int tabIndex = ui->captureWidget->currentIndex();
QCamera::CaptureMode captureMode = tabIndex == 0 ? QCamera::CaptureStillImage : QCamera::CaptureVideo;
QCamera::CaptureModes captureMode = tabIndex == 0 ? QCamera::CaptureStillImage : QCamera::CaptureVideo;
if (camera->isCaptureModeSupported(captureMode))
camera->setCaptureMode(captureMode);

View File

@@ -134,7 +134,7 @@ QDeclarativeCamera::QDeclarativeCamera(QObject *parent) :
m_focus = new QDeclarativeCameraFocus(m_camera, this);
m_imageProcessing = new QDeclarativeCameraImageProcessing(m_camera, this);
connect(m_camera, SIGNAL(captureModeChanged(QCamera::CaptureMode)), this, SIGNAL(captureModeChanged()));
connect(m_camera, SIGNAL(captureModeChanged(QCamera::CaptureModes)), this, SIGNAL(captureModeChanged()));
connect(m_camera, SIGNAL(lockStatusChanged(QCamera::LockStatus,QCamera::LockChangeReason)), this, SIGNAL(lockStatusChanged()));
connect(m_camera, SIGNAL(stateChanged(QCamera::State)), this, SLOT(_q_updateState(QCamera::State)));
@@ -179,14 +179,14 @@ QString QDeclarativeCamera::errorString() const
return m_camera->errorString();
}
QDeclarativeCamera::CaptureMode QDeclarativeCamera::captureMode() const
QDeclarativeCamera::CaptureModes QDeclarativeCamera::captureMode() const
{
return QDeclarativeCamera::CaptureMode(m_camera->captureMode());
return QDeclarativeCamera::CaptureModes(int(m_camera->captureMode()));
}
void QDeclarativeCamera::setCaptureMode(QDeclarativeCamera::CaptureMode mode)
void QDeclarativeCamera::setCaptureMode(QDeclarativeCamera::CaptureModes mode)
{
m_camera->setCaptureMode(QCamera::CaptureMode(mode));
m_camera->setCaptureMode(QCamera::CaptureModes(int(mode)));
}

View File

@@ -79,7 +79,7 @@ class QDeclarativeCamera : public QObject, public QDeclarativeParserStatus
Q_OBJECT
Q_INTERFACES(QDeclarativeParserStatus)
Q_PROPERTY(CaptureMode captureMode READ captureMode WRITE setCaptureMode NOTIFY captureModeChanged)
Q_PROPERTY(CaptureModes captureMode READ captureMode WRITE setCaptureMode NOTIFY captureModeChanged)
Q_PROPERTY(State cameraState READ cameraState WRITE setCameraState NOTIFY cameraStateChanged)
Q_PROPERTY(LockStatus lockStatus READ lockStatus NOTIFY lockStatusChanged)
Q_PROPERTY(QString errorString READ errorString NOTIFY errorChanged)
@@ -114,6 +114,7 @@ public:
CaptureStillImage = QCamera::CaptureStillImage,
CaptureVideo = QCamera::CaptureVideo
};
Q_DECLARE_FLAGS(CaptureModes, CaptureMode)
enum State
{
@@ -207,7 +208,7 @@ public:
QDeclarativeCameraFocus *focus() { return m_focus; }
QDeclarativeCameraImageProcessing *imageProcessing() { return m_imageProcessing; }
CaptureMode captureMode() const;
CaptureModes captureMode() const;
State cameraState() const;
Error error() const;
@@ -222,7 +223,7 @@ public:
qreal digitalZoom() const;
public Q_SLOTS:
void setCaptureMode(CaptureMode mode);
void setCaptureMode(QDeclarativeCamera::CaptureModes mode);
void start();
void stop();

View File

@@ -64,7 +64,7 @@ public:
qRegisterMetaType<QCamera::Error>("QCamera::Error");
qRegisterMetaType<QCamera::State>("QCamera::State");
qRegisterMetaType<QCamera::Status>("QCamera::Status");
qRegisterMetaType<QCamera::CaptureMode>("QCamera::CaptureMode");
qRegisterMetaType<QCamera::CaptureModes>("QCamera::CaptureModes");
qRegisterMetaType<QCamera::LockType>("QCamera::LockType");
qRegisterMetaType<QCamera::LockStatus>("QCamera::LockStatus");
qRegisterMetaType<QCamera::LockChangeReason>("QCamera::LockChangeReason");
@@ -246,8 +246,8 @@ void QCameraPrivate::initControls()
if (control) {
q->connect(control, SIGNAL(stateChanged(QCamera::State)), q, SLOT(_q_updateState(QCamera::State)));
q->connect(control, SIGNAL(statusChanged(QCamera::Status)), q, SIGNAL(statusChanged(QCamera::Status)));
q->connect(control, SIGNAL(captureModeChanged(QCamera::CaptureMode)),
q, SIGNAL(captureModeChanged(QCamera::CaptureMode)));
q->connect(control, SIGNAL(captureModeChanged(QCamera::CaptureModes)),
q, SIGNAL(captureModeChanged(QCamera::CaptureModes)));
q->connect(control, SIGNAL(error(int,QString)), q, SLOT(_q_error(int,QString)));
}
@@ -538,7 +538,7 @@ QString QCamera::errorString() const
/*!
Returns true if the capture \a mode is suported.
*/
bool QCamera::isCaptureModeSupported(QCamera::CaptureMode mode) const
bool QCamera::isCaptureModeSupported(QCamera::CaptureModes mode) const
{
return d_func()->control ? d_func()->control->isCaptureModeSupported(mode) : false;
}
@@ -556,12 +556,12 @@ bool QCamera::isCaptureModeSupported(QCamera::CaptureMode mode) const
and when the camera is ready to QCamera::ActiveStatus.
*/
QCamera::CaptureMode QCamera::captureMode() const
QCamera::CaptureModes QCamera::captureMode() const
{
return d_func()->control ? d_func()->control->captureMode() : QCamera::CaptureStillImage;
}
void QCamera::setCaptureMode(QCamera::CaptureMode mode)
void QCamera::setCaptureMode(QCamera::CaptureModes mode)
{
Q_D(QCamera);
@@ -866,6 +866,7 @@ void QCamera::unlock()
/*!
\enum QCamera::CaptureMode
\value CaptureViewfinder Camera is only configured to display viewfinder.
\value CaptureStillImage Camera is configured for still frames capture.
\value CaptureVideo Camera is configured for video capture.
*/
@@ -969,7 +970,7 @@ void QCamera::unlock()
*/
/*!
\fn void QCamera::captureModeChanged(QCamera::CaptureMode mode)
\fn void QCamera::captureModeChanged(QCamera::CaptureModes mode)
Signals the capture \a mode has changed.
*/

View File

@@ -76,7 +76,7 @@ class Q_MULTIMEDIA_EXPORT QCamera : public QMediaObject
Q_OBJECT
Q_PROPERTY(QCamera::State state READ state NOTIFY stateChanged)
Q_PROPERTY(QCamera::Status status READ status NOTIFY statusChanged)
Q_PROPERTY(QCamera::CaptureMode captureMode READ captureMode WRITE setCaptureMode NOTIFY captureModeChanged)
Q_PROPERTY(QCamera::CaptureModes captureMode READ captureMode WRITE setCaptureMode NOTIFY captureModeChanged)
Q_PROPERTY(QCamera::LockStatus lockStatus READ lockStatus NOTIFY lockStatusChanged)
Q_ENUMS(Status)
@@ -105,9 +105,11 @@ public:
enum CaptureMode
{
CaptureStillImage,
CaptureVideo
CaptureViewfinder = 0,
CaptureStillImage = 0x01,
CaptureVideo = 0x02
};
Q_DECLARE_FLAGS(CaptureModes, CaptureMode)
enum Error
{
@@ -155,8 +157,8 @@ public:
State state() const;
Status status() const;
CaptureMode captureMode() const;
bool isCaptureModeSupported(CaptureMode mode) const;
CaptureModes captureMode() const;
bool isCaptureModeSupported(CaptureModes mode) const;
QCameraExposure *exposure() const;
QCameraFocus *focus() const;
@@ -176,7 +178,7 @@ public:
QCamera::LockStatus lockStatus(QCamera::LockType lock) const;
public Q_SLOTS:
void setCaptureMode(QCamera::CaptureMode mode);
void setCaptureMode(QCamera::CaptureModes mode);
void load();
void unload();
@@ -192,7 +194,7 @@ public Q_SLOTS:
Q_SIGNALS:
void stateChanged(QCamera::State);
void captureModeChanged(QCamera::CaptureMode);
void captureModeChanged(QCamera::CaptureModes);
void statusChanged(QCamera::Status);
void locked();
@@ -221,6 +223,7 @@ Q_DECLARE_METATYPE(QCamera::State)
Q_DECLARE_METATYPE(QCamera::Status)
Q_DECLARE_METATYPE(QCamera::Error)
Q_DECLARE_METATYPE(QCamera::CaptureMode)
Q_DECLARE_METATYPE(QCamera::CaptureModes)
Q_DECLARE_METATYPE(QCamera::LockType)
Q_DECLARE_METATYPE(QCamera::LockStatus)
Q_DECLARE_METATYPE(QCamera::LockChangeReason)

View File

@@ -145,13 +145,13 @@ QCameraControl::~QCameraControl()
*/
/*!
\fn Camera::CaptureMode QCameraControl::captureMode() const = 0
\fn Camera::CaptureModes QCameraControl::captureMode() const = 0
Returns the current capture mode.
*/
/*!
\fn void QCameraControl::setCaptureMode(QCamera::CaptureMode mode) = 0;
\fn void QCameraControl::setCaptureMode(QCamera::CaptureModes mode) = 0;
Sets the current capture \a mode.
@@ -166,13 +166,13 @@ QCameraControl::~QCameraControl()
*/
/*!
\fn bool QCameraControl::isCaptureModeSupported(QCamera::CaptureMode mode) const = 0;
\fn bool QCameraControl::isCaptureModeSupported(QCamera::CaptureModes mode) const = 0;
Returns true if the capture \a mode is suported.
*/
/*!
\fn QCameraControl::captureModeChanged(QCamera::CaptureMode mode)
\fn QCameraControl::captureModeChanged(QCamera::CaptureModes mode)
Signal emitted when the camera capture \a mode changes.
*/

View File

@@ -73,9 +73,9 @@ public:
virtual QCamera::Status status() const = 0;
virtual QCamera::CaptureMode captureMode() const = 0;
virtual void setCaptureMode(QCamera::CaptureMode) = 0;
virtual bool isCaptureModeSupported(QCamera::CaptureMode mode) const = 0;
virtual QCamera::CaptureModes captureMode() const = 0;
virtual void setCaptureMode(QCamera::CaptureModes) = 0;
virtual bool isCaptureModeSupported(QCamera::CaptureModes mode) const = 0;
virtual bool canChangeProperty(PropertyChangeType changeType, QCamera::Status status) const = 0;
@@ -83,7 +83,7 @@ Q_SIGNALS:
void stateChanged(QCamera::State);
void statusChanged(QCamera::Status);
void error(int error, const QString &errorString);
void captureModeChanged(QCamera::CaptureMode);
void captureModeChanged(QCamera::CaptureModes);
protected:
QCameraControl(QObject* parent = 0);

View File

@@ -71,7 +71,7 @@ void DSCameraControl::setState(QCamera::State state)
}
}
bool DSCameraControl::isCaptureModeSupported(QCamera::CaptureMode mode) const
bool DSCameraControl::isCaptureModeSupported(QCamera::CaptureModes mode) const
{
bool bCaptureSupported = false;
switch (mode) {

View File

@@ -64,8 +64,8 @@ public:
void stop();
QCamera::State state() const;
QCamera::CaptureMode captureMode() const { return m_captureMode; }
void setCaptureMode(QCamera::CaptureMode mode)
QCamera::CaptureModes captureMode() const { return m_captureMode; }
void setCaptureMode(QCamera::CaptureModes mode)
{
if (m_captureMode != mode) {
m_captureMode = mode;
@@ -76,13 +76,13 @@ public:
void setState(QCamera::State state);
QCamera::Status status() const { return QCamera::UnavailableStatus; }
bool isCaptureModeSupported(QCamera::CaptureMode mode) const;
bool isCaptureModeSupported(QCamera::CaptureModes mode) const;
bool canChangeProperty(PropertyChangeType /* changeType */, QCamera::Status /* status */) const {return false; }
private:
DSCameraSession *m_session;
DSCameraService *m_service;
QCamera::CaptureMode m_captureMode;
QCamera::CaptureModes m_captureMode;
};
QT_END_NAMESPACE

View File

@@ -98,12 +98,12 @@ CameraBinControl::~CameraBinControl()
{
}
QCamera::CaptureMode CameraBinControl::captureMode() const
QCamera::CaptureModes CameraBinControl::captureMode() const
{
return m_session->captureMode();
}
void CameraBinControl::setCaptureMode(QCamera::CaptureMode mode)
void CameraBinControl::setCaptureMode(QCamera::CaptureModes mode)
{
if (m_session->captureMode() != mode) {
m_session->setCaptureMode(mode);
@@ -118,7 +118,7 @@ void CameraBinControl::setCaptureMode(QCamera::CaptureMode mode)
}
}
bool CameraBinControl::isCaptureModeSupported(QCamera::CaptureMode mode) const
bool CameraBinControl::isCaptureModeSupported(QCamera::CaptureModes mode) const
{
return mode == QCamera::CaptureStillImage || mode == QCamera::CaptureVideo;
}

View File

@@ -66,10 +66,10 @@ public:
QCamera::Status status() const { return m_status; }
QCamera::CaptureMode captureMode() const;
void setCaptureMode(QCamera::CaptureMode mode);
QCamera::CaptureModes captureMode() const;
void setCaptureMode(QCamera::CaptureModes mode);
bool isCaptureModeSupported(QCamera::CaptureMode mode) const;
bool isCaptureModeSupported(QCamera::CaptureModes mode) const;
bool canChangeProperty(PropertyChangeType changeType, QCamera::Status status) const;
bool viewfinderColorSpaceConversion() const;

View File

@@ -401,7 +401,7 @@ void CameraBinSession::captureImage(int requestId, const QString &fileName)
m_imageFileName = actualFileName;
}
void CameraBinSession::setCaptureMode(QCamera::CaptureMode mode)
void CameraBinSession::setCaptureMode(QCamera::CaptureModes mode)
{
m_captureMode = mode;
@@ -427,7 +427,7 @@ bool CameraBinSession::setOutputLocation(const QUrl& sink)
return true;
}
QDir CameraBinSession::defaultDir(QCamera::CaptureMode mode) const
QDir CameraBinSession::defaultDir(QCamera::CaptureModes mode) const
{
QStringList dirCandidates;
@@ -1073,7 +1073,7 @@ static bool resolutionLessThan(const QSize &r1, const QSize &r2)
QList<QSize> CameraBinSession::supportedResolutions(QPair<int,int> rate,
bool *continuous,
QCamera::CaptureMode mode) const
QCamera::CaptureModes mode) const
{
QList<QSize> res;

View File

@@ -99,15 +99,15 @@ public:
CameraRole cameraRole() const;
QList< QPair<int,int> > supportedFrameRates(const QSize &frameSize, bool *continuous) const;
QList<QSize> supportedResolutions( QPair<int,int> rate, bool *continuous, QCamera::CaptureMode mode) const;
QList<QSize> supportedResolutions(QPair<int,int> rate, bool *continuous, QCamera::CaptureModes mode) const;
QCamera::CaptureMode captureMode() { return m_captureMode; }
void setCaptureMode(QCamera::CaptureMode mode);
QCamera::CaptureModes captureMode() { return m_captureMode; }
void setCaptureMode(QCamera::CaptureModes mode);
QUrl outputLocation() const;
bool setOutputLocation(const QUrl& sink);
QDir defaultDir(QCamera::CaptureMode mode) const;
QDir defaultDir(QCamera::CaptureModes mode) const;
QString generateFileName(const QString &prefix, const QDir &dir, const QString &ext) const;
CameraBinAudioEncoder *audioEncodeControl() const { return m_audioEncodeControl; }
@@ -188,7 +188,7 @@ private:
bool m_muted;
bool m_busy;
QCamera::CaptureMode m_captureMode;
QCamera::CaptureModes m_captureMode;
QMap<QByteArray, QVariant> m_metaData;
QGstreamerElementFactory *m_audioInputFactory;

View File

@@ -70,7 +70,7 @@ QGstreamerCameraControl::~QGstreamerCameraControl()
{
}
void QGstreamerCameraControl::setCaptureMode(QCamera::CaptureMode mode)
void QGstreamerCameraControl::setCaptureMode(QCamera::CaptureModes mode)
{
if (m_captureMode == mode)
return;

View File

@@ -63,10 +63,10 @@ public:
QCamera::Status status() const { return m_status; }
QCamera::CaptureMode captureMode() const { return m_captureMode; }
void setCaptureMode(QCamera::CaptureMode mode);
QCamera::CaptureModes captureMode() const { return m_captureMode; }
void setCaptureMode(QCamera::CaptureModes mode);
bool isCaptureModeSupported(QCamera::CaptureMode mode) const
bool isCaptureModeSupported(QCamera::CaptureModes mode) const
{
return mode == QCamera::CaptureStillImage || mode == QCamera::CaptureVideo;
}
@@ -87,7 +87,7 @@ private slots:
private:
QCamera::CaptureMode m_captureMode;
QCamera::CaptureModes m_captureMode;
QGstreamerCaptureSession *m_session;
QCamera::State m_state;
QCamera::Status m_status;

View File

@@ -55,12 +55,12 @@ SimulatorCameraControl::~SimulatorCameraControl()
{
}
QCamera::CaptureMode SimulatorCameraControl::captureMode() const
QCamera::CaptureModes SimulatorCameraControl::captureMode() const
{
return m_session->captureMode();
}
void SimulatorCameraControl::setCaptureMode(QCamera::CaptureMode mode)
void SimulatorCameraControl::setCaptureMode(QCamera::CaptureModes mode)
{
if (m_session->captureMode() != mode) {
m_session->setCaptureMode(mode);
@@ -168,7 +168,7 @@ bool SimulatorCameraControl::canChangeProperty(PropertyChangeType changeType, QC
}
}
bool SimulatorCameraControl::isCaptureModeSupported(QCamera::CaptureMode mode) const
bool SimulatorCameraControl::isCaptureModeSupported(QCamera::CaptureModes mode) const
{
return mode == QCamera::CaptureStillImage;
}

View File

@@ -64,10 +64,10 @@ public:
QCamera::Status status() const;
QCamera::CaptureMode captureMode() const;
void setCaptureMode(QCamera::CaptureMode mode);
QCamera::CaptureModes captureMode() const;
void setCaptureMode(QCamera::CaptureModes mode);
bool isCaptureModeSupported(QCamera::CaptureMode mode) const;
bool isCaptureModeSupported(QCamera::CaptureModes mode) const;
bool canChangeProperty(PropertyChangeType changeType, QCamera::Status status) const;

View File

@@ -86,12 +86,12 @@ int SimulatorCameraSession::captureImage(const QString &fileName)
return mRequestId;
}
void SimulatorCameraSession::setCaptureMode(QCamera::CaptureMode mode)
void SimulatorCameraSession::setCaptureMode(QCamera::CaptureModes mode)
{
mCaptureMode = mode;
}
QDir SimulatorCameraSession::defaultDir(QCamera::CaptureMode) const
QDir SimulatorCameraSession::defaultDir(QCamera::CaptureModes) const
{
const QString temp = QDir::tempPath();
if (QFileInfo(temp).isWritable())
@@ -126,7 +126,7 @@ void SimulatorCameraSession::setViewfinder(QObject *viewfinder)
}
}
QCamera::CaptureMode SimulatorCameraSession::captureMode()
QCamera::CaptureModes SimulatorCameraSession::captureMode()
{
return mCaptureMode;
}

View File

@@ -58,10 +58,10 @@ public:
SimulatorCameraSession(QObject *parent);
~SimulatorCameraSession();
QCamera::CaptureMode captureMode();
void setCaptureMode(QCamera::CaptureMode mode);
QCamera::CaptureModes captureMode();
void setCaptureMode(QCamera::CaptureModes mode);
QDir defaultDir(QCamera::CaptureMode mode) const;
QDir defaultDir(QCamera::CaptureModes mode) const;
QString generateFileName(const QString &prefix, const QDir &dir, const QString &ext) const;
void setImage(const QImage *image);
@@ -82,7 +82,7 @@ signals:
void viewfinderChanged();
private:
QCamera::CaptureMode mCaptureMode;
QCamera::CaptureModes mCaptureMode;
QObject *mViewfinder;
const QImage *mImage;

View File

@@ -233,7 +233,7 @@ void tst_QCameraBackend::testCaptureMode()
QSignalSpy errorSignal(&camera, SIGNAL(error(QCamera::Error)));
QSignalSpy stateChangedSignal(&camera, SIGNAL(stateChanged(QCamera::State)));
QSignalSpy captureModeSignal(&camera, SIGNAL(captureModeChanged(QCamera::CaptureMode)));
QSignalSpy captureModeSignal(&camera, SIGNAL(captureModeChanged(QCamera::CaptureModes)));
QCOMPARE(camera.captureMode(), QCamera::CaptureStillImage);
@@ -246,7 +246,7 @@ void tst_QCameraBackend::testCaptureMode()
camera.setCaptureMode(QCamera::CaptureVideo);
QCOMPARE(camera.captureMode(), QCamera::CaptureVideo);
QTRY_COMPARE(captureModeSignal.size(), 1);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureMode>(), QCamera::CaptureVideo);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureModes>(), QCamera::CaptureVideo);
captureModeSignal.clear();
camera.load();
@@ -257,12 +257,12 @@ void tst_QCameraBackend::testCaptureMode()
//it should be possible to switch capture mode in Loaded state
camera.setCaptureMode(QCamera::CaptureStillImage);
QTRY_COMPARE(captureModeSignal.size(), 1);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureMode>(), QCamera::CaptureStillImage);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureModes>(), QCamera::CaptureStillImage);
captureModeSignal.clear();
camera.setCaptureMode(QCamera::CaptureVideo);
QTRY_COMPARE(captureModeSignal.size(), 1);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureMode>(), QCamera::CaptureVideo);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureModes>(), QCamera::CaptureVideo);
captureModeSignal.clear();
camera.start();
@@ -280,7 +280,7 @@ void tst_QCameraBackend::testCaptureMode()
QVERIFY2(stateChangedSignal.isEmpty(), "camera should not change the state during capture mode changes");
QCOMPARE(captureModeSignal.size(), 1);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureMode>(), QCamera::CaptureStillImage);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureModes>(), QCamera::CaptureStillImage);
captureModeSignal.clear();
camera.setCaptureMode(QCamera::CaptureVideo);
@@ -292,7 +292,7 @@ void tst_QCameraBackend::testCaptureMode()
QVERIFY2(stateChangedSignal.isEmpty(), "camera should not change the state during capture mode changes");
QCOMPARE(captureModeSignal.size(), 1);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureMode>(), QCamera::CaptureVideo);
QCOMPARE(captureModeSignal.last().first().value<QCamera::CaptureModes>(), QCamera::CaptureVideo);
captureModeSignal.clear();
camera.stop();

View File

@@ -1123,7 +1123,7 @@ void tst_QCamera::testConstructorWithDefaultProvider()
void tst_QCamera::testCaptureModeChanged_signal()
{
MockCameraControl *m_cameraControl= new MockCameraControl(this);
QSignalSpy spy(m_cameraControl, SIGNAL(captureModeChanged(QCamera::CaptureMode)));
QSignalSpy spy(m_cameraControl, SIGNAL(captureModeChanged(QCamera::CaptureModes)));
QVERIFY(spy.size() == 0);
m_cameraControl->setCaptureMode(QCamera::CaptureVideo);
@@ -1331,7 +1331,7 @@ void tst_QCamera::testUnlockWithType()
QVERIFY(lockStatus == QCamera::Unlocked);
}
/* Test case for signal captureModeChanged(QCamera::CaptureMode) */
/* Test case for signal captureModeChanged(QCamera::CaptureModes) */
void tst_QCamera::testCaptureModeChangedSignal()
{
MockCameraService service;
@@ -1339,16 +1339,16 @@ void tst_QCamera::testCaptureModeChangedSignal()
QCamera camera(0, provider);
QVERIFY(camera.captureMode() == QCamera::CaptureStillImage);
qRegisterMetaType<QCamera::CaptureMode>("QCamera::CaptureMode");
qRegisterMetaType<QCamera::CaptureModes>("QCamera::CaptureModes");
/* Spy the signal */
QSignalSpy lockCaptureModeChangedSignal(&camera, SIGNAL(captureModeChanged(QCamera::CaptureMode)));
QSignalSpy lockCaptureModeChangedSignal(&camera, SIGNAL(captureModeChanged(QCamera::CaptureModes)));
/* set the capture mode and Verify if the signal is emitted */
camera.setCaptureMode(QCamera::CaptureVideo);
QVERIFY(camera.captureMode() == QCamera::CaptureVideo);
QCOMPARE(lockCaptureModeChangedSignal.count(), 1);
QCamera::CaptureMode lockCaptureMode = qvariant_cast<QCamera::CaptureMode >(lockCaptureModeChangedSignal.at(0).at(0));
QCamera::CaptureModes lockCaptureMode = qvariant_cast<QCamera::CaptureModes >(lockCaptureModeChangedSignal.at(0).at(0));
QVERIFY(lockCaptureMode == QCamera::CaptureVideo);
}

View File

@@ -89,8 +89,8 @@ public:
QCamera::Status status() const { return m_status; }
QCamera::CaptureMode captureMode() const { return m_captureMode; }
void setCaptureMode(QCamera::CaptureMode mode)
QCamera::CaptureModes captureMode() const { return m_captureMode; }
void setCaptureMode(QCamera::CaptureModes mode)
{
if (m_captureMode != mode) {
if (m_state == QCamera::ActiveState && !m_propertyChangesSupported)
@@ -100,7 +100,7 @@ public:
}
}
bool isCaptureModeSupported(QCamera::CaptureMode mode) const
bool isCaptureModeSupported(QCamera::CaptureModes mode) const
{
return mode == QCamera::CaptureStillImage || mode == QCamera::CaptureVideo;
}
@@ -135,7 +135,7 @@ public:
}
QCamera::State m_state;
QCamera::CaptureMode m_captureMode;
QCamera::CaptureModes m_captureMode;
QCamera::Status m_status;
bool m_propertyChangesSupported;
};