*/
#include "autofocus.h"
+#include "qtcamscene.h"
AutoFocus::AutoFocus(QtCamDevice *dev, QObject *parent) :
QObject(parent),
bool AutoFocus::stopAutoFocus() {
return m_af->stopAutoFocus();
}
+
+bool AutoFocus::canFocus(int sceneMode) {
+ return m_af->canFocus((QtCamScene::SceneMode)sceneMode);
+}
Q_INVOKABLE bool startAutoFocus();
Q_INVOKABLE bool stopAutoFocus();
+ Q_INVOKABLE bool canFocus(int sceneMode);
Status status();
Status cafStatus();
bool QtCamAutoFocus::stopAutoFocus() {
return d_ptr->setEnabled(false);
}
+
+bool QtCamAutoFocus::canFocus(const QtCamScene::SceneMode& mode) {
+ if (mode == QtCamScene::Landscape || mode == QtCamScene::Sport) {
+ return false;
+ }
+
+ return true;
+}
#define QT_CAM_AUTO_FOCUS_H
#include <QObject>
+#include "qtcamscene.h"
class QtCamDevice;
class QtCamAutoFocusPrivate;
bool startAutoFocus();
bool stopAutoFocus();
+ bool canFocus(const QtCamScene::SceneMode& mode);
+
signals:
void statusChanged();
void cafStatusChanged();
}
FocusReticle {
- visible: controlsVisible && focusReticleVisible
+ visible: controlsVisible && focusReticleVisible && cam.autoFocus.canFocus(cam.scene.value);
id: focusReticle
cafStatus: cam.autoFocus.cafStatus
status: cam.autoFocus.status