elementary/dayselector - trivial changes
[framework/uifw/elementary.git] / data / themes / widgets / dayselector.edc
1 #define DAYSELECOR_DAY_POS_LEFT 1
2 #define DAYSELECOR_DAY_POS_RIGHT 2
3 #define DAYSELECOR_DAY_POS_MIDDLE 3
4 #define DAYSELECOR_DAY_TYPE_WEEKDAY 1
5 #define DAYSELECOR_DAY_TYPE_WEEKEND_DEFAULT 2
6 #define DAYSELECOR_DAY_TYPE_WEEKEND_STYLE1 3
7 #define DAYSELECOR_DAY_STATE_DEFAULT 1
8 #define DAYSELECOR_DAY_STATE_PRESSED 2
9 #define DAYSELECOR_DAY_STATE_SELECTED 3
10
11 #define DAYSELECTOR_DAY(_pos, _after)\
12    part {\
13       name: "day"#_pos;\
14       type: SWALLOW;\
15       scale: 1;\
16       clip_to: "clipper";\
17       description { state: "default" 0.0;\
18          visible: 0;\
19          min: 0 0;\
20          align: 0.0 0.5;\
21          fixed: 1 0;\
22          rel1 {\
23             relative: 1.0 0.0;\
24             to: "day"#_after;\
25             offset: 1 0;\
26          }\
27          rel2 {\
28             relative: 1.0 1.0;\
29             to: "day"#_after;\
30          }\
31       }\
32       description { state: "visible" 0.0;\
33          inherit: "default" 0.0;\
34          visible: 1;\
35          min: 40 25;\
36       }\
37    }\
38    programs{\
39       program {\
40          name: "day"#_pos"visible";\
41          signal: "day"#_pos",visible";\
42          source: "elm";\
43          action: STATE_SET "visible" 0.0;\
44          target: "day"#_pos;\
45       }\
46       program {\
47          name: "day"#_pos"notvisible";\
48          signal: "day"#_pos",default";\
49          source: "elm";\
50          action: STATE_SET "default" 0.0;\
51          target: "day"#_pos;\
52       }\
53    }
54
55 group {
56    name: "elm/dayselector/base/default";
57    parts {
58       part {
59          name: "bg";
60          type: RECT;
61          mouse_events: 0;
62          clip_to: "clipper";
63          description {
64             state: "default" 0.0;
65             rel1 {
66                relative: 0.5 0.0;
67                to: "day0";
68             }
69             rel2 {
70                relative: 0.5 1.0;
71                to: "day6";
72             }
73             color: 199 199 199 255;
74          }
75       }
76       part {
77          name: "day0";
78          type: SWALLOW;
79          scale: 1;
80          clip_to: "clipper";
81          description {
82             state: "default" 0.0;
83             visible: 0;
84             min: 0 0;
85             align: 0.0 0.5;
86             fixed: 1 0;
87             rel2.relative: 0.0 1.0;
88          }
89          description {
90             state: "visible" 0.0;
91             inherit: "default" 0.0;
92             visible: 1;
93             min: 40 25;
94          }
95       }
96       DAYSELECTOR_DAY(1, 0)
97       DAYSELECTOR_DAY(2, 1)
98       DAYSELECTOR_DAY(3, 2)
99       DAYSELECTOR_DAY(4, 3)
100       DAYSELECTOR_DAY(5, 4)
101       DAYSELECTOR_DAY(6, 5)
102       part {
103          name: "clipper";
104          type: RECT;
105          description {
106             state: "default" 0.0;
107             rel1.to: "day0";
108             rel2.to: "day6";
109             color: 255 255 255 255;
110          }
111          description {
112             state: "visible" 0.0;
113             inherit: "default" 0.0;
114             color: 200 200 200 255;
115          }
116       }
117       part {
118          name: "disabler";
119          type: RECT;
120          description {
121             state: "default" 0.0;
122             color: 0 0 0 0;
123             visible: 0;
124          }
125          description {
126             state: "visible" 0.0;
127             inherit: "default" 0.0;
128             visible: 1;
129          }
130       }
131    }
132    programs {
133       program {
134          name: "disble_dayselector";
135          signal: "elm,state,disabled";
136          source: "elm";
137          action: STATE_SET "visible" 0.0;
138          target: "disabler";
139          target: "clipper";
140       }
141       program {
142          name: "enable_dayselector";
143          signal: "elm,state,enabled";
144          source: "elm";
145          action: STATE_SET "default" 0.0;
146          target: "disabler";
147          target: "clipper";
148       }
149       program {
150          name: "day0_visible";
151          signal: "day0,visible";
152          source: "elm";
153          action: STATE_SET "visible" 0.0;
154          target: "day0";
155       }
156       program {
157          name: "day0_default";
158          signal: "day0,default";
159          source: "elm";
160          action: STATE_SET "default" 0.0;
161          target: "day0";
162       }
163    }
164 }
165
166 group {
167    name: "elm/check/base/dayselector/default";
168    images {
169       image: "seg_single_normal.png" COMP;
170       image: "seg_left_normal.png" COMP;
171       image: "seg_left_pressed.png" COMP;
172       image: "seg_left_selected.png" COMP;
173       image: "seg_right_normal.png" COMP;
174       image: "seg_right_pressed.png" COMP;
175       image: "seg_right_selected.png" COMP;
176       image: "seg_middle_normal.png" COMP;
177       image: "seg_middle_pressed.png" COMP;
178       image: "seg_middle_selected.png" COMP;
179    }
180    script {
181       public check_pos; // Left, Right, Middle.
182       public check_type; // Weekday, Weekend.
183       public check_state = DAYSELECOR_DAY_STATE_DEFAULT; // Default, Pressed, Selected.
184
185       public check_bg_show() {
186          if(get_int(check_pos) == DAYSELECOR_DAY_POS_LEFT) {
187            if(get_int(check_state) == DAYSELECOR_DAY_STATE_DEFAULT)
188              set_state(PART:"bg", "default_left", 0.0);
189            else if(get_int(check_state) == DAYSELECOR_DAY_STATE_PRESSED)
190              set_state(PART:"bg", "pressed_left", 0.0);
191            else if(get_int(check_state) == DAYSELECOR_DAY_STATE_SELECTED)
192              set_state(PART:"bg", "selected_left", 0.0);
193          }
194          else if(get_int(check_pos) == DAYSELECOR_DAY_POS_RIGHT) {
195            if(get_int(check_state) == DAYSELECOR_DAY_STATE_DEFAULT)
196              set_state(PART:"bg", "default_right", 0.0);
197            else if(get_int(check_state) == DAYSELECOR_DAY_STATE_PRESSED)
198              set_state(PART:"bg", "pressed_right", 0.0);
199            else if(get_int(check_state) == DAYSELECOR_DAY_STATE_SELECTED)
200              set_state(PART:"bg", "selected_right", 0.0);
201          }
202          else if(get_int(check_pos) == DAYSELECOR_DAY_POS_MIDDLE) {
203            if(get_int(check_state) == DAYSELECOR_DAY_STATE_DEFAULT)
204              set_state(PART:"bg", "default_middle", 0.0);
205            else if(get_int(check_state) == DAYSELECOR_DAY_STATE_PRESSED)
206              set_state(PART:"bg", "pressed_middle", 0.0);
207            else if(get_int(check_state) == DAYSELECOR_DAY_STATE_SELECTED)
208              set_state(PART:"bg", "selected_middle", 0.0);
209          }
210       }
211       public check_text_show() {
212         if(get_int(check_state) == DAYSELECOR_DAY_STATE_SELECTED)
213           set_state(PART:"elm.text", "selected", 0.0);
214         else {
215           if(get_int(check_type) == DAYSELECOR_DAY_TYPE_WEEKDAY)
216             set_state(PART:"elm.text", "default", 0.0);
217           else if (get_int(check_type) == DAYSELECOR_DAY_TYPE_WEEKEND_DEFAULT)
218             set_state(PART:"elm.text", "weekend_default", 0.0);
219           else if (get_int(check_type) == DAYSELECOR_DAY_TYPE_WEEKEND_STYLE1)
220             set_state(PART:"elm.text", "weekend_style1", 0.0);
221         }
222       }
223    }
224    parts {
225       part {
226          name: "bg";
227          mouse_events: 0;
228          scale: 1;
229          description {
230             state: "default" 0.0;
231             image {
232                normal: "seg_single_normal.png";
233                border: 7 7 7 7;
234                border_scale: 1;
235                middle: 1;
236             }
237          }
238          description { state: "default_left" 0.0;
239             inherit: "default" 0.0;
240             image {
241                normal: "seg_left_normal.png";
242                border:  6 1 7 7;
243             }
244          }
245          description { state: "default_right" 0.0;
246             inherit: "default" 0.0;
247             image {
248                normal: "seg_right_normal.png";
249                border: 1 6 7 7;
250             }
251          }
252          description { state: "default_middle" 0.0;
253             inherit: "default" 0.0;
254             image {
255                normal: "seg_middle_normal.png";
256                border: 2 2 2 2;
257             }
258          }
259          description { state: "pressed_left" 0.0;
260             inherit: "default" 0.0;
261             image {
262                normal: "seg_left_pressed.png";
263                border:  6 1 7 7;
264             }
265          }
266          description { state: "pressed_right" 0.0;
267             inherit: "default" 0.0;
268             image {
269                normal: "seg_right_pressed.png";
270                border: 1 6 7 7;
271             }
272          }
273          description { state: "pressed_middle" 0.0;
274             inherit: "default" 0.0;
275             image {
276                normal: "seg_middle_pressed.png";
277                border: 1 1 2 2;
278             }
279          }
280          description { state: "selected_left" 0.0;
281             inherit: "default" 0.0;
282             image {
283                normal: "seg_left_selected.png";
284                border:  6 3 7 7;
285             }
286          }
287          description { state: "selected_right" 0.0;
288             inherit: "default" 0.0;
289             image {
290                normal: "seg_right_selected.png";
291                border: 3 6 7 7;
292             }
293          }
294          description { state: "selected_middle" 0.0;
295             inherit: "default" 0.0;
296             image {
297                normal: "seg_middle_selected.png";
298                border: 3 3 3 3;
299             }
300          }
301       }
302       part {
303          name: "left_padding";
304          type: RECT;
305          mouse_events: 0;
306          scale: 1;
307          description { state: "default" 0.0;
308             min: 5 0;
309             visible: 0;
310             fixed: 1 0;
311             align: 0.0 0.5;
312             rel2 {
313                relative: 0.0 1.0;
314             }
315          }
316       }
317       part {
318          name: "right_padding";
319          type: RECT;
320          mouse_events: 0;
321          scale: 1;
322          description { state: "default" 0.0;
323             visible: 0;
324             min: 5 0;
325             fixed: 1 0;
326             align: 1.0 0.5;
327             rel1 {
328                relative: 1.0 0.0;
329             }
330          }
331       }
332       part {
333          name: "elm.text";
334          type: TEXT;
335          mouse_events: 0;
336          scale: 1;
337          description {
338             state: "default" 0.0;
339             rel1 {
340                to: "left_padding";
341                relative: 1.0 0.0;
342             }
343             rel2 {
344                to: "right_padding";
345                relative: 0.0 1.0;
346             }
347             color: 224 224 224 255;
348             text {
349                font: "Sans,Edje-Vera";
350                size: 20;
351                min: 1 1;
352             }
353          }
354          description {
355             state: "weekend_default" 0.0;
356             inherit: "default" 0.0;
357             color: 225 49 8 255;
358          }
359          description {
360             state: "weekend_style1" 0.0;
361             inherit: "default" 0.0;
362             color: 8 96 170 255;
363          }
364          description {
365             state: "selected" 0.0;
366             inherit: "default" 0.0;
367             color: 50 50 50 255;
368          }
369       }
370       part {
371          name: "events";
372          type: RECT;
373          ignore_flags: ON_HOLD;
374          description {
375             state: "default" 0.0;
376             rel1.to: "bg";
377             rel2.to: "bg";
378             color: 0 0 0 0;
379          }
380       }
381    }
382    programs {
383       program {
384          name: "check,pressed";
385          signal: "mouse,down,1";
386          source: "events";
387          script {
388             set_int(check_state, DAYSELECOR_DAY_STATE_PRESSED);
389             check_bg_show();
390          }
391       }
392       program {
393          name: "check,toggle";
394          signal: "mouse,up,1";
395          source: "events";
396          action: SIGNAL_EMIT "elm,action,check,toggle" "";
397       }
398       program {
399          name: "check,on";
400          signal: "elm,state,check,on";
401          source: "elm";
402          script {
403             set_int(check_state, DAYSELECOR_DAY_STATE_SELECTED);
404             check_bg_show();
405             check_text_show();
406          }
407       }
408       program {
409          name: "check,off";
410          signal: "elm,state,check,off";
411          source: "elm";
412          script {
413             set_int(check_state, DAYSELECOR_DAY_STATE_DEFAULT);
414             check_bg_show();
415             check_text_show();
416          }
417       }
418       program { name: "check,left";
419          signal: "elm,pos,check,left";
420          source: "elm";
421          script {
422             set_int(check_pos, DAYSELECOR_DAY_POS_LEFT);
423             check_bg_show();
424          }
425       }
426       program { name: "check,right";
427          signal: "elm,pos,check,right";
428          source: "elm";
429          script {
430             set_int(check_pos, DAYSELECOR_DAY_POS_RIGHT);
431             check_bg_show();
432          }
433       }
434       program { name: "check,middle";
435          signal: "elm,pos,check,middle";
436          source: "elm";
437          script {
438             set_int(check_pos, DAYSELECOR_DAY_POS_MIDDLE);
439             check_bg_show();
440          }
441       }
442       program { name: "check,weekday";
443          signal: "elm,type,weekday,default";
444          source: "";
445          script {
446             set_int(check_type, DAYSELECOR_DAY_TYPE_WEEKDAY);
447             check_text_show();
448          }
449       }
450       program { name: "check,weekend,default";
451          signal: "elm,type,weekend,default";
452          source: "";
453          script {
454             set_int(check_type, DAYSELECOR_DAY_TYPE_WEEKEND_DEFAULT);
455             check_text_show();
456          }
457       }
458       program { name: "check,weekend,style1";
459          signal: "elm,type,weekend,style1";
460          source: "";
461          script {
462             set_int(check_type, DAYSELECOR_DAY_TYPE_WEEKEND_STYLE1);
463             check_text_show();
464          }
465       }
466    }
467 }
468
469 #undef DAYSELECOR_DAY_POS_LEFT
470 #undef DAYSELECOR_DAY_POS_RIGHT
471 #undef DAYSELECOR_DAY_POS_MIDDLE
472 #undef DAYSELECOR_DAY_TYPE_WEEKDAY
473 #undef DAYSELECOR_DAY_TYPE_WEEKEND_DEFAULT
474 #undef DAYSELECOR_DAY_TYPE_WEEKEND_STYLE1
475 #undef DAYSELECOR_DAY_STATE_DEFAULT
476 #undef DAYSELECOR_DAY_STATE_PRESSED
477 #undef DAYSELECOR_DAY_STATE_SELECTED
478 #undef DAYSELECTOR_DAY