Changelog for 0.0.8
[harmattan/cameraplus] / declarative / camera.h
index 2b97247..76ad878 100644 (file)
@@ -23,7 +23,7 @@
 #ifndef CAMERA_H
 #define CAMERA_H
 
-#include <QDeclarativeItem>
+#include <QObject>
 #include <QVariant>
 #include <QPointer>
 
@@ -48,8 +48,9 @@ class Roi;
 class VideoMute;
 class VideoTorch;
 class CameraConfig;
+class Quirks;
 
-class Camera : public QDeclarativeItem {
+class Camera : public QObject {
   Q_OBJECT
 
   Q_PROPERTY(int deviceCount READ deviceCount NOTIFY deviceCountChanged)
@@ -79,6 +80,8 @@ class Camera : public QDeclarativeItem {
   Q_PROPERTY(VideoMute *videoMute READ videoMute NOTIFY videoMuteChanged);
   Q_PROPERTY(VideoTorch *videoTorch READ videoTorch NOTIFY videoTorchChanged);
 
+  Q_PROPERTY(Quirks *quirks READ quirks NOTIFY quirksChanged);
+
   // TODO: We need a setter here too.
   Q_PROPERTY(CameraConfig *cameraConfig READ cameraConfig CONSTANT);
 
@@ -91,11 +94,9 @@ public:
     VideoMode
   } CameraMode;
 
-  Camera(QDeclarativeItem *parent = 0);
+  Camera(QObject *parent = 0);
   ~Camera();
 
-  virtual void componentComplete();
-
   int deviceCount() const;
   Q_INVOKABLE QString deviceName(int index) const;
   Q_INVOKABLE QVariant deviceId(int index) const;
@@ -138,11 +139,14 @@ public:
   VideoMute *videoMute() const;
   VideoTorch *videoTorch() const;
 
+  Quirks *quirks() const;
+
   CameraConfig *cameraConfig() const;
 
 signals:
   void deviceCountChanged();
   void deviceIdChanged();
+  void prepareForDeviceChange();
   void deviceChanged();
   void modeChanged();
   void idleStateChanged();
@@ -170,6 +174,7 @@ signals:
   void videoMuteChanged();
   void videoTorchChanged();
   void renderingEnabledChanged();
+  void quirksChanged();
 
 private:
   bool applyMode();
@@ -202,6 +207,7 @@ private:
   VideoMute *m_videoMute;
   VideoTorch *m_videoTorch;
   CameraConfig *m_config;
+  Quirks *m_quirks;
 };
 
 #endif /* CAMERA_H */