Added indicators for video and image resolutions
[harmattan/cameraplus] / qml / data.js
1 // -*- js -*-
2
3 /*!
4  * This file is part of CameraPlus.
5  *
6  * Copyright (C) 2012 Mohammed Sameer <msameer@foolab.org>
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2.1 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
21  */
22
23 // Shared between all QML components
24 //.pragma library
25
26 // White Balance
27 var __wb = [
28     [WhiteBalance.Auto, qsTr("Automatic"),
29      "icon-m-camera-whitebalance-auto-selected", "icon-m-camera-whitebalance-auto"],
30     [WhiteBalance.Sunset, qsTr("Sunny"),
31      "icon-m-camera-whitebalance-sunny-selected", "icon-m-camera-whitebalance-sunny"],
32     [WhiteBalance.Cloudy, qsTr("Cloudy"),
33      "icon-m-camera-whitebalance-cloudy-selected", "icon-m-camera-whitebalance-cloudy"],
34     [WhiteBalance.Flourescent, qsTr("Flourescent"),
35      "icon-m-camera-whitebalance-fluorescent-selected", "icon-m-camera-whitebalance-fluorescent"],
36     [WhiteBalance.Tungsten, qsTr("Tungsten"),
37      "icon-m-camera-whitebalance-tungsten-selected", "icon-m-camera-whitebalance-tungsten"],
38 ];
39
40 // Color Filter
41 var __cf = [
42     [ColorTone.Normal, qsTr("Off"),
43      "icon-m-camera-no-filter-selected", "icon-m-camera-no-filter"],
44     [ColorTone.GrayScale, qsTr("Black & white"),
45      "icon-m-camera-filter-black-white-selected", "icon-m-camera-filter-black-white"],
46     [ColorTone.Sepia, qsTr("Sepia"),
47      "icon-m-camera-filter-sepia-selected", "icon-m-camera-filter-sepia"],
48     [ColorTone.Vivid, qsTr("Vivid"),
49      "icon-m-camera-filter-vivid-selected", "icon-m-camera-filter-vivid"],
50     [ColorTone.Negative, qsTr("Negative"),
51      "icon-m-camera-filter-negative-selected", "icon-m-camera-filter-negative"],
52     [ColorTone.Solarize, qsTr("Solarize"),
53      "icon-m-camera-filter-solarize-selected", "icon-m-camera-filter-solarize"]
54 ];
55
56 // Image Scene Mode
57 var __ism = [
58     [Scene.Auto, qsTr("Automatic"),
59      "icon-m-camera-scene-auto-selected", "icon-m-camera-scene-auto"],
60     [Scene.Closeup, qsTr("Macro"),
61      "icon-m-camera-scene-macro-selected", "icon-m-camera-scene-macro"],
62     [Scene.Landscape, qsTr("Landscape"),
63      "icon-m-camera-scene-landscape-selected", "icon-m-camera-scene-landscape"],
64     [Scene.Portrait, qsTr("Portrait"),
65      "icon-m-camera-scene-portrait-selected", "icon-m-camera-scene-portrait"],
66     [Scene.Night, qsTr("Night"),
67      "icon-m-camera-night-selected", "icon-m-camera-night"],
68     [Scene.Sport, qsTr("Sports"),
69      "icon-m-camera-scene-sports-selected", "icon-m-camera-scene-sports"]
70 ];
71
72 // Video Scene Mode
73 var __vsm = [
74     [Scene.Auto, qsTr("Automatic"),
75      "icon-m-camera-scene-auto-selected", "icon-m-camera-scene-auto"],
76     [Scene.Night, qsTr("Video at night"),
77      "icon-m-camera-video-night-selected", "icon-m-camera-video-night"]
78 ];
79
80 var __iso = [
81     [0, "icon-m-camera-iso-auto"],
82     [100, "icon-m-camera-iso-100"],
83     [200, "icon-m-camera-iso-200"],
84     [400, "icon-m-camera-iso-400"],
85     [800, "icon-m-camera-iso-800"]
86 ];
87
88 var __image = [
89     ["3:2", "low", "icon-m-camera-resolution-3m"],
90     ["3:2", "medium", "icon-m-camera-resolution-6m"],
91     ["3:2", "high", "icon-m-camera-resolution-7m"],
92     ["4:3", "low", "icon-m-camera-resolution-3m"],
93     ["4:3", "medium", "icon-m-camera-resolution-6m"],
94     ["4:3", "high", "icon-m-camera-resolution-8m"],
95     ["16:9", "low", "icon-m-camera-resolution-3m"],
96     ["16:9", "medium", "icon-m-camera-resolution-6m"],
97     ["16:9", "high", "icon-m-camera-resolution-7m"]
98 ];
99
100 var __video = [
101     ["low", "icon-m-camera-video-low-resolution"],
102     ["medium", "icon-m-camera-video-fine-resolution"],
103     ["high", "icon-m-camera-video-high-resolution"],
104 ];
105
106 function filterData(val, data, item) {
107     var x = 0;
108     var i = data.length;
109     for (x = 0; x < i; x++) {
110         if (data[x][0] == val) {
111             return data[x][item];
112         }
113     }
114 }
115
116 function wbSelectedIcon(wb) {
117     return filterData(wb, __wb, 2);
118 }
119
120 function wbIcon(wb) {
121     return filterData(wb, __wb, 3);
122 }
123
124 function wbName(wb) {
125     return filterData(wb, __wb, 1);
126 }
127
128 function cfSelectedIcon(cf) {
129     return filterData(cf, __cf, 2);
130 }
131
132 function cfIcon(cf) {
133     return filterData(cf, __cf, 3);
134 }
135
136 function cfName(cf) {
137     return filterData(cf, __cf, 1);
138 }
139
140 function ismIcon(sm) {
141     return filterData(sm, __ism, 3);
142 }
143
144 function ismSelectedIcon(sm) {
145     return filterData(sm, __ism, 2);
146 }
147
148 function ismName(sm) {
149     return filterData(sm, __ism, 1);
150 }
151
152 function vsmIcon(sm) {
153     return filterData(sm, __vsm, 3);
154 }
155
156 function vsmSelectedIcon(sm) {
157     return filterData(sm, __vsm, 2);
158 }
159
160 function vsmName(sm) {
161     return filterData(sm, __vsm, 1);
162 }
163
164 function isoIcon(value) {
165     var x = 0;
166     var len = __iso.length;
167     for (x = 0; x < len; x++) {
168         if (__iso[x][0] == value) {
169             return __iso[x][1];
170         }
171     }
172
173     return "";
174 }
175
176 function imageIcon(aspect, res) {
177     var x = 0;
178     var len = __image.length;
179     for (x = 0; x < len; x++) {
180         if (__image[x][0] == aspect && __image[x][1] == res) {
181             return __image[x][2];
182         }
183     }
184
185     return "";
186 }
187
188 function videoIcon(res) {
189     return filterData(res, __video, 1);
190 }