Adding the declarative imports
[harmattan/cameraplus] / imports / flash.cpp
1 #include "flash.h"
2 #include "camera.h"
3
4 Flash::Flash(QObject *parent) :
5   Capability(parent),
6   m_flash(0) {
7
8 }
9
10 Flash::~Flash() {
11   if (m_flash) {
12     delete m_flash; m_flash = 0;
13   }
14 }
15
16 void Flash::deviceChanged() {
17   if (m_flash) {
18     delete m_flash; m_flash = 0;
19   }
20
21   if (m_cam->device()) {
22     m_flash = new QtCamFlash(m_cam->device(), this);
23     QObject::connect(m_flash, SIGNAL(valueChanged()), this, SIGNAL(valueChanged()));
24   }
25
26   emit valueChanged();
27 }
28
29 Flash::FlashMode Flash::value() {
30   return m_flash ? (FlashMode)m_flash->value() : Flash::Auto;
31 }
32
33 void Flash::setValue(const Flash::FlashMode& mode) {
34   if (m_flash) {
35     m_flash->setValue((QtCamFlash::FlashMode)mode);
36   }
37 }