summaryrefslogtreecommitdiffstats
path: root/src/imports
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2021-02-26 16:36:47 +0100
committerLars Knoll <lars.knoll@qt.io>2021-03-16 07:38:01 +0000
commitd57879c3e2fde7a4992d6c2c171e2e3ae3f91b35 (patch)
tree36e2b0255fd1c18f0e7f40e6f512fed03759d7fe /src/imports
parentf202890086fa32222877a8f9f48ae570174bd385 (diff)
Remove QCameraFocus::focusPointMode property
It doesn't make a whole lot of sense to have this. The only thing that we can properly support is setting a focus point, but that doesn't require all the additional API here. Add support for retrieving the current focus point of the camera if the camera support it. Change-Id: I3ef31db8f0bfeb9d7e5d4e84ee8614637779a2c5 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/imports')
-rw-r--r--src/imports/multimedia/plugins.qmltypes33
-rw-r--r--src/imports/multimedia/qdeclarativecamera_p.h8
-rw-r--r--src/imports/multimedia/qdeclarativecamerafocus.cpp80
-rw-r--r--src/imports/multimedia/qdeclarativecamerafocus_p.h17
4 files changed, 4 insertions, 134 deletions
diff --git a/src/imports/multimedia/plugins.qmltypes b/src/imports/multimedia/plugins.qmltypes
index c19995431..09c1d39a7 100644
--- a/src/imports/multimedia/plugins.qmltypes
+++ b/src/imports/multimedia/plugins.qmltypes
@@ -613,15 +613,6 @@ Module {
}
}
Enum {
- name: "FocusPointMode"
- values: {
- "FocusPointAuto": 0,
- "FocusPointCenter": 1,
- "FocusPointFaceDetection": 2,
- "FocusPointCustom": 3
- }
- }
- Enum {
name: "Availability"
values: {
"Available": 0,
@@ -970,29 +961,14 @@ Module {
"FocusManual": 5
}
}
- Enum {
- name: "FocusPointMode"
- values: {
- "FocusPointAuto": 0,
- "FocusPointCenter": 1,
- "FocusPointFaceDetection": 2,
- "FocusPointCustom": 3
- }
- }
Property { name: "focusMode"; type: "FocusMode" }
Property { name: "supportedFocusModes"; revision: 1; type: "QVariantList"; isReadonly: true }
- Property { name: "focusPointMode"; type: "FocusPointMode" }
- Property { name: "supportedFocusPointModes"; revision: 1; type: "QVariantList"; isReadonly: true }
Property { name: "customFocusPoint"; type: "QPointF" }
Signal {
name: "focusModeChanged"
Parameter { type: "FocusMode" }
}
Signal {
- name: "focusPointModeChanged"
- Parameter { type: "FocusPointMode" }
- }
- Signal {
name: "customFocusPointChanged"
Parameter { type: "QPointF" }
}
@@ -1001,10 +977,6 @@ Module {
Parameter { type: "FocusMode" }
}
Method {
- name: "setFocusPointMode"
- Parameter { name: "mode"; type: "FocusPointMode" }
- }
- Method {
name: "setCustomFocusPoint"
Parameter { name: "point"; type: "QPointF" }
}
@@ -1013,11 +985,6 @@ Module {
type: "bool"
Parameter { name: "mode"; type: "FocusMode" }
}
- Method {
- name: "isFocusPointModeSupported"
- type: "bool"
- Parameter { name: "mode"; type: "FocusPointMode" }
- }
}
Component {
name: "QDeclarativeCameraImageProcessing"
diff --git a/src/imports/multimedia/qdeclarativecamera_p.h b/src/imports/multimedia/qdeclarativecamera_p.h
index 1c2da5384..b0f617865 100644
--- a/src/imports/multimedia/qdeclarativecamera_p.h
+++ b/src/imports/multimedia/qdeclarativecamera_p.h
@@ -110,7 +110,6 @@ class QDeclarativeCamera : public QObject, public QQmlParserStatus
Q_ENUMS(ExposureMode)
Q_ENUMS(FocusMode)
- Q_ENUMS(FocusPointMode)
public:
enum Position {
@@ -187,13 +186,6 @@ public:
#endif
};
- enum FocusPointMode {
- FocusPointAuto = QCameraFocus::FocusPointAuto,
- FocusPointCenter = QCameraFocus::FocusPointCenter,
- FocusPointFaceDetection = QCameraFocus::FocusPointFaceDetection,
- FocusPointCustom = QCameraFocus::FocusPointCustom
- };
-
QDeclarativeCamera(QObject *parent = 0);
~QDeclarativeCamera();
diff --git a/src/imports/multimedia/qdeclarativecamerafocus.cpp b/src/imports/multimedia/qdeclarativecamerafocus.cpp
index 02d4995be..0a50b12f8 100644
--- a/src/imports/multimedia/qdeclarativecamerafocus.cpp
+++ b/src/imports/multimedia/qdeclarativecamerafocus.cpp
@@ -68,7 +68,6 @@ QT_BEGIN_NAMESPACE
focus {
focusMode: Camera.FocusMacro
- focusPointMode: Camera.FocusPointCustom
customFocusPoint: Qt.point(0.2, 0.2) // Focus relative to top-left corner
}
}
@@ -104,7 +103,6 @@ QDeclarativeCameraFocus::QDeclarativeCameraFocus(QCamera *camera, QObject *paren
}
emit supportedFocusModeChanged();
- emit supportedFocusPointModesChanged();
});
}
@@ -114,9 +112,8 @@ QDeclarativeCameraFocus::~QDeclarativeCameraFocus() = default;
This property holds the current camera focus mode.
- In automatic focusing modes, the \l focusPointMode
- property provides information and control
- over how automatic focusing is performed.
+ In automatic focusing modes, the \l focusPoint
+ property provides a hint on where the camera should focus.
*/
/*!
@@ -149,9 +146,9 @@ QDeclarativeCameraFocus::~QDeclarativeCameraFocus() = default;
\li Manual or fixed focus mode.
\endtable
- In automatic focusing modes, the \l focusPointMode property
+ In automatic focusing modes, the \l focusPoint property
provides information and control
- over how automatic focusing is performed.
+ over the area of the image that is being focused.
*/
QDeclarativeCameraFocus::FocusMode QDeclarativeCameraFocus::focusMode() const
{
@@ -185,75 +182,6 @@ void QDeclarativeCameraFocus::setFocusMode(QDeclarativeCameraFocus::FocusMode mo
emit focusModeChanged(focusMode());
}
}
-/*!
- \property QDeclarativeCameraFocus::focusPointMode
-
- This property holds the current camera focus point mode. It is used in
- automatic focusing modes to determine what to focus on.
-
- If the current focus point mode is \l QCameraFocus::FocusPointCustom, the
- \l customFocusPoint property allows you to specify which part of
- the frame to focus on.
-*/
-/*!
- \qmlproperty enumeration CameraFocus::focusPointMode
-
- This property holds the current camera focus point mode. It is used in automatic
- focusing modes to determine what to focus on. If the current
- focus point mode is \c Camera.FocusPointCustom, the \l customFocusPoint
- property allows you to specify which part of the frame to focus on.
-
- The property can take one of the following values:
- \table
- \header
- \li Value
- \li Description
- \row
- \li FocusPointAuto
- \li Automatically select one or multiple focus points.
- \row
- \li FocusPointCenter
- \li Focus to the frame center.
- \row
- \li FocusPointFaceDetection
- \li Focus on faces in the frame.
- \row
- \li FocusPointCustom
- \li Focus to the custom point, defined by the customFocusPoint property.
- \endtable
-*/
-QDeclarativeCameraFocus::FocusPointMode QDeclarativeCameraFocus::focusPointMode() const
-{
- return QDeclarativeCameraFocus::FocusPointMode(m_focus->focusPointMode());
-}
-
-/*!
- \qmlproperty list<enumeration> CameraFocus::supportedFocusPointModes
-
- This property holds the supported focus point modes of the camera.
-
- \since 5.10
- \sa focusPointMode
-*/
-QVariantList QDeclarativeCameraFocus::supportedFocusPointModes() const
-{
- QVariantList supportedModes;
-
- for (int i = int(FocusPointAuto); i <= int(FocusPointCustom); i++) {
- if (m_focus->isFocusPointModeSupported(QCameraFocus::FocusPointMode(i)))
- supportedModes.append(i);
- }
-
- return supportedModes;
-}
-
-void QDeclarativeCameraFocus::setFocusPointMode(QDeclarativeCameraFocus::FocusPointMode mode)
-{
- if (mode != focusPointMode()) {
- m_focus->setFocusPointMode(QCameraFocus::FocusPointMode(mode));
- emit focusPointModeChanged(focusPointMode());
- }
-}
/*!
\property QDeclarativeCameraFocus::customFocusPoint
diff --git a/src/imports/multimedia/qdeclarativecamerafocus_p.h b/src/imports/multimedia/qdeclarativecamerafocus_p.h
index c9919e332..1314e8d6d 100644
--- a/src/imports/multimedia/qdeclarativecamerafocus_p.h
+++ b/src/imports/multimedia/qdeclarativecamerafocus_p.h
@@ -67,13 +67,9 @@ class QDeclarativeCameraFocus : public QObject
Q_PROPERTY(FocusMode focusMode READ focusMode WRITE setFocusMode NOTIFY focusModeChanged)
Q_PROPERTY(QVariantList supportedFocusMode READ supportedFocusMode NOTIFY supportedFocusModeChanged REVISION 1)
- Q_PROPERTY(FocusPointMode focusPointMode READ focusPointMode WRITE setFocusPointMode NOTIFY focusPointModeChanged)
- Q_PROPERTY(QVariantList supportedFocusPointModes READ supportedFocusPointModes NOTIFY supportedFocusPointModesChanged REVISION 1)
-
Q_PROPERTY(QPointF customFocusPoint READ customFocusPoint WRITE setCustomFocusPoint NOTIFY customFocusPointChanged)
Q_ENUMS(FocusMode)
- Q_ENUMS(FocusPointMode)
public:
enum FocusMode {
FocusModeAuto = QCameraFocus::FocusModeAuto,
@@ -92,33 +88,20 @@ public:
#endif
};
- enum FocusPointMode {
- FocusPointAuto = QCameraFocus::FocusPointAuto,
- FocusPointCenter = QCameraFocus::FocusPointCenter,
- FocusPointFaceDetection = QCameraFocus::FocusPointFaceDetection,
- FocusPointCustom = QCameraFocus::FocusPointCustom
- };
-
~QDeclarativeCameraFocus();
FocusMode focusMode() const;
QVariantList supportedFocusMode() const;
- FocusPointMode focusPointMode() const;
- QVariantList supportedFocusPointModes() const;
-
QPointF customFocusPoint() const;
public Q_SLOTS:
void setFocusMode(FocusMode);
- void setFocusPointMode(FocusPointMode mode);
void setCustomFocusPoint(const QPointF &point);
Q_SIGNALS:
void focusModeChanged(FocusMode);
void supportedFocusModeChanged();
- void focusPointModeChanged(FocusPointMode);
- void supportedFocusPointModesChanged();
void customFocusPointChanged(const QPointF &);
private: