5 #define PATH QString("%1%2.config%2/cameraplus.conf").arg(QDir::homePath()).arg(QDir::separator())
8 #define DEFAULT_SCENE_MODE 6 // Auto
9 #define DEFAULT_TIMEOUT 0
10 #define DEFAULT_USE_GPS true
11 #define DEFAULT_USE_GEOTAGS true
12 #define DEFAULT_COLOR_FILTER 0
13 #define DEFAULT_WHITE_BALANCE 0
14 #define DEFAULT_EV_COMP 0.0
15 #define DEFAULT_FLASH_MODE 0
16 #define DEFAULT_IMAGE_ISO 0
18 Settings::Settings(QObject *parent) :
20 m_settings(new QSettings(PATH, QSettings::IniFormat, this)) {
24 Settings::~Settings() {
25 delete m_settings; m_settings = 0;
28 int Settings::mode() const {
29 return m_settings->value("camera/mode", DEFAULT_MODE).toInt();
32 void Settings::setMode(int mode) {
33 if (mode != Settings::mode()) {
34 m_settings->setValue("camera/mode", mode);
40 QString Settings::creatorName() const {
41 return m_settings->value("camera/creatorName").toString();
44 void Settings::setCreatorName(const QString& name) {
45 if (name != creatorName()) {
46 m_settings->setValue("camera/creatorName", name);
48 emit creatorNameChanged();
52 int Settings::postCaptureTimeout() const {
53 return m_settings->value("camera/postCaptureTimeout", DEFAULT_TIMEOUT).toInt();
56 void Settings::setPostCaptureTimeout(int timeout) {
57 if (timeout != postCaptureTimeout()) {
58 m_settings->setValue("camera/postCaptureTimeout", timeout);
60 emit postCaptureTimeoutChanged();
64 bool Settings::useGps() const {
65 return m_settings->value("camera/useGps", DEFAULT_USE_GPS).toBool();
68 void Settings::setUseGps(bool enable) {
69 if (enable != useGps()) {
70 m_settings->setValue("camera/useGps", enable);
76 bool Settings::useGeotags() const {
77 return m_settings->value("camera/useGeotags", DEFAULT_USE_GEOTAGS).toBool();
80 void Settings::setUseGeotags(bool enable) {
81 if (enable != useGeotags()) {
82 m_settings->setValue("camera/useGeotags", enable);
84 emit useGeotagsChanged();
88 int Settings::imageSceneMode() const {
89 return m_settings->value("image/sceneMode", DEFAULT_SCENE_MODE).toInt();
92 void Settings::setImageSceneMode(int mode) {
93 if (mode != imageSceneMode()) {
94 m_settings->setValue("image/sceneMode", mode);
96 emit imageSceneModeChanged();
100 int Settings::imageColorFilter() const {
101 return m_settings->value("image/colorFilter", DEFAULT_COLOR_FILTER).toInt();
104 void Settings::setImageColorFilter(int filter) {
105 if (filter != imageColorFilter()) {
106 m_settings->setValue("image/colorFilter", filter);
108 emit imageColorFilterChanged();
112 int Settings::imageWhiteBalance() const {
113 return m_settings->value("image/whiteBalance", DEFAULT_WHITE_BALANCE).toInt();
116 void Settings::setImageWhiteBalance(int wb) {
117 if (wb != imageWhiteBalance()) {
118 m_settings->setValue("image/whiteBalance", wb);
120 emit imageWhiteBalanceChanged();
124 qreal Settings::imageEvComp() const {
125 return m_settings->value("image/evComp", DEFAULT_EV_COMP).toReal();
128 void Settings::setImageEvComp(qreal ev) {
129 if (ev != imageEvComp()) {
130 m_settings->setValue("image/evComp", ev);
132 emit imageEvCompChanged();
136 int Settings::videoSceneMode() const {
137 return m_settings->value("video/sceneMode", DEFAULT_SCENE_MODE).toInt();
140 void Settings::setVideoSceneMode(int mode) {
141 if (mode != videoSceneMode()) {
142 m_settings->setValue("video/sceneMode", mode);
144 emit videoSceneModeChanged();
148 int Settings::videoColorFilter() const {
149 return m_settings->value("video/colorFilter", DEFAULT_COLOR_FILTER).toInt();
152 void Settings::setVideoColorFilter(int filter) {
153 if (filter != videoColorFilter()) {
154 m_settings->setValue("video/colorFilter", filter);
156 emit videoColorFilterChanged();
160 int Settings::videoWhiteBalance() const {
161 return m_settings->value("video/whiteBalance", DEFAULT_WHITE_BALANCE).toInt();
164 void Settings::setVideoWhiteBalance(int wb) {
165 if (wb != videoWhiteBalance()) {
166 m_settings->setValue("video/whiteBalance", wb);
168 emit videoWhiteBalanceChanged();
172 qreal Settings::videoEvComp() const {
173 return m_settings->value("video/evComp", DEFAULT_EV_COMP).toReal();
176 void Settings::setVideoEvComp(qreal ev) {
177 if (ev != videoEvComp()) {
178 m_settings->setValue("video/evComp", ev);
180 emit videoEvCompChanged();
184 int Settings::imageFlashMode() const {
185 return m_settings->value("image/flashMode", DEFAULT_FLASH_MODE).toInt();
188 void Settings::setImageFlashMode(int mode) {
189 if (mode != imageFlashMode()) {
190 m_settings->setValue("image/flashMode", mode);
192 emit imageFlashModeChanged();
196 int Settings::imageIso() const {
197 return m_settings->value("image/iso", DEFAULT_IMAGE_ISO).toInt();
200 void Settings::setImageIso(int iso) {
201 if (imageIso() != iso) {
202 m_settings->setValue("image/iso", iso);
203 emit imageIsoChanged();