Added more properties
authorMohammed Sameer <msameer@foolab.org>
Tue, 4 Sep 2012 15:17:11 +0000 (18:17 +0300)
committerMohammed Sameer <msameer@foolab.org>
Thu, 6 Sep 2012 16:10:10 +0000 (19:10 +0300)
src/settings.cpp
src/settings.h

index a5da1a9..f09e3c9 100644 (file)
@@ -4,7 +4,14 @@
 
 #define PATH QString("%1%2.config%2/cameraplus.conf").arg(QDir::homePath()).arg(QDir::separator())
 
-#define DEFAULT_MODE 0
+#define DEFAULT_MODE          0
+#define DEFAULT_SCENE_MODE    6 // Auto
+#define DEFAULT_TIMEOUT       0
+#define DEFAULT_USE_GPS       true
+#define DEFAULT_USE_GEOTAGS   true
+#define DEFAULT_COLOR_FILTER  0
+#define DEFAULT_WHITE_BALANCE 0
+#define DEFAULT_EV_COMP       0.0
 
 Settings::Settings(QObject *parent) :
   QObject(parent),
@@ -23,7 +30,151 @@ int Settings::mode() const {
 void Settings::setMode(int mode) {
   if (mode != Settings::mode()) {
     m_settings->setValue("camera/mode", mode);
+
     emit modeChanged();
   }
 }
 
+QString Settings::creatorName() const {
+  return m_settings->value("camera/creatorName").toString();
+}
+
+void Settings::setCreatorName(const QString& name) {
+  if (name != creatorName()) {
+    m_settings->setValue("camera/creatorName", name);
+
+    emit creatorNameChanged();
+  }
+}
+
+int Settings::postCaptureTimeout() const {
+  return m_settings->value("camera/postCaptureTimeout", DEFAULT_TIMEOUT).toInt();
+}
+
+void Settings::setPostCaptureTimeout(int timeout) {
+  if (timeout != postCaptureTimeout()) {
+    m_settings->setValue("camera/postCaptureTimeout", timeout);
+
+    emit postCaptureTimeoutChanged();
+  }
+}
+
+bool Settings::useGps() const {
+  return m_settings->value("camera/useGps", DEFAULT_USE_GPS).toBool();
+}
+
+void Settings::setUseGps(bool enable) {
+  if (enable == useGps()) {
+    m_settings->setValue("camera/useGps", enable);
+
+    emit useGpsChanged();
+  }
+}
+
+bool Settings::useGeotags() const {
+  return m_settings->value("camera/useGeotags", DEFAULT_USE_GEOTAGS).toBool();
+}
+
+void Settings::setUseGeotags(bool enable) {
+  if (enable != useGeotags()) {
+    m_settings->setValue("camera/useGeotags", enable);
+
+    emit useGeotagsChanged();
+  }
+}
+
+int Settings::imageSceneMode() const {
+  return m_settings->value("image/sceneMode", DEFAULT_SCENE_MODE).toInt();
+}
+
+void Settings::setImageSceneMode(int mode) {
+  if (mode != imageSceneMode()) {
+    m_settings->setValue("image/sceneMode", mode);
+
+    emit imageSceneModeChanged();
+  }
+}
+
+int Settings::imageColorFilter() const {
+  return m_settings->value("image/colorFilter", DEFAULT_COLOR_FILTER).toInt();
+}
+
+void Settings::setImageColorFilter(int filter) {
+  if (filter != imageColorFilter()) {
+    m_settings->setValue("image/colorFilter", filter);
+
+    emit imageColorFilterChanged();
+  }
+}
+
+int Settings::imageWhiteBalance() const {
+  return m_settings->value("image/whiteBalance", DEFAULT_WHITE_BALANCE).toInt();
+}
+
+void Settings::setImageWhiteBalance(int wb) {
+  if (wb != imageWhiteBalance()) {
+    m_settings->setValue("image/whiteBalance", wb);
+
+    emit imageWhiteBalanceChanged();
+  }
+}
+
+qreal Settings::imageEvComp() const {
+  return m_settings->value("image/evComp", DEFAULT_EV_COMP).toReal();
+}
+
+void Settings::setImageEvComp(qreal ev) {
+  if (ev != imageEvComp()) {
+    m_settings->setValue("image/evComp", ev);
+
+    emit imageEvCompChanged();
+  }
+}
+
+int Settings::videoSceneMode() const {
+  return m_settings->value("video/sceneMode", DEFAULT_SCENE_MODE).toInt();
+}
+
+void Settings::setVideoSceneMode(int mode) {
+  if (mode != videoSceneMode()) {
+    m_settings->setValue("video/sceneMode", mode);
+
+    emit videoSceneModeChanged();
+  }
+}
+
+int Settings::videoColorFilter() const {
+  return m_settings->value("video/colorFilter", DEFAULT_COLOR_FILTER).toInt();
+}
+
+void Settings::setVideoColorFilter(int filter) {
+  if (filter != videoColorFilter()) {
+    m_settings->setValue("video/colorFilter", filter);
+
+    emit videoColorFilterChanged();
+  }
+}
+
+int Settings::videoWhiteBalance() const {
+  return m_settings->value("video/whiteBalance", DEFAULT_WHITE_BALANCE).toInt();
+}
+
+void Settings::setVideoWhiteBalance(int wb) {
+  if (wb != videoWhiteBalance()) {
+    m_settings->setValue("video/whiteBalance", wb);
+
+    emit videoWhiteBalanceChanged();
+  }
+}
+
+qreal Settings::videoEvComp() const {
+  return m_settings->value("video/evComp", DEFAULT_EV_COMP).toReal();
+}
+
+void Settings::setVideoEvComp(qreal ev) {
+  if (ev != videoEvComp()) {
+    m_settings->setValue("video/evComp", ev);
+
+    emit videoEvCompChanged();
+  }
+}
index 33e152e..6dc5afe 100644 (file)
@@ -11,6 +11,19 @@ class Settings : public QObject {
   Q_OBJECT
 
   Q_PROPERTY(int mode READ mode WRITE setMode NOTIFY modeChanged);
+  Q_PROPERTY(QString creatorName READ creatorName WRITE setCreatorName NOTIFY creatorNameChanged);
+  Q_PROPERTY(int postCaptureTimeout READ postCaptureTimeout WRITE setPostCaptureTimeout NOTIFY postCaptureTimeoutChanged);
+  Q_PROPERTY(bool useGps READ useGps WRITE setUseGps NOTIFY useGpsChanged);
+  Q_PROPERTY(bool useGeotags READ useGeotags WRITE setUseGeotags NOTIFY useGeotagsChanged);
+  Q_PROPERTY(int imageSceneMode READ imageSceneMode WRITE setImageSceneMode NOTIFY imageSceneModeChanged);
+  Q_PROPERTY(int imageColorFilter READ imageColorFilter WRITE setImageColorFilter NOTIFY imageColorFilterChanged);
+  Q_PROPERTY(int imageWhiteBalance READ imageWhiteBalance WRITE setImageWhiteBalance NOTIFY imageWhiteBalanceChanged);
+  Q_PROPERTY(qreal imageEvComp READ imageEvComp WRITE setImageEvComp NOTIFY imageEvCompChanged);
+
+  Q_PROPERTY(int videoSceneMode READ videoSceneMode WRITE setVideoSceneMode NOTIFY videoSceneModeChanged);
+  Q_PROPERTY(int videoColorFilter READ videoColorFilter WRITE setVideoColorFilter NOTIFY videoColorFilterChanged);
+  Q_PROPERTY(int videoWhiteBalance READ videoWhiteBalance WRITE setVideoWhiteBalance NOTIFY videoWhiteBalanceChanged);
+  Q_PROPERTY(qreal videoEvComp READ videoEvComp WRITE setVideoEvComp NOTIFY videoEvCompChanged);
 
 public:
   Settings(QObject *parent = 0);
@@ -19,8 +32,57 @@ public:
   int mode() const;
   void setMode(int mode);
 
+  QString creatorName() const;
+  void setCreatorName(const QString& name);
+
+  int postCaptureTimeout() const;
+  void setPostCaptureTimeout(int timeout);
+
+  bool useGps() const;
+  void setUseGps(bool enable);
+
+  bool useGeotags() const;
+  void setUseGeotags(bool enable);
+
+  int imageSceneMode() const;
+  void setImageSceneMode(int mode);
+
+  int imageColorFilter() const;
+  void setImageColorFilter(int filter);
+
+  int imageWhiteBalance() const;
+  void setImageWhiteBalance(int wb);
+
+  qreal imageEvComp() const;
+  void setImageEvComp(qreal ev);
+
+  int videoSceneMode() const;
+  void setVideoSceneMode(int mode);
+
+  int videoColorFilter() const;
+  void setVideoColorFilter(int filter);
+
+  int videoWhiteBalance() const;
+  void setVideoWhiteBalance(int wb);
+
+  qreal videoEvComp() const;
+  void setVideoEvComp(qreal ev);
+
 signals:
   void modeChanged();
+  void creatorNameChanged();
+
+  void postCaptureTimeoutChanged();
+  void useGpsChanged();
+  void useGeotagsChanged();
+  void imageSceneModeChanged();
+  void imageColorFilterChanged();
+  void imageWhiteBalanceChanged();
+  void imageEvCompChanged();
+  void videoSceneModeChanged();
+  void videoColorFilterChanged();
+  void videoWhiteBalanceChanged();
+  void videoEvCompChanged();
 
 private:
   QSettings *m_settings;