[datetime.edc] Bug fix in datetime default style: field paddings are not resized...
[platform/core/uifw/efl-theme-tizen.git] / themes / widgets / datetime.edc
1 /*
2  * efl-theme-tizen
3  * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4  *
5  * Licensed under the Apache License, Version 2.0 (the License);
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an AS IS BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18
19 ///////////////////////////////////////////////////////////////////////////////
20 // datetime
21 ///////////////////////////////////////////////////////////////////////////////
22
23 #define DATETIME_PADDING(_pos, prev_part) \
24    part {\
25       name: "picker.padding"#_pos; \
26       type: RECT; \
27       scale: 1;\
28       clip_to: "clipper";\
29       description { state: "default" 0.0; \
30          color: 0 0 0 0;\
31          min: 0 0;\
32          max: 0 -1;\
33          align: 0.0 0.5;\
34          fixed: 1 0;\
35          rel1 {\
36             relative: 1.0 0.0;\
37             to: prev_part;\
38          }\
39          rel2 {\
40             relative: 1.0 1.0;\
41             to: prev_part;\
42          }\
43       }\
44       description { state: "enable" 0.0;\
45          inherit: "default" 0.0;\
46          min: DATETIME_FIELD_PICKER_PADDING_SIZE_INC;\
47       }\
48    }\
49    part {\
50       name: "left.padding"#_pos; \
51       type: RECT; \
52       scale: 1;\
53       clip_to: "clipper";\
54       mouse_events: 0;\
55       description { state: "default" 0.0; \
56          color: 0 0 0 0;\
57          min: 0 0;\
58          max: 0 -1;\
59          visible: 0;\
60          align: 0.0 0.5;\
61          fixed: 1 0;\
62          rel1 {\
63             relative: 1.0 0.0;\
64             to: "picker.padding"#_pos;\
65          }\
66          rel2 {\
67             relative: 1.0 1.0;\
68             to: "picker.padding"#_pos;\
69          }\
70       }\
71       description { state: "enable" 0.0;\
72          inherit: "default" 0.0;\
73          min: DATETIME_FIELD_LEFT_PADDING_SIZE_INC;\
74       }\
75    }\
76    part {\
77       name: "right.padding"#_pos; \
78       type: RECT;\
79       scale: 1;\
80       clip_to: "clipper";\
81       mouse_events: 0;\
82       description {\
83          state: "default" 0.0;\
84          color: 0 0 0 0;\
85          visible: 0;\
86          min: 0 0;\
87          max: 0 -1;\
88          align: 0.0 0.5;\
89          fixed: 1 0;\
90          rel1 {\
91             relative: 1.0 0.0;\
92             to: "field"#_pos;\
93          }\
94          rel2 {\
95             relative: 1.0 1.0;\
96             to: "field"#_pos;\
97          }\
98       }\
99       description { state: "enable" 0.0;\
100          inherit: "default" 0.0;\
101          min: DATETIME_FIELD_RIGHT_PADDING_SIZE_INC;\
102       }\
103    }\
104    programs{\
105       program {\
106          name: "field_"#_pos"enabled";\
107          signal: "field"#_pos",enable";\
108          source: "elm";\
109          action: STATE_SET "enable" 0.0;\
110          target: "left.padding"#_pos;\
111          target: "right.padding"#_pos;\
112          target: "field"#_pos;\
113       }\
114       program {\
115          name: "field_"#_pos"disabled";\
116          signal: "field"#_pos",disable";\
117          source: "elm";\
118          action: STATE_SET "default" 0.0;\
119          target: "left.padding"#_pos;\
120          target: "right.padding"#_pos;\
121          target: "field"#_pos;\
122       }\
123    }
124
125 #define DATETIME_FIELD(_pos) \
126    part {\
127       name: "field"#_pos; \
128       type: SWALLOW; \
129       scale: 1;\
130       clip_to: "clipper";\
131       repeat_events: 1;\
132       description { state: "default" 0.0; \
133          visible: 0;\
134          min: 0 0;\
135          max: 0 -1;\
136          align: 0.0 0.5;\
137          fixed: 1 0;\
138          rel1 {\
139             relative: 1.0 0.0;\
140             to: "left.padding"#_pos;\
141          }\
142          rel2 {\
143             relative: 1.0 1.0;\
144             to: "left.padding"#_pos;\
145          }\
146       }\
147       description { state: "enable" 0.0;\
148          inherit: "default" 0.0;\
149          visible: 1;\
150          min: DATETIME_FIELD_MIN_SIZE_INC;\
151       }\
152    }\
153    part {\
154       name: "separator"#_pos; \
155       type: TEXT;\
156       scale: 1;\
157       clip_to: "clipper";\
158       mouse_events: 0;\
159       description {\
160          state: "default" 0.0;\
161          visible: 0;\
162          min: 0 0;\
163          max: 0 -1;\
164          align: 0.0 0.5;\
165          fixed: 1 0;\
166          rel1 {\
167             relative: 1.0 0.0;\
168             to: "right.padding"#_pos;\
169          }\
170          rel2 {\
171             relative: 1.0 1.0;\
172             to: "right.padding"#_pos;\
173          }\
174          color: DATETIME_SEPARATOR_TEXT_COLOR_INC;\
175          text {\
176             font: "Tizen:style=Regular";\
177             size: DATETIME_SEPARATOR_TEXT_FONT_SIZE_INC;\
178             min: 1 0; \
179             text_class: "tizen";\
180          }\
181       }\
182       description { state: "enable" 0.0;\
183          inherit: "default" 0.0;\
184          visible: 1;\
185          min: DATETIME_SEPARATOR_MIN_SIZE_INC;\
186       }\
187    }\
188    programs{\
189       program {\
190          name: "separator"#_pos",enabled";\
191          signal: "field"#_pos",separator,enable";\
192          source: "elm";\
193          action: STATE_SET "enable" 0.0;\
194          target: "separator"#_pos;\
195       }\
196       program {\
197          name: "separator"#_pos",disabled";\
198          signal: "field"#_pos",separator,disable";\
199          source: "elm";\
200          action: STATE_SET "default" 0.0;\
201          target: "separator"#_pos;\
202       }\
203    }
204
205 #define DATETIME_PICKER_PADDING_PROGRAMS \
206       program {\
207          name: "datepicker_starting_field2_padding";\
208          signal: "datepicker,starting,field2";\
209          source: "elm";\
210          script {\
211             set_state(PART:"picker.padding2", "enable", 0.0);\
212             set_state(PART:"picker.padding3", "default", 0.0);\
213          }\
214       }\
215       program {\
216          name: "datepicker_starting_field3_padding";\
217          signal: "datepicker,starting,field3";\
218          source: "elm";\
219          script {\
220             set_state(PART:"picker.padding3", "enable", 0.0);\
221             set_state(PART:"picker.padding2", "default", 0.0);\
222          }\
223       }\
224       program {\
225          name: "timepicker_starting_field3_padding";\
226          signal: "timepicker,starting,field3";\
227          source: "elm";\
228          script {\
229             set_state(PART:"picker.padding2", "default", 0.0);\
230             set_state(PART:"picker.padding3", "enable", 0.0);\
231          }\
232       }\
233       program {\
234          name: "timepicker_starting_field0_padding";\
235          signal: "timepicker,starting,field0";\
236          source: "elm";\
237          action: STATE_SET "default" 0.0;\
238          target: "picker.padding0";\
239       }\
240       program {\
241          name: "datepicker_starting_field1_padding";\
242          signal: "datepicker,starting,field1";\
243          source: "elm";\
244          action: STATE_SET "default" 0.0;\
245          target: "picker.padding0";\
246          target: "picker.padding2";\
247          target: "picker.padding3";\
248       }\
249       program {\
250          name: "datepicker_starting_field4_padding";\
251          signal: "datepicker,starting,field4";\
252          source: "elm";\
253          action: STATE_SET "default" 0.0;\
254          target: "picker.padding0";\
255          target: "picker.padding2";\
256          target: "picker.padding3";\
257       }
258
259
260 #define DATETIME_DATEPICKER_BG \
261    part {\
262       name: "date.picker.left.pad"; \
263       type: RECT;\
264       scale: 1;\
265       description { state: "default" 0.0; \
266          min: 0 0;\
267          visible: 0;\
268          align: 1.0 0.5; \
269          fixed: 1 0;\
270          rel1 {\
271             relative: 0.0 0.0;\
272             to: "left.padding0";\
273          }\
274          rel2 {\
275             relative: 0.0 1.0;\
276             to: "left.padding0";\
277          }\
278       }\
279       description { state: "datefirst" 0.0;\
280          inherit: "default" 0.0;\
281          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
282       }\
283       description { state: "timefirst" 0.0;\
284          inherit: "default" 0.0;\
285          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
286          rel1 {\
287             relative: 0.0 0.0;\
288             to: "left.padding3";\
289          }\
290          rel2 {\
291             relative: 0.0 1.0;\
292             to: "left.padding3";\
293          }\
294       }\
295       description { state: "timefirst24hr" 0.0;\
296          inherit: "default" 0.0;\
297          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
298          rel1 {\
299             relative: 0.0 0.0;\
300             to: "left.padding2";\
301          }\
302          rel2 {\
303             relative: 0.0 1.0;\
304             to: "left.padding2";\
305          }\
306       }\
307    }\
308    part {\
309       name: "date.picker.right.pad"; \
310       type: RECT;\
311       scale: 1;\
312       description { state: "default" 0.0; \
313          min: 0 0;\
314          visible: 0;\
315          align: 0.0 0.5; \
316          fixed: 1 0;\
317          rel1 {\
318             relative: 1.0 0.0;\
319             to: "separator2";\
320          }\
321          rel2 {\
322             relative: 1.0 1.0;\
323             to: "separator2";\
324          }\
325       }\
326       description { state: "datefirst" 0.0;\
327          inherit: "default" 0.0;\
328          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
329       }\
330       description { state: "timefirst" 0.0;\
331          inherit: "default" 0.0;\
332          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
333          rel1 {\
334             relative: 1.0 0.0;\
335             to: "separator5";\
336          }\
337          rel2 {\
338             relative: 1.0 1.0;\
339             to: "separator5";\
340          }\
341       }\
342       description { state: "timefirst24hr" 0.0;\
343          inherit: "default" 0.0;\
344          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
345          rel1 {\
346             relative: 1.0 0.0;\
347             to: "separator4";\
348          }\
349          rel2 {\
350             relative: 1.0 1.0;\
351             to: "separator4";\
352          }\
353       }\
354    }\
355    part {\
356       name: "date.picker.bg"; \
357       scale: 1;\
358       description { state: "default" 0.0; \
359          min: 0 0;\
360          visible: 0;\
361          fixed: 1 0;\
362          image {\
363             normal: "00_button_01.png";\
364             border: DATETIME_BG_IMAGE_BORDER_INC;\
365             border_scale: 1;\
366          }\
367          rel1 {\
368             relative: 0.0 0.0;\
369             to: "date.picker.left.pad";\
370          }\
371          rel2 {\
372             relative: 1.0 1.0;\
373             to: "date.picker.right.pad";\
374          }\
375       }\
376       description { state: "datefirst" 0.0;\
377          inherit: "default" 0.0;\
378          visible: 1;\
379       }\
380       description { state: "timefirst" 0.0;\
381          inherit: "default" 0.0;\
382          visible: 1;\
383       }\
384       description { state: "timefirst24hr" 0.0;\
385          inherit: "default" 0.0;\
386          visible: 1;\
387       }\
388       description { state: "datefirst_press" 0.0;\
389          inherit: "datefirst" 0.0;\
390          image {\
391             normal: "00_button_01_press.png";\
392             border: DATETIME_BG_IMAGE_BORDER_INC;\
393             border_scale: 1;\
394          }\
395       }\
396       description { state: "timefirst_press" 0.0;\
397          inherit: "timefirst" 0.0;\
398          image {\
399             normal: "00_button_01_press.png";\
400             border: DATETIME_BG_IMAGE_BORDER_INC;\
401             border_scale: 1;\
402          }\
403       }\
404       description { state: "timefirst24hr_press" 0.0;\
405          inherit: "timefirst24hr" 0.0;\
406          image {\
407             normal: "00_button_01_press.png";\
408             border: DATETIME_BG_IMAGE_BORDER_INC;\
409             border_scale: 1;\
410          }\
411       }\
412    }\
413    part {\
414       name: "datepicker.focus";\
415       scale: 1;\
416       description {\
417          state: "default" 0.0;\
418          visible: 0;\
419          rel1.to : "date.picker.bg";\
420          rel2.to : "date.picker.bg";\
421          image {\
422             normal: "00_button_01_focus.png";\
423             border: DATETIME_BG_IMAGE_BORDER_INC;\
424             border_scale: 1;\
425          }\
426       }\
427       description { state: "focus" 0.0;\
428          inherit: "default" 0.0;\
429          visible: 1;\
430       }\
431    }\
432    programs{\
433       program {\
434          name: "datepicker_starting_field0";\
435          signal: "datepicker,starting,field0";\
436          source: "elm";\
437          action: STATE_SET "datefirst" 0.0;\
438          target: "date.picker.bg";\
439          target: "date.picker.left.pad";\
440          target: "date.picker.right.pad";\
441       }\
442       program {\
443          name: "datepicker_starting_field3";\
444          signal: "datepicker,starting,field3";\
445          source: "elm";\
446          action: STATE_SET "timefirst" 0.0;\
447          target: "date.picker.bg";\
448          target: "date.picker.left.pad";\
449          target: "date.picker.right.pad";\
450       }\
451       program {\
452          name: "datepicker_starting_field2";\
453          signal: "datepicker,starting,field2";\
454          source: "elm";\
455          action: STATE_SET "timefirst24hr" 0.0;\
456          target: "date.picker.bg";\
457          target: "date.picker.left.pad";\
458          target: "date.picker.right.pad";\
459       }\
460       program {\
461          name: "datepicker_starting_field1";\
462          signal: "datepicker,starting,field1";\
463          source: "elm";\
464          action: STATE_SET "default" 0.0;\
465          target: "date.picker.bg";\
466          target: "date.picker.left.pad";\
467          target: "date.picker.right.pad";\
468       }\
469       program {\
470          name: "datepicker_starting_field4";\
471          signal: "datepicker,starting,field4";\
472          source: "elm";\
473          action: STATE_SET "default" 0.0;\
474          target: "date.picker.bg";\
475          target: "date.picker.left.pad";\
476          target: "date.picker.right.pad";\
477       }\
478       program {\
479          name: "datepicker_starting_field5";\
480          signal: "datepicker,starting,field5";\
481          source: "elm";\
482          action: STATE_SET "default" 0.0;\
483          target: "date.picker.bg";\
484          target: "date.picker.left.pad";\
485          target: "date.picker.right.pad";\
486       }\
487       program {\
488          name: "datepicker_mouse_down";\
489          signal: "mouse,down,1";\
490          source: "date.picker.bg";\
491          script {\
492             new st[31];\
493             new Float:vl;\
494             get_state(PART:"date.picker.bg", st, 30, vl);\
495             if (!strcmp(st, "datefirst")) {\
496               set_state(PART:"date.picker.bg", "datefirst_press", 0.0);\
497             }\
498             else if (!strcmp(st, "timefirst")) {\
499               set_state(PART:"date.picker.bg", "timefirst_press", 0.0);\
500             }\
501             else if (!strcmp(st, "timefirst24hr")) {\
502               set_state(PART:"date.picker.bg", "timefirst24hr_press", 0.0);\
503             }\
504          }\
505       }\
506       program {\
507          name: "datepicker_mouse_up";\
508          signal: "mouse,up,1";\
509          source: "date.picker.bg";\
510          script {\
511             new st[31];\
512             new Float:vl;\
513             get_state(PART:"date.picker.bg", st, 30, vl);\
514             if (!strcmp(st, "datefirst_press")) {\
515               set_state(PART:"date.picker.bg", "datefirst", 0.0);\
516             }\
517             else if (!strcmp(st, "timefirst_press")) {\
518               set_state(PART:"date.picker.bg", "timefirst", 0.0);\
519             }\
520             else if (!strcmp(st, "timefirst24hr_press")) {\
521               set_state(PART:"date.picker.bg", "timefirst24hr", 0.0);\
522             }\
523          }\
524       }\
525       program {\
526          name: "datepicker_focus";\
527          signal: "elm,action,focus_highlight,show";\
528          source: "elm";\
529          action: STATE_SET "focus" 0.0;\
530          target: "datepicker.focus";\
531       }\
532       program {\
533          name: "datepicker_unfocus";\
534          signal: "elm,action,focus_highlight,hide";\
535          source: "elm";\
536          action: STATE_SET "default" 0.0;\
537          target: "datepicker.focus";\
538       }\
539       program { name: "datepicker_touch_snd";\
540          signal: "mouse,clicked,1";\
541          source: "date.picker.bg";\
542          action: PLAY_SAMPLE "touch_sound" 1.0;\
543          after: datepicker_show_signal;\
544       }\
545       program { name: "datepicker_show_signal";\
546          action: SIGNAL_EMIT "datetime,datepicker,show" "";\
547       }\
548    }
549
550 #define DATETIME_TIMEPICKER_BG \
551    part {\
552       name: "time.picker.left.pad"; \
553       type: RECT;\
554       scale: 1;\
555       description { state: "default" 0.0; \
556          min: 0 0;\
557          visible: 0;\
558          align: 1.0 0.5; \
559          fixed: 1 0;\
560          rel1 {\
561             relative: 0.0 0.0;\
562             to: "left.padding3";\
563          }\
564          rel2 {\
565             relative: 0.0 1.0;\
566             to: "left.padding3";\
567          }\
568       }\
569       description { state: "datefirst" 0.0;\
570          inherit: "default" 0.0;\
571          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
572       }\
573       description { state: "timefirst" 0.0;\
574          inherit: "default" 0.0;\
575          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
576          rel1 {\
577             relative: 0.0 0.0;\
578             to: "left.padding0";\
579          }\
580          rel2 {\
581             relative: 0.0 1.0;\
582             to: "left.padding0";\
583          }\
584       }\
585       description { state: "timefirst24hr" 0.0;\
586          inherit: "default" 0.0;\
587          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
588          rel1 {\
589             relative: 0.0 0.0;\
590             to: "left.padding0";\
591          }\
592          rel2 {\
593             relative: 0.0 1.0;\
594             to: "left.padding0";\
595          }\
596       }\
597    }\
598    part {\
599       name: "time.picker.right.pad"; \
600       type: RECT;\
601       scale: 1;\
602       description { state: "default" 0.0; \
603          min: 0 0;\
604          visible: 0;\
605          align: 0.0 0.5; \
606          fixed: 1 0;\
607          rel1 {\
608             relative: 1.0 0.0;\
609             to: "right.padding5";\
610          }\
611          rel2 {\
612             relative: 1.0 1.0;\
613             to: "right.padding5";\
614          }\
615       }\
616       description { state: "datefirst" 0.0;\
617          inherit: "default" 0.0;\
618          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
619       }\
620       description { state: "timefirst" 0.0;\
621          inherit: "default" 0.0;\
622          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
623          rel1 {\
624             relative: 1.0 0.0;\
625             to: "right.padding2";\
626          }\
627          rel2 {\
628             relative: 1.0 1.0;\
629             to: "right.padding2";\
630          }\
631       }\
632       description { state: "timefirst24hr" 0.0;\
633          inherit: "default" 0.0;\
634          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
635          rel1 {\
636             relative: 1.0 0.0;\
637             to: "right.padding1";\
638          }\
639          rel2 {\
640             relative: 1.0 1.0;\
641             to: "right.padding1";\
642          }\
643       }\
644    }\
645    part {\
646       name: "time.picker.bg"; \
647       scale: 1;\
648       description { state: "default" 0.0; \
649          min: 0 0;\
650          visible: 0;\
651          fixed: 1 0;\
652          image {\
653             normal: "00_button_01.png";\
654             border: DATETIME_BG_IMAGE_BORDER_INC;\
655             border_scale: 1;\
656          }\
657          rel1 {\
658             relative: 0.0 0.0;\
659             to: "time.picker.left.pad";\
660          }\
661          rel2 {\
662             relative: 1.0 1.0;\
663             to: "time.picker.right.pad";\
664          }\
665       }\
666       description { state: "datefirst" 0.0;\
667          inherit: "default" 0.0;\
668          visible: 1;\
669       }\
670       description { state: "timefirst" 0.0;\
671          inherit: "default" 0.0;\
672          visible: 1;\
673       }\
674       description { state: "timefirst24hr" 0.0;\
675          inherit: "default" 0.0;\
676          visible: 1;\
677       }\
678       description { state: "datefirst_press" 0.0;\
679          inherit: "datefirst" 0.0;\
680          image {\
681             normal: "00_button_01_press.png";\
682             border: DATETIME_BG_IMAGE_BORDER_INC;\
683             border_scale: 1;\
684          }\
685       }\
686       description { state: "timefirst_press" 0.0;\
687          inherit: "timefirst" 0.0;\
688          image {\
689             normal: "00_button_01_press.png";\
690             border: DATETIME_BG_IMAGE_BORDER_INC;\
691             border_scale: 1;\
692          }\
693       }\
694       description { state: "timefirst24hr_press" 0.0;\
695          inherit: "timefirst24hr" 0.0;\
696          image {\
697             normal: "00_button_01_press.png";\
698             border: DATETIME_BG_IMAGE_BORDER_INC;\
699             border_scale: 1;\
700          }\
701       }\
702    }\
703    part {\
704       name: "timepicker.focus";\
705       scale: 1;\
706       description {\
707          state: "default" 0.0;\
708          visible: 0;\
709          rel1.to : "time.picker.bg";\
710          rel2.to : "time.picker.bg";\
711          image {\
712             normal: "00_button_01_focus.png";\
713             border: DATETIME_BG_IMAGE_BORDER_INC;\
714             border_scale: 1;\
715          }\
716       }\
717       description { state: "focus" 0.0;\
718          inherit: "default" 0.0;\
719          visible: 1;\
720       }\
721    }\
722    programs{\
723       program {\
724          name: "timepicker_starting_field3";\
725          signal: "timepicker,starting,field3";\
726          source: "elm";\
727          in: 0.001 0.0;\
728          script {\
729             new st[31];\
730             new Float:vl;\
731             get_state(PART:"field3", st, 30, vl);\
732             if (!strcmp(st, "enable")) {\
733               set_state(PART:"time.picker.bg", "datefirst", 0.0);\
734               set_state(PART:"time.picker.left.pad", "datefirst", 0.0);\
735               set_state(PART:"time.picker.right.pad", "datefirst", 0.0);\
736             }\
737          }\
738       }\
739       program {\
740          name: "timepicker_starting_field0";\
741          signal: "timepicker,starting,field0";\
742          source: "elm";\
743          in: 0.001 0.0;\
744          script {\
745             new st[31];\
746             new Float:vl;\
747             get_state(PART:"date.picker.bg", st, 30, vl);\
748             if (!strcmp(st, "timefirst24hr")) {\
749               set_state(PART:"time.picker.bg", "timefirst24hr", 0.0);\
750               set_state(PART:"time.picker.left.pad", "timefirst24hr", 0.0);\
751               set_state(PART:"time.picker.right.pad", "timefirst24hr", 0.0);\
752             }\
753             else {\
754               set_state(PART:"time.picker.bg", "timefirst", 0.0);\
755               set_state(PART:"time.picker.left.pad", "timefirst", 0.0);\
756               set_state(PART:"time.picker.right.pad", "timefirst", 0.0);\
757             }\
758          }\
759       }\
760       program {\
761          name: "timepicker_starting_field1";\
762          signal: "timepicker,starting,field1";\
763          source: "elm";\
764          action: STATE_SET "default" 0.0;\
765          target: "time.picker.bg";\
766          target: "time.picker.left.pad";\
767          target: "time.picker.right.pad";\
768       }\
769       program {\
770          name: "timepicker_starting_field2";\
771          signal: "timepicker,starting,field2";\
772          source: "elm";\
773          action: STATE_SET "default" 0.0;\
774          target: "time.picker.bg";\
775          target: "time.picker.left.pad";\
776          target: "time.picker.right.pad";\
777       }\
778       program {\
779          name: "timepicker_starting_field4";\
780          signal: "timepicker,starting,field4";\
781          source: "elm";\
782          action: STATE_SET "default" 0.0;\
783          target: "time.picker.bg";\
784          target: "time.picker.left.pad";\
785          target: "time.picker.right.pad";\
786       }\
787       program {\
788          name: "timepicker_starting_field5";\
789          signal: "timepicker,starting,field5";\
790          source: "elm";\
791          action: STATE_SET "default" 0.0;\
792          target: "time.picker.bg";\
793          target: "time.picker.left.pad";\
794          target: "time.picker.right.pad";\
795       }\
796       program {\
797          name: "timepicker_mouse_down";\
798          signal: "mouse,down,1";\
799          source: "time.picker.bg";\
800          script {\
801             new st[31];\
802             new Float:vl;\
803             get_state(PART:"time.picker.bg", st, 30, vl);\
804             if (!strcmp(st, "datefirst")) {\
805               set_state(PART:"time.picker.bg", "datefirst_press", 0.0);\
806             }\
807             else if (!strcmp(st, "timefirst")) {\
808               set_state(PART:"time.picker.bg", "timefirst_press", 0.0);\
809             }\
810             else if (!strcmp(st, "timefirst24hr")) {\
811               set_state(PART:"time.picker.bg", "timefirst24hr_press", 0.0);\
812             }\
813          }\
814       }\
815       program {\
816          name: "timepicker_mouse_up";\
817          signal: "mouse,up,1";\
818          source: "time.picker.bg";\
819          script {\
820             new st[31];\
821             new Float:vl;\
822             get_state(PART:"time.picker.bg", st, 30, vl);\
823             if (!strcmp(st, "datefirst_press")) {\
824               set_state(PART:"time.picker.bg", "datefirst", 0.0);\
825             }\
826             else if (!strcmp(st, "timefirst_press")) {\
827               set_state(PART:"time.picker.bg", "timefirst", 0.0);\
828             }\
829             else if (!strcmp(st, "timefirst24hr_press")) {\
830               set_state(PART:"time.picker.bg", "timefirst24hr", 0.0);\
831             }\
832          }\
833       }\
834       program {\
835          name: "timepicker_focus";\
836          signal: "elm,action,focus_highlight,show";\
837          source: "elm";\
838          action: STATE_SET "focus" 0.0;\
839          target: "timepicker.focus";\
840       }\
841       program {\
842          name: "timepicker_unfocus";\
843          signal: "elm,action,focus_highlight,hide";\
844          source: "elm";\
845          action: STATE_SET "default" 0.0;\
846          target: "timepicker.focus";\
847       }\
848       program { name: "timepicker_touch_snd";\
849          signal: "mouse,clicked,1";\
850          source: "time.picker.bg";\
851          action: PLAY_SAMPLE "touch_sound" 1.0;\
852          after: timepicker_show_signal;\
853       }\
854       program { name: "timepicker_show_signal";\
855          action: SIGNAL_EMIT "datetime,timepicker,show" "";\
856       }\
857    }
858
859 group { name: "elm/datetime/base/default";
860    images {
861       image: "00_button_01.png" COMP;
862       image: "00_button_01_press.png" COMP;
863       image: "00_button_01_focus.png" COMP;
864    }
865    parts {
866       part {
867          name: "bg";
868          type: RECT;
869          scale: 1;
870          description {
871             state: "default" 0.0;
872             color: 0 0 0 0;
873             min: 0 DATETIME_WIDGET_HEIGHT;
874             max: -1 DATETIME_WIDGET_HEIGHT;
875          }
876       }
877       part {
878          name: "left.padding";
879          type: RECT;
880          scale: 1;
881          clip_to: "clipper";
882          mouse_events: 0;
883          description {
884             state: "default" 0.0;
885             visible: 0;
886             min: DATETIME_WIDGET_PADDING_SIZE_INC;
887             align: 0.0 0.5;
888             fixed: 1 0;
889             rel1.to: "bg";
890             rel2 {
891                relative: 0.0 1.0;
892                to: "bg";
893             }
894          }
895       }
896       part {
897          name: "right.padding";
898          type: RECT;
899          scale: 1;
900          clip_to: "clipper";
901          mouse_events: 0;
902          description {
903             state: "default" 0.0;
904             visible: 0;
905             min: DATETIME_WIDGET_PADDING_SIZE_INC;
906             align: 1.0 0.5;
907             fixed: 1 0;
908             rel1 {
909                relative: 1.0 0.0;
910                to: "bg";
911             }
912             rel2.to: "bg";
913          }
914       }
915
916       DATETIME_PADDING(0, "left.padding")
917       DATETIME_PADDING(1, "separator0")
918       DATETIME_PADDING(2, "separator1")
919       DATETIME_PADDING(3, "separator2")
920       DATETIME_PADDING(4, "separator3")
921       DATETIME_PADDING(5, "separator4")
922
923       DATETIME_DATEPICKER_BG
924       DATETIME_TIMEPICKER_BG
925
926       DATETIME_FIELD(0)
927       DATETIME_FIELD(1)
928       DATETIME_FIELD(2)
929       DATETIME_FIELD(3)
930       DATETIME_FIELD(4)
931       DATETIME_FIELD(5)
932
933       part {
934          name: "clipper";
935          type: RECT;
936          description { state: "default" 0.0;
937             color: 255 255 255 255;
938          }
939          description { state: "visible" 0.0;
940             inherit: "default" 0.0;
941             color: 255 255 255 102;
942          }
943       }
944       part {
945          name: "disabler";
946          type: RECT;
947          description { state: "default" 0.0;
948             color: 0 0 0 0;
949             visible: 0;
950             rel1.to: "bg";
951             rel2.to: "bg";
952          }
953          description { state: "visible" 0.0;
954             inherit: "default" 0.0;
955             visible: 1;
956          }
957       }
958    }
959    programs {
960       program {
961          name: "disble_datetime";
962          signal: "elm,state,disabled";
963          source: "elm";
964          action: STATE_SET "visible" 0.0;
965          target: "disabler";
966          target: "clipper";
967       }
968       program {
969          name: "enable_datetime";
970          signal: "elm,state,enabled";
971          source: "elm";
972          action: STATE_SET "default" 0.0;
973          target: "disabler";
974          target: "clipper";
975       }
976       DATETIME_PICKER_PADDING_PROGRAMS
977    }
978 }
979
980 group { name: "elm/datetime/base/pickerstyle";
981 }
982
983 #define DATETIME_FIELD_STYLE1(_pos, _after) \
984    part {\
985       name: "field"#_pos; \
986       type: SWALLOW; \
987       scale: 1;\
988       clip_to: "clipper";\
989       repeat_events: 1;\
990       description { state: "default" 0.0; \
991          visible: 0;\
992          min: 0 0;\
993          align: 0.0 0.5;\
994          fixed: 1 1;\
995          rel1 {\
996             relative: 1.0 0.0;\
997             to: "separator"#_after;\
998          }\
999          rel2 {\
1000             relative: 1.0 1.0;\
1001             to: "separator"#_after;\
1002          }\
1003       }\
1004       description { state: "enable" 0.0;\
1005          inherit: "default" 0.0;\
1006          visible: 1;\
1007          min: DATETIME_FIELD_MIN_SIZE_INC;\
1008       }\
1009    }\
1010    programs{\
1011       program {\
1012          name: "field_"#_pos"enabled";\
1013          signal: "field"#_pos",enable";\
1014          source: "elm";\
1015          action: STATE_SET "enable" 0.0;\
1016          target: "field"#_pos;\
1017       }\
1018       program {\
1019          name: "field_"#_pos"disabled";\
1020          signal: "field"#_pos",disable";\
1021          source: "elm";\
1022          action: STATE_SET "default" 0.0;\
1023          target: "field"#_pos;\
1024       }\
1025     }
1026
1027 #define DATETIME_SEPARATOR_STYLE1(_pos) \
1028    part {\
1029       name: "separator"#_pos; \
1030       type: TEXT;\
1031       scale: 1;\
1032       clip_to: "clipper";\
1033       repeat_events: 1;\
1034       description {\
1035          state: "default" 0.0;\
1036          visible: 0;\
1037          min: DATETIME_SEPARATOR_MIN_SIZE_INC;\
1038          max: DATETIME_SEPARATOR_MIN_SIZE_INC;\
1039          align: 0.0 0.5;\
1040          fixed: 1 1;\
1041          rel1 {\
1042             relative: 1.0 0.0;\
1043             to: "field"#_pos;\
1044          }\
1045          rel2 {\
1046             relative: 1.0 1.0;\
1047             to: "field"#_pos;\
1048          }\
1049          color: DATETIME_SEPARATOR_TEXT_COLOR_INC;\
1050          text {\
1051             font: "Tizen:style=Regular";\
1052             size: DATETIME_SEPARATOR_TEXT_FONT_SIZE_INC;\
1053             min: 1 0; \
1054             text_class: "tizen";\
1055          }\
1056       }\
1057       description { state: "enable" 0.0;\
1058          inherit: "default" 0.0;\
1059          visible: 1;\
1060       }\
1061       description { state: "hide" 0.0;\
1062          inherit: "default" 0.0;\
1063          min: 0 0;\
1064          max: 0 0;\
1065       }\
1066    }\
1067    programs {\
1068       program {\
1069          name: "separator"#_pos",enabled";\
1070          signal: "field"#_pos",separator,enable";\
1071          source: "elm";\
1072          action: STATE_SET "enable" 0.0;\
1073          target: "separator"#_pos;\
1074       }\
1075       program {\
1076          name: "separator"#_pos",disabled";\
1077          signal: "field"#_pos",separator,disable";\
1078          source: "elm";\
1079          script {\
1080             new st[31];\
1081             new Float:vl;\
1082             get_state(PART:"separator"#_pos, st, 30, vl);\
1083             if (strcmp(st, "hide")) \
1084             {\
1085                set_state(PART:"separator"#_pos, "default", 0.0);\
1086             }\
1087          }\
1088       }\
1089       program {\
1090          name: "separator"#_pos",hide";\
1091          signal: "field"#_pos",disable";\
1092          source: "elm";\
1093          action: STATE_SET "hide" 0.0;\
1094          target: "separator"#_pos;\
1095       }\
1096    }
1097
1098
1099 group { name: "elm/datetime/base/style1";
1100    parts {
1101       part {
1102          name: "bg";
1103          type: RECT;
1104          scale: 1;
1105          description {
1106             state: "default" 0.0;
1107             color: 0 0 0 0;
1108          }
1109       }
1110       part {
1111          name: "left.padding";
1112          type: RECT;
1113          scale: 1;
1114          clip_to: "clipper";
1115          mouse_events: 0;
1116          description {
1117             state: "default" 0.0;
1118             visible: 0;
1119             min: DATETIME_LEFT_PADDING_SIZE_INC;
1120             max: DATETIME_LEFT_PADDING_SIZE_INC;
1121             align: 0.0 0.5;
1122             fixed: 1 1;
1123             rel1.to: "bg";
1124             rel2 {
1125                relative: 0.0 1.0;
1126                to: "bg";
1127             }
1128          }
1129       }
1130       part {
1131          name: "field0";
1132          type: SWALLOW;
1133          scale: 1;
1134          clip_to: "clipper";
1135          repeat_events: 1;
1136          description {
1137             state: "default" 0.0;
1138             visible: 0;
1139             min: 0 0;
1140             align: 0.0 0.5;
1141             fixed: 1 0;
1142             rel1 {
1143                relative: 0.5 0.0;
1144                to_x: "left.padding";
1145             }
1146             rel2 {
1147                relative: 0.5 1.0;
1148                to_x: "left.padding";
1149             }
1150          }
1151          description { state: "enable" 0.0;
1152             inherit: "default" 0.0;
1153             visible: 1;
1154             min: DATETIME_FIELD_MIN_SIZE_INC;
1155          }
1156       }
1157       DATETIME_SEPARATOR_STYLE1(0)
1158       DATETIME_FIELD_STYLE1(1, 0)
1159       DATETIME_SEPARATOR_STYLE1(1)
1160       DATETIME_FIELD_STYLE1(2, 1)
1161       DATETIME_SEPARATOR_STYLE1(2)
1162       DATETIME_FIELD_STYLE1(3, 2)
1163       DATETIME_SEPARATOR_STYLE1(3)
1164       DATETIME_FIELD_STYLE1(4, 3)
1165       DATETIME_SEPARATOR_STYLE1(4)
1166       DATETIME_FIELD_STYLE1(5, 4)
1167       DATETIME_SEPARATOR_STYLE1(5)
1168       part {
1169          name: "right.padding";
1170          type: RECT;
1171          scale: 1;
1172          clip_to: "clipper";
1173          mouse_events: 0;
1174          description {
1175             state: "default" 0.0;
1176             visible: 0;
1177             min: DATETIME_LEFT_PADDING_SIZE_INC;
1178             max: DATETIME_LEFT_PADDING_SIZE_INC;
1179             align: 1.0 0.5;
1180             fixed: 1 1;
1181             rel2 {
1182                relative: 1.0 0.0;
1183                to: "bg";
1184             }
1185             rel2.to: "bg";
1186          }
1187       }
1188       part {
1189          name: "clipper";
1190          type: RECT;
1191          description { state: "default" 0.0;
1192             color: 255 255 255 255;
1193          }
1194          description { state: "visible" 0.0;
1195             inherit: "default" 0.0;
1196             color: 255 255 255 102;
1197          }
1198       }
1199       part {
1200          name: "disabler";
1201          type: RECT;
1202          description { state: "default" 0.0;
1203             color: 0 0 0 0;
1204             visible: 0;
1205          }
1206          description { state: "visible" 0.0;
1207             inherit: "default" 0.0;
1208             visible: 1;
1209          }
1210       }
1211    }
1212    programs {
1213       program {
1214          name: "disble_datetime";
1215          signal: "elm,state,disabled";
1216          source: "elm";
1217          action: STATE_SET "visible" 0.0;
1218          target: "disabler";
1219          target: "clipper";
1220       }
1221       program {
1222          name: "enable_datetime";
1223          signal: "elm,state,enabled";
1224          source: "elm";
1225          action: STATE_SET "default" 0.0;
1226          target: "disabler";
1227          target: "clipper";
1228       }
1229       program {
1230          name: "field0,enabled";
1231          signal: "field0,enable";
1232          source: "elm";
1233          action: STATE_SET "enable" 0.0;
1234          target: "field0";
1235       }
1236       program {
1237          name: "field0,disabled";
1238          signal: "field0,disable";
1239          source: "elm";
1240          action: STATE_SET "default" 0.0;
1241          target: "field0";
1242       }
1243    }
1244 }
1245 group { name: "elm/spinner/base/default";
1246    alias: "elm/spinner/base/datetime_popup";
1247    alias: "elm/spinner/base/datetime_popup/year";
1248    alias: "elm/spinner/base/datetime_popup/month";
1249    alias: "elm/spinner/base/datetime_popup/date";
1250    alias: "elm/spinner/base/datetime_popup/hour";
1251    alias: "elm/spinner/base/datetime_popup/minute";
1252    images {
1253       image: "00_picker_arrow_down.png" COMP;
1254       image: "00_picker_arrow_up.png" COMP;
1255       image: "00_button_01.png" COMP;
1256       image: "00_button_01_press.png" COMP;
1257    }
1258    parts {
1259       part { name: "bg";
1260          type: RECT;
1261          scale: 1;
1262          description { state: "default" 0.0;
1263             color: 0 0 0 0;
1264          }
1265       }
1266       part { name: "up.image";
1267          scale: 1;
1268          description { state: "default" 0.0;
1269             align: 0.5 0.0;
1270             min: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1271             max: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1272             image {
1273                normal: "00_button_01.png";
1274                border: SPINNER_UP_DOWN_IMAGE_BORDER_SIZE_INC;
1275                border_scale: 1;
1276             }
1277          }
1278          description { state: "pressed" 0.0;
1279             inherit: "default" 0.0;
1280             image.normal: "00_button_01_press.png";
1281          }
1282       }
1283       part { name: "up.image.arrow";
1284          scale: 1;
1285          description { state: "default" 0.0;
1286             rel1.to: "up.image";
1287             rel2.to: "up.image";
1288             min: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1289             max: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1290             image.normal: "00_picker_arrow_up.png";
1291          }
1292       }
1293       part { name: "up.image.arrow.shadow.proxy";
1294          type: PROXY;
1295          scale: 1;
1296          clip_to: "up.image.arrow.shadow.clipper";
1297          description { state: "default" 0.0;
1298             source: "up.image.arrow";
1299             proxy.source_clip: 0;
1300             rel1 {
1301                to: "up.image.arrow";
1302                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_TOP_OFFSET_INC;
1303             }
1304             rel2 {
1305                to: "up.image.arrow";
1306                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_BOTTOM_OFFSET_INC;
1307             }
1308          }
1309          description { state: "pressed" 0.0;
1310             inherit: "default" 0.0;
1311             rel1 {
1312                to: "up.image.arrow";
1313                offset: SPINNER_UP_DOWN_ARROW_PRESSED_TOP_OFFSET_INC;
1314             }
1315             rel2 {
1316                to: "up.image.arrow";
1317                offset: SPINNER_UP_DOWN_ARROW_PRESSED_BOTTOM_OFFSET_INC;
1318             }
1319          }
1320       }
1321       part { name: "up.image.arrow.proxy";
1322          type: PROXY;
1323          scale: 1;
1324          clip_to: "up.image.arrow.clipper";
1325          description { state: "default" 0.0;
1326             source: "up.image.arrow";
1327             proxy.source_clip: 0;
1328             rel1.to: "up.image.arrow";
1329             rel2.to: "up.image.arrow";
1330          }
1331       }
1332       part { name: "up.image.arrow.shadow.clipper";
1333          type: RECT;
1334          scale: 1;
1335          description { state: "default" 0.0;
1336             rel1.to: "up.image.arrow";
1337             rel2.to: "up.image.arrow";
1338             color: SPINNER_UP_DOWN_ARROW_SHADOW_DEFAULT_COLOR_INC;
1339          }
1340          description { state: "pressed" 0.0;
1341             inherit: "default" 0.0;
1342             color: SPINNER_UP_DOWN_ARROW_SHADOW_PRESSED_COLOR_INC;
1343          }
1344       }
1345       part { name: "up.image.arrow.clipper";
1346          type: RECT;
1347          scale: 1;
1348          description { state: "default" 0.0;
1349             rel1.to: "up.image.arrow";
1350             rel2.to: "up.image.arrow";
1351             color: SPINNER_UP_DOWN_ARROW_DEFAULT_COLOR_INC;
1352          }
1353          description { state: "pressed" 0.0;
1354             inherit: "default" 0.0;
1355             color: SPINNER_UP_DOWN_ARROW_PRESSED_COLOR_INC;
1356          }
1357       }
1358       part { name: "down.image";
1359          scale: 1;
1360          description { state: "default" 0.0;
1361             align: 0.5 1.0;
1362             min: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1363             max: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1364             image {
1365                normal: "00_button_01.png";
1366                border: SPINNER_UP_DOWN_IMAGE_BORDER_SIZE_INC;
1367                border_scale: 1;
1368             }
1369          }
1370          description { state: "pressed" 0.0;
1371             inherit: "default" 0.0;
1372             image.normal: "00_button_01_press.png";
1373          }
1374       }
1375       part { name: "down.image.arrow";
1376          scale: 1;
1377          description { state: "default" 0.0;
1378             rel1.to: "down.image";
1379             rel2.to: "down.image";
1380             min: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1381             max: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1382             image.normal: "00_picker_arrow_down.png";
1383          }
1384       }
1385       part { name: "down.image.arrow.shadow.proxy";
1386          type: PROXY;
1387          scale: 1;
1388          clip_to: "down.image.arrow.shadow.clipper";
1389          description { state: "default" 0.0;
1390             source: "down.image.arrow";
1391             proxy.source_clip: 0;
1392             rel1 {
1393                to: "down.image.arrow";
1394                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_TOP_OFFSET_INC;
1395             }
1396             rel2 {
1397                to: "down.image.arrow";
1398                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_BOTTOM_OFFSET_INC;
1399             }
1400          }
1401          description { state: "pressed" 0.0;
1402             inherit: "default" 0.0;
1403             rel1 {
1404                to: "down.image.arrow";
1405                offset: SPINNER_UP_DOWN_ARROW_PRESSED_TOP_OFFSET_INC;
1406             }
1407             rel2 {
1408                to: "down.image.arrow";
1409                offset: SPINNER_UP_DOWN_ARROW_PRESSED_BOTTOM_OFFSET_INC;
1410             }
1411          }
1412       }
1413       part { name: "down.image.arrow.proxy";
1414          type: PROXY;
1415          scale: 1;
1416          clip_to: "down.image.arrow.clipper";
1417          description { state: "default" 0.0;
1418             source: "down.image.arrow";
1419             proxy.source_clip: 0;
1420             rel1.to: "down.image.arrow";
1421             rel2.to: "down.image.arrow";
1422          }
1423       }
1424       part { name: "down.image.arrow.shadow.clipper";
1425          type: RECT;
1426          scale: 1;
1427          description { state: "default" 0.0;
1428             rel1.to: "down.image.arrow";
1429             rel2.to: "down.image.arrow";
1430             color: SPINNER_UP_DOWN_ARROW_SHADOW_DEFAULT_COLOR_INC;
1431          }
1432          description { state: "pressed" 0.0;
1433             inherit: "default" 0.0;
1434             color: SPINNER_UP_DOWN_ARROW_SHADOW_PRESSED_COLOR_INC;
1435          }
1436       }
1437       part { name: "down.image.arrow.clipper";
1438          type: RECT;
1439          scale: 1;
1440          description { state: "default" 0.0;
1441             rel1.to: "down.image.arrow";
1442             rel2.to: "down.image.arrow";
1443             color: SPINNER_UP_DOWN_ARROW_DEFAULT_COLOR_INC;
1444          }
1445          description { state: "pressed" 0.0;
1446             inherit: "default" 0.0;
1447             color: SPINNER_UP_DOWN_ARROW_PRESSED_COLOR_INC;
1448          }
1449       }
1450       part { name: "elm.text";
1451          type: TEXT;
1452          scale: 1;
1453          description { state: "default" 0.0;
1454             visible: 1;
1455             color: SPINNER_ENTRY_TEXT_COLOR_INC;
1456             min: 0 SPINNER_TEXT_HEIGHT_INC;
1457             max: -1 SPINNER_TEXT_HEIGHT_INC;
1458             text {
1459                font: "Tizen:style=Regular";
1460                size: SPINNER_ENTRY_TEXT_SIZE_INC;
1461                min: 0 0;
1462                max: 1 0;
1463                text_class: "tizen";
1464             }
1465          }
1466          description { state: "active" 0.0;
1467             inherit: "default" 0.0;
1468             visible: 0;
1469          }
1470       }
1471       part { name: "button.events";
1472          type: RECT;
1473          mouse_events: 1;
1474          description { state: "default" 0.0;
1475             rel1.to: "elm.text";
1476             rel2.to: "elm.text";
1477             fixed: 1 1;
1478             color: 0 0 0 0;
1479          }
1480       }
1481       part { name: "elm.swallow.entry";
1482          type: SWALLOW;
1483          description { state: "default" 0.0;
1484             visible: 0;
1485             rel1.to: "elm.text";
1486             rel2.to: "elm.text";
1487             fixed: 1 1;
1488          }
1489          description { state: "active" 0.0;
1490             inherit: "default" 0.0;
1491             visible: 1;
1492          }
1493       }
1494       part { name: "up.btn";
1495          type: RECT;
1496          repeat_events: 1;
1497          scale: 1;
1498          description { state: "default" 0.0;
1499            rel1.to: "up.image";
1500            rel2.to: "up.image";
1501            color: 0 0 0 0;
1502          }
1503       }
1504       part { name: "down.btn";
1505          type: RECT;
1506          repeat_events: 1;
1507          scale: 1;
1508          description { state: "default" 0.0;
1509            rel1.to: "down.image";
1510            rel2.to: "down.image";
1511            color: 0 0 0 0;
1512          }
1513       }
1514       part { name: "disabler";
1515          type: RECT;
1516          description { state: "default" 0.0;
1517             color: 0 0 0 0;
1518             visible: 0;
1519          }
1520          description { state: "disabled" 0.0;
1521             inherit: "default" 0.0;
1522             visible: 1;
1523          }
1524       }
1525    }
1526    programs {
1527       program { name: "text_show";
1528          signal: "elm,state,text,visible";
1529          source: "elm";
1530          action:  STATE_SET "visible" 0.0;
1531          target: "elm.text";
1532       }
1533       program { name: "text_hide";
1534          signal: "elm,state,text,hidden";
1535          source: "elm";
1536          action:  STATE_SET "default" 0.0;
1537          target: "elm.text";
1538       }
1539       program { name: "dec_start_signal_emit";
1540          action: SIGNAL_EMIT "elm,action,decrement,start" "";
1541       }
1542       program { name: "dec_stop_signal_emit";
1543          action: SIGNAL_EMIT "elm,action,decrement,stop" "";
1544       }
1545       program { name: "inc_start_signal_emit";
1546          action: SIGNAL_EMIT "elm,action,increment,start" "";
1547       }
1548       program { name: "inc_stop_signal_emit";
1549          action: SIGNAL_EMIT "elm,action,increment,stop" "";
1550       }
1551       program { name: "dec";
1552          signal: "mouse,down,1*";
1553          source: "down.btn";
1554          action:  STATE_SET "pressed" 0.0;
1555          target: "down.image";
1556          target: "down.image.arrow.shadow.proxy";
1557          target: "down.image.arrow.shadow.clipper";
1558          target: "down.image.arrow.clipper";
1559          after: "dec_start_signal_emit";
1560       }
1561       program { name: "dec2";
1562          signal: "mouse,up,1";
1563          source: "down.btn";
1564          action:  STATE_SET "default" 0.0;
1565          target: "down.image";
1566          target: "down.image.arrow.shadow.proxy";
1567          target: "down.image.arrow.shadow.clipper";
1568          target: "down.image.arrow.clipper";
1569          after: "dec_stop_signal_emit";
1570       }
1571       program { name: "inc";
1572          signal: "mouse,down,1*";
1573          source: "up.btn";
1574          action:  STATE_SET "pressed" 0.0;
1575          target: "up.image";
1576          target: "up.image.arrow.shadow.proxy";
1577          target: "up.image.arrow.shadow.clipper";
1578          target: "up.image.arrow.clipper";
1579          after: "inc_start_signal_emit";
1580       }
1581       program { name: "inc2";
1582          signal: "mouse,up,1";
1583          source: "up.btn";
1584          action:  STATE_SET "default" 0.0;
1585          target: "up.image";
1586          target: "up.image.arrow";
1587          target: "up.image.arrow.shadow.proxy";
1588          target: "up.image.arrow.shadow.clipper";
1589          target: "up.image.arrow.clipper";
1590          after: "inc_stop_signal_emit";
1591       }
1592       program { name: "disable";
1593          signal: "elm,state,disabled";
1594          source: "elm";
1595          action: STATE_SET "disabled" 0.0;
1596          target: "disabler";
1597       }
1598       program { name: "enable";
1599          signal: "elm,state,enabled";
1600          source: "elm";
1601          action: STATE_SET "default" 0.0;
1602          target: "disabler";
1603       }
1604       program { name: "active";
1605          signal: "elm,state,active";
1606          source: "elm";
1607          action: STATE_SET "active" 0.0;
1608          target: "elm.text";
1609          target: "elm.swallow.entry";
1610       }
1611       program { name: "inactive";
1612          signal: "elm,state,inactive";
1613          source: "elm";
1614          action: STATE_SET "default" 0.0;
1615          target: "elm.text";
1616          target: "elm.swallow.entry";
1617       }
1618       program { name: "toggle_text";
1619          signal: "mouse,up,1";
1620          source: "button.events";
1621          action: SIGNAL_EMIT "elm,action,entry,toggle" "";
1622       }
1623       program { name: "up_touch_snd";
1624          signal: "mouse,clicked,1";
1625          source: "up.btn";
1626          action: PLAY_SAMPLE "touch_sound" 1.0;
1627       }
1628       program { name: "down_ouch_snd";
1629          signal: "mouse,clicked,1";
1630          source: "down.btn";
1631          action: PLAY_SAMPLE "touch_sound" 1.0;
1632       }
1633    }
1634 }
1635
1636 group { name: "elm/spinner/base/datetime_popup/ampm";
1637    inherit: "elm/spinner/base/default";
1638
1639    parts {
1640       part { name: "block.events";
1641          type: RECT;
1642          description { state: "default" 0.0;
1643             color: 0 0 0 0;
1644             rel1.to: "elm.text";
1645             rel2.to: "elm.text";
1646          }
1647       }
1648    }
1649 }
1650
1651 group { name: "elm/layout/datetime_popup/date_layout";
1652
1653    parts {
1654       part { name: "bg";
1655          type: RECT;
1656          scale: 1;
1657          description { state: "default" 0.0;
1658             color: 0 0 0 0;
1659             min: DATETIME_POPUP_CONTENT_SIZE_INC;
1660             max: DATETIME_POPUP_CONTENT_SIZE_INC;
1661          }
1662       }
1663       part { name: "top.padding";
1664          type: RECT;
1665          scale: 1;
1666          description { state: "default" 0.0;
1667             color: 0 0 0 0;
1668             min: 0 0;
1669             max: -1 0;
1670             rel1.to: "bg";
1671             rel2 {
1672                relative: 1.0 0.0;
1673                to: "bg";
1674             }
1675             align: 0.5 0.0;
1676          }
1677       }
1678       part { name: "bottom.padding";
1679          type: RECT;
1680          scale: 1;
1681          description { state: "default" 0.0;
1682             color: 0 0 0 0;
1683             min: 0 0;
1684             max: -1 0;
1685             rel1 {
1686                relative: 0.0 1.0;
1687                to: "bg";
1688             }
1689             rel2.to: "bg";
1690             align: 0.5 1.0;
1691          }
1692       }
1693       part { name: "left.padding";
1694          type: RECT;
1695          scale: 1;
1696          description { state: "default" 0.0;
1697             color: 0 0 0 0;
1698             min: DATETIME_POPUP_CONTENT_LEFT_PADDING_WIDTH_INC 0;
1699             max: DATETIME_POPUP_CONTENT_LEFT_PADDING_WIDTH_INC -1;
1700             rel1 {
1701                relative: 0.0 1.0;
1702                to_x: "bg";
1703                to_y: "top.padding";
1704             }
1705             rel2 {
1706                relative: 0.0 0.0;
1707                to_x: "bg";
1708                to_y: "bottom.padding";
1709             }
1710             align: 0.0 0.5;
1711          }
1712       }
1713       part { name: "right.padding";
1714          type: RECT;
1715          scale: 1;
1716          description { state: "default" 0.0;
1717             color: 0 0 0 0;
1718             min: DATETIME_POPUP_CONTENT_RIGHT_PADDING_WIDTH_INC 0;
1719             max: DATETIME_POPUP_CONTENT_RIGHT_PADDING_WIDTH_INC -1;
1720             rel2.to: "bg";
1721             rel1 {
1722                relative: 1.0 1.0;
1723                to_x: "bg";
1724                to_y: "top.padding";
1725             }
1726             rel2 {
1727                relative: 1.0 0.0;
1728                to_x: "bg";
1729                to_y: "bottom.padding";
1730             }
1731             align: 1.0 0.5;
1732          }
1733       }
1734       part { name: "field0";
1735          type: SWALLOW;
1736          scale: 1;
1737          description { state: "default" 0.0;
1738             min: DATETIME_POPUP_CONTENT_FIELD_WIDTH_INC 0;
1739             rel1 {
1740                relative: 1.0 0.0;
1741                to: "left.padding";
1742             }
1743             rel2.to: "left.padding";
1744             align: 0.0 0.5;
1745          }
1746       }
1747       part { name: "center.padding1";
1748          type: RECT;
1749          scale: 1;
1750          description { state: "default" 0.0;
1751             color: 0 0 0 0;
1752             min: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC 0;
1753             max: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC -1;
1754             rel1 {
1755                relative: 1.0 0.0;
1756                to: "field0";
1757             }
1758             rel2.to: "field0";
1759             align: 0.0 0.5;
1760          }
1761       }
1762       part { name: "field1";
1763          type: SWALLOW;
1764          scale: 1;
1765          description { state: "default" 0.0;
1766             min: DATETIME_POPUP_CONTENT_FIELD_WIDTH_INC 0;
1767             rel1 {
1768                relative: 1.0 0.0;
1769                to: "center.padding1";
1770             }
1771             rel2 {
1772                relative: 0.0 1.0;
1773                to: "center.padding2";
1774             }
1775          }
1776       }
1777       part { name: "center.padding2";
1778          type: RECT;
1779          scale: 1;
1780          description { state: "default" 0.0;
1781             color: 0 0 0 0;
1782             min: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC 0;
1783             max: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC -1;
1784             rel1.to: "field2";
1785             rel2 {
1786                relative: 0.0 1.0;
1787                to: "field2";
1788             }
1789             align: 1.0 0.5;
1790          }
1791       }
1792       part { name: "field2";
1793          type: SWALLOW;
1794          scale: 1;
1795          description { state: "default" 0.0;
1796             min: DATETIME_POPUP_CONTENT_FIELD_WIDTH_INC 0;
1797             rel1.to: "right.padding";
1798             rel2 {
1799                relative: 0.0 1.0;
1800                to: "right.padding";
1801             }
1802             align: 1.0 0.5;
1803          }
1804       }
1805       part {
1806          name: "event_area";
1807          type: RECT;
1808          description { state: "default" 0.0;
1809             color: 0 0 0 0;
1810             visible: 0;
1811          }
1812          description { state: "visible" 0.0;
1813             inherit: "default" 0.0;
1814             visible: 1;
1815          }
1816       }
1817    }
1818 }
1819
1820 group { name: "elm/layout/datetime_popup/time_layout";
1821    inherit: "elm/layout/datetime_popup/date_layout";
1822
1823    parts {
1824       part { name: "hour.minute.color";
1825          type: TEXT;
1826          scale: 1;
1827          description { state: "default" 0.0;
1828             rel1.to: "center.padding1";
1829             rel2.to: "center.padding1";
1830             color: DATETIME_POPUP_CONTENT_FIELD_TEXT_COLOR_INC;
1831             text {
1832                font: "Tizen:style=Regular";
1833                size: DATETIME_POPUP_CONTENT_FIELD_TEXT_SIZE_INC;
1834                min: 0 0;
1835                text_class: "tizen";
1836                text: ":";
1837             }
1838          }
1839       }
1840    }
1841 }
1842
1843 group { name: "elm/layout/datetime_popup/time_layout_24hr";
1844    inherit: "elm/layout/datetime_popup/date_layout";
1845
1846    parts {
1847       part { name: "field0";
1848          type: SWALLOW;
1849          scale: 1;
1850          description { state: "default" 0.0;
1851             min: DATETIME_POPUP_CONTENT_TIME_24HR_FIELD_WIDTH_INC 0;
1852             rel1 {
1853                relative: 1.0 0.0;
1854                to: "left.padding";
1855             }
1856             rel2.to: "left.padding";
1857             align: 0.0 0.5;
1858          }
1859       }
1860       part { name: "hour.minute.color";
1861          type: TEXT;
1862          scale: 1;
1863          description { state: "default" 0.0;
1864             rel1.to: "center.padding1";
1865             rel2.to: "center.padding1";
1866             color: DATETIME_POPUP_CONTENT_FIELD_TEXT_COLOR_INC;
1867             text {
1868                font: "Tizen:style=Regular";
1869                size: DATETIME_POPUP_CONTENT_FIELD_TEXT_SIZE_INC;
1870                min: 0 0;
1871                text_class: "tizen";
1872                text: ":";
1873             }
1874          }
1875       }
1876       part { name: "field1";
1877          type: SWALLOW;
1878          scale: 1;
1879          description { state: "default" 0.0;
1880             min: DATETIME_POPUP_CONTENT_TIME_24HR_FIELD_WIDTH_INC 0;
1881             rel1 {
1882                relative: 1.0 0.0;
1883                to: "center.padding1";
1884             }
1885             rel2 {
1886                relative: 0.0 1.0;
1887                to: "center.padding2";
1888             }
1889          }
1890       }
1891       part { name: "center.padding2";
1892          type: RECT;
1893          scale: 1;
1894          description { state: "default" 0.0;
1895             visible: 0;
1896             min: 0 0;
1897             max: 0 -1;
1898             rel1.to: "right.padding";
1899             rel2.to: "right.padding";
1900          }
1901       }
1902       part { name: "field2";
1903          type: SWALLOW;
1904          scale: 1;
1905          description { state: "default" 0.0;
1906             min: 0 0;
1907             max: 0 -1;
1908             visible: 0;
1909             rel1.to: "right.padding";
1910             rel2.to: "right.padding";
1911          }
1912       }
1913    }
1914 }