summaryrefslogtreecommitdiffstats
path: root/src/plugins/blackberry/camera/bbcameralockscontrol.h
diff options
context:
space:
mode:
authorTobias Koenig <tobias.koenig.qnx@kdab.com>2013-10-24 12:49:05 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-25 18:51:52 +0200
commit43bc5f65d2c0e909a3b4b9d32da692bc38b3e27a (patch)
tree245d5ff95e163bfa80fe286761a9f9f7d70c1a44 /src/plugins/blackberry/camera/bbcameralockscontrol.h
parent1235fb99101d56694edfa018b4cf6cfae653fa36 (diff)
Blackberry: Improve camera focus handling
Use different state variables for focus/exposure/whitebalance locks and update the exposure and whitebalance variables explicitly, since BB10 doesn't provide a status callback method as for focus. Change-Id: Ie6ba8f6a2a27f317c39994d21be8549c99daef6d Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Diffstat (limited to 'src/plugins/blackberry/camera/bbcameralockscontrol.h')
-rw-r--r--src/plugins/blackberry/camera/bbcameralockscontrol.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/plugins/blackberry/camera/bbcameralockscontrol.h b/src/plugins/blackberry/camera/bbcameralockscontrol.h
index 6c4b2da6b..8257abdbc 100644
--- a/src/plugins/blackberry/camera/bbcameralockscontrol.h
+++ b/src/plugins/blackberry/camera/bbcameralockscontrol.h
@@ -51,6 +51,14 @@ class BbCameraLocksControl : public QCameraLocksControl
{
Q_OBJECT
public:
+ enum LocksApplyMode
+ {
+ IndependentMode,
+ FocusExposureBoundMode,
+ AllBoundMode,
+ FocusOnlyMode
+ };
+
explicit BbCameraLocksControl(BbCameraSession *session, QObject *parent = 0);
QCamera::LockTypes supportedLocks() const Q_DECL_OVERRIDE;
@@ -58,8 +66,19 @@ public:
void searchAndLock(QCamera::LockTypes locks) Q_DECL_OVERRIDE;
void unlock(QCamera::LockTypes locks) Q_DECL_OVERRIDE;
+private Q_SLOTS:
+ void cameraOpened();
+ void focusStatusChanged(int value);
+
private:
BbCameraSession *m_session;
+
+ LocksApplyMode m_locksApplyMode;
+ QCamera::LockStatus m_focusLockStatus;
+ QCamera::LockStatus m_exposureLockStatus;
+ QCamera::LockStatus m_whiteBalanceLockStatus;
+ QCamera::LockTypes m_currentLockTypes;
+ QCamera::LockTypes m_supportedLockTypes;
};
QT_END_NAMESPACE