QObject(parent),
m_cam(0),
m_mode(0),
- m_seq(0) {
+ m_seq(0),
+ m_previewEnabled(true) {
}
QObject::connect(m_cam->device(), SIGNAL(runningStateChanged(bool)),
this, SIGNAL(canCaptureChanged()));
+ setPreviewState();
+
postChangeMode();
}
preChangeMode();
}
}
+
+bool Mode::isPreviewEnabled() {
+ return m_previewEnabled;
+}
+
+void Mode::setPreviewEnabled(bool enabled) {
+ if (enabled != m_previewEnabled) {
+ m_previewEnabled = enabled;
+
+ if (m_mode) {
+ setPreviewState();
+ }
+
+ emit enablePreviewChanged();
+ }
+}
+
+void Mode::setPreviewState() {
+ if (m_previewEnabled) {
+ m_mode->enablePreview();
+ }
+ else {
+ m_mode->disablePreview();
+ }
+}
Q_PROPERTY(bool canCapture READ canCapture NOTIFY canCaptureChanged);
Q_PROPERTY(bool active READ isActive NOTIFY activeChanged);
Q_PROPERTY(bool ready READ isReady NOTIFY isReadyChanged);
+ Q_PROPERTY(bool enablePreview READ isPreviewEnabled WRITE setPreviewEnabled NOTIFY enablePreviewChanged);
public:
Mode(QObject *parent = 0);
bool isReady() const;
+ bool isPreviewEnabled();
+ void setPreviewEnabled(bool enabled);
+
signals:
void cameraChanged();
void canCaptureChanged();
void previewAvailable(const QString& preview, const QString& fileName);
void saved(const QString& fileName);
void isReadyChanged();
+ void enablePreviewChanged();
private slots:
void gotPreview(const QImage& image, const QString& fileName);
QPointer<QtCamMode> m_mode;
private:
+ void setPreviewState();
+
unsigned long long m_seq;
+ bool m_previewEnabled;
};
#endif /* MODE_H */