We cannot use the Indicators component so let's copy and paste it whenever we need...
[harmattan/cameraplus] / imports / evcomp.cpp
1 #include "evcomp.h"
2 #include "camera.h"
3 #include "qtcamevcomp.h"
4
5 EvComp::EvComp(QObject *parent) :
6   Capability(parent),
7   m_evComp(0) {
8
9 }
10
11 EvComp::~EvComp() {
12   if (m_evComp) {
13     delete m_evComp; m_evComp = 0;
14   }
15 }
16
17 void EvComp::deviceChanged() {
18   if (m_evComp) {
19     delete m_evComp; m_evComp = 0;
20   }
21
22   if (m_cam->device()) {
23     m_evComp = new QtCamEvComp(m_cam->device(), this);
24     QObject::connect(m_evComp, SIGNAL(valueChanged()), this, SIGNAL(valueChanged()));
25     QObject::connect(m_evComp, SIGNAL(minimumValueChanged()), this, SIGNAL(minimumChanged()));
26     QObject::connect(m_evComp, SIGNAL(maximumValueChanged()), this, SIGNAL(maximunmChanged()));
27   }
28
29   emit valueChanged();
30   emit minimumChanged();
31   emit maximunmChanged();
32 }
33
34 qreal EvComp::value() {
35   return m_evComp ? m_evComp->value() : 0.0;
36 }
37
38 void EvComp::setValue(qreal val) {
39   if (m_evComp) {
40     m_evComp->setValue(val);
41   }
42 }
43
44 qreal EvComp::minimum() {
45   return m_evComp ? m_evComp->minimumValue() : 0.0;
46 }
47
48 qreal EvComp::maximum() {
49   return m_evComp ? m_evComp->maximumValue() : 0.0;
50 }