}
QImage PreviewProvider::requestImage(const QString& id, QSize *size, const QSize& requestedSize) {
+ Q_UNUSED(id);
+
QMutexLocker lock(&m_mutex);
QImage res = m_image;
#include "qtcamimagemode.h"
#include "qtcamvideomode.h"
+// TODO: we want the ability to change the image and video gep from the app.
+
QtCamDevice::QtCamDevice(QtCamConfig *config, const QString& name,
const QVariant& id, QObject *parent) :
QObject(parent), d_ptr(new QtCamDevicePrivate) {
GstBuffer *buf, GstPad *pad,
QtCamViewfinderRendererGeneric *q) {
+ Q_UNUSED(element);
+
q->m_mutex.lock();
if (!q->m_elem) {
GObject *object,
gboolean is_last_ref) {
+ Q_UNUSED(object);
+
if (is_last_ref) {
g_object_remove_toggle_ref(G_OBJECT(q->m_elem), (GToggleNotify)sink_notify, q);
q->m_elem = 0;
void QtCamViewfinderRendererMeeGo::sink_notify(QtCamViewfinderRendererMeeGo *q,
GObject *object, gboolean is_last_ref) {
+ Q_UNUSED(object);
+
if (is_last_ref) {
g_signal_handler_disconnect(q->m_sink, q->m_id);
g_object_remove_toggle_ref(G_OBJECT(q->m_sink), (GToggleNotify)sink_notify, q);
// TODO: disk space
// TODO: flash not ready
// TODO: focus, caf, ...
-// TODO: indicators
// TODO: portrait/landscape
// TODO: record video in a hidden directory and then copy the video to avoid tracker indexing it.
// TODO: stop viewfinder in settings pages ?
void CameraResources::updateSet(const QList<ResourcePolicy::ResourceType>& required,
const QList<ResourcePolicy::ResourceType>& optional) {
+ Q_UNUSED(optional);
+
bool isEmpty = m_set->resources().isEmpty();
QList<ResourcePolicy::ResourceType> set = listSet();
}
+QString FileNaming::imageSuffix() const {
+ return m_image;
+}
+
void FileNaming::setImageSuffix(const QString& suffix) {
- m_image = suffix;
+ if (m_image != suffix) {
+ m_image = suffix;
+ emit imageSuffixChanged();
+ }
+}
+
+QString FileNaming::videoSuffix() const {
+ return m_video;
}
void FileNaming::setVideoSuffix(const QString& suffix) {
- m_video = suffix;
+ if (m_video != suffix) {
+ m_video = suffix;
+ emit videoSuffixChanged();
+ }
}
QString FileNaming::imageFileName() {
class FileNaming : public QObject {
Q_OBJECT
- Q_PROPERTY(QString imageSuffix WRITE setImageSuffix);
- Q_PROPERTY(QString videoSuffix WRITE setVideoSuffix);
+ Q_PROPERTY(QString imageSuffix READ imageSuffix WRITE setImageSuffix NOTIFY imageSuffixChanged);
+ Q_PROPERTY(QString videoSuffix READ videoSuffix WRITE setVideoSuffix NOTIFY videoSuffixChanged);
public:
FileNaming(QObject *parent = 0);
~FileNaming();
+ QString imageSuffix() const;
void setImageSuffix(const QString& suffix);
+
+ QString videoSuffix() const;
void setVideoSuffix(const QString& suffix);
Q_INVOKABLE QString imageFileName();
Q_INVOKABLE QString videoFileName();
+signals:
+ void imageSuffixChanged();
+ void videoSuffixChanged();
+
private:
QString fileName(const QString& suffix);