summaryrefslogtreecommitdiffstats
path: root/src/imports/multimedia/qdeclarativecamerafocus.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2021-02-26 14:30:12 +0100
committerLars Knoll <lars.knoll@qt.io>2021-03-16 07:37:45 +0000
commitf202890086fa32222877a8f9f48ae570174bd385 (patch)
treeb0b913bdea52fd80f22b827626f958e40492c688 /src/imports/multimedia/qdeclarativecamerafocus.cpp
parent95dcadf5de41d5b2f385c5bdf547ee673fe83dff (diff)
Clean up focus modes and add manual focus control
Clean up the FocusMode enum and adjust it to what we can support on Apple platforms and Android. Add a focusDistance property to manually set the focus distance. Change-Id: Idddaed006935277a167cec12a91c57f3dc6df6fb Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/imports/multimedia/qdeclarativecamerafocus.cpp')
-rw-r--r--src/imports/multimedia/qdeclarativecamerafocus.cpp39
1 files changed, 17 insertions, 22 deletions
diff --git a/src/imports/multimedia/qdeclarativecamerafocus.cpp b/src/imports/multimedia/qdeclarativecamerafocus.cpp
index 11e106078..02d4995be 100644
--- a/src/imports/multimedia/qdeclarativecamerafocus.cpp
+++ b/src/imports/multimedia/qdeclarativecamerafocus.cpp
@@ -103,7 +103,7 @@ QDeclarativeCameraFocus::QDeclarativeCameraFocus(QCamera *camera, QObject *paren
return;
}
- emit supportedFocusModesChanged();
+ emit supportedFocusModeChanged();
emit supportedFocusPointModesChanged();
});
}
@@ -114,9 +114,6 @@ QDeclarativeCameraFocus::~QDeclarativeCameraFocus() = default;
This property holds the current camera focus mode.
- It's possible to combine multiple QCameraFocus::FocusMode enum values,
- for example QCameraFocus::MacroFocus + QCameraFocus::ContinuousFocus.
-
In automatic focusing modes, the \l focusPointMode
property provides information and control
over how automatic focusing is performed.
@@ -132,28 +129,26 @@ QDeclarativeCameraFocus::~QDeclarativeCameraFocus() = default;
\li Value
\li Description
\row
- \li FocusManual
- \li Manual or fixed focus mode.
+ \li FocusModeAuto
+ \li Continuous auto focus mode.
\row
- \li FocusHyperfocal
- \li Focus to hyperfocal distance, with the maximum depth of field achieved. All objects at distances from half of this distance out to infinity will be acceptably sharp.
+ \li FocusModeAutoNear
+ \li Continuous auto focus, preferring objects near to the camera.
\row
- \li FocusInfinity
- \li Focus strictly to infinity.
+ \li FocusModeAutoFar
+ \li Continuous auto focus, preferring objects far away from the camera.
\row
- \li FocusAuto
- \li One-shot auto focus mode.
+ \li FocusModeHyperfocal
+ \li Focus to hyperfocal distance, with the maximum depth of field achieved. All objects at distances
+ from half of this distance out to infinity will be acceptably sharp.
\row
- \li FocusContinuous
- \li Continuous auto focus mode.
+ \li FocusModeInfinity
+ \li Focus strictly to infinity.
\row
- \li FocusMacro
- \li One shot auto focus to objects close to camera.
+ \li FocusModeManual
+ \li Manual or fixed focus mode.
\endtable
- It's possible to combine multiple Camera::FocusMode values,
- for example Camera.FocusMacro + Camera.FocusContinuous.
-
In automatic focusing modes, the \l focusPointMode property
provides information and control
over how automatic focusing is performed.
@@ -164,14 +159,14 @@ QDeclarativeCameraFocus::FocusMode QDeclarativeCameraFocus::focusMode() const
}
/*!
- \qmlproperty list<FocusMode> CameraFocus::supportedFocusModes
+ \qmlproperty list<FocusMode> CameraFocus::supportedFocusMode
This property holds the supported focus modes of the camera.
\since 5.11
\sa focusMode
*/
-QVariantList QDeclarativeCameraFocus::supportedFocusModes() const
+QVariantList QDeclarativeCameraFocus::supportedFocusMode() const
{
QVariantList supportedModes;
@@ -186,7 +181,7 @@ QVariantList QDeclarativeCameraFocus::supportedFocusModes() const
void QDeclarativeCameraFocus::setFocusMode(QDeclarativeCameraFocus::FocusMode mode)
{
if (mode != focusMode()) {
- m_focus->setFocusMode(QCameraFocus::FocusModes(int(mode)));
+ m_focus->setFocusMode(QCameraFocus::FocusMode(int(mode)));
emit focusModeChanged(focusMode());
}
}