setIntValue does not set the value if it's equal to the old one. Added a force flag...
[harmattan/cameraplus] / lib / qtcamcolortone.cpp
1 #include "qtcamcolortone.h"
2 #include "qtcamcapability_p.h"
3
4 QtCamColorTone::QtCamColorTone(QtCamDevice *dev, QObject *parent) :
5   QtCamCapability(new QtCamCapabilityPrivate(dev, QtCamCapability::ColourTone, "colour-tone-mode"),
6                   parent) {
7
8 }
9
10 QtCamColorTone::~QtCamColorTone() {
11
12 }
13
14 QtCamColorTone::ColorToneMode QtCamColorTone::value() {
15   int val = 0;
16   if (!d_ptr->intValue(&val)) {
17     return QtCamColorTone::Normal;
18   }
19
20   switch (val) {
21   case QtCamColorTone::Sepia:
22   case QtCamColorTone::Negative:
23   case QtCamColorTone::GrayScale:
24   case QtCamColorTone::Natural:
25   case QtCamColorTone::Vivid:
26   case QtCamColorTone::ColorSwap:
27   case QtCamColorTone::Solarize:
28   case QtCamColorTone::OutOfFocus:
29   case QtCamColorTone::SkyBlue:
30   case QtCamColorTone::GrassGreen:
31   case QtCamColorTone::SkinWhite:
32     return (QtCamColorTone::ColorToneMode)val;
33
34   default:
35     return QtCamColorTone::Normal;
36   }
37 }
38
39 bool QtCamColorTone::setValue(const QtCamColorTone::ColorToneMode& mode) {
40   return d_ptr->setIntValue(mode, false);
41 }