[datetime.edc] New program for datetime,datepicker,bg,hide signal is added in datetim...
[framework/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_bg_hide";\
527          signal: "datetime,datepicker,bg,hide";\
528          source: "elm";\
529          action: STATE_SET "default" 0.0;\
530          target: "date.picker.bg";\
531          target: "date.picker.left.pad";\
532          target: "date.picker.right.pad";\
533       }\
534       program {\
535          name: "datepicker_focus";\
536          signal: "elm,action,focus_highlight,show";\
537          source: "elm";\
538          action: STATE_SET "focus" 0.0;\
539          target: "datepicker.focus";\
540       }\
541       program {\
542          name: "datepicker_unfocus";\
543          signal: "elm,action,focus_highlight,hide";\
544          source: "elm";\
545          action: STATE_SET "default" 0.0;\
546          target: "datepicker.focus";\
547       }\
548       program { name: "datepicker_touch_snd";\
549          signal: "mouse,clicked,1";\
550          source: "date.picker.bg";\
551          action: PLAY_SAMPLE "touch_sound" 1.0;\
552          after: datepicker_show_signal;\
553       }\
554       program { name: "datepicker_show_signal";\
555          action: SIGNAL_EMIT "datetime,datepicker,show" "";\
556       }\
557    }
558
559 #define DATETIME_TIMEPICKER_BG \
560    part {\
561       name: "time.picker.left.pad"; \
562       type: RECT;\
563       scale: 1;\
564       description { state: "default" 0.0; \
565          min: 0 0;\
566          visible: 0;\
567          align: 1.0 0.5; \
568          fixed: 1 0;\
569          rel1 {\
570             relative: 0.0 0.0;\
571             to: "left.padding3";\
572          }\
573          rel2 {\
574             relative: 0.0 1.0;\
575             to: "left.padding3";\
576          }\
577       }\
578       description { state: "datefirst" 0.0;\
579          inherit: "default" 0.0;\
580          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
581       }\
582       description { state: "timefirst" 0.0;\
583          inherit: "default" 0.0;\
584          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
585          rel1 {\
586             relative: 0.0 0.0;\
587             to: "left.padding0";\
588          }\
589          rel2 {\
590             relative: 0.0 1.0;\
591             to: "left.padding0";\
592          }\
593       }\
594       description { state: "timefirst24hr" 0.0;\
595          inherit: "default" 0.0;\
596          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
597          rel1 {\
598             relative: 0.0 0.0;\
599             to: "left.padding0";\
600          }\
601          rel2 {\
602             relative: 0.0 1.0;\
603             to: "left.padding0";\
604          }\
605       }\
606    }\
607    part {\
608       name: "time.picker.right.pad"; \
609       type: RECT;\
610       scale: 1;\
611       description { state: "default" 0.0; \
612          min: 0 0;\
613          visible: 0;\
614          align: 0.0 0.5; \
615          fixed: 1 0;\
616          rel1 {\
617             relative: 1.0 0.0;\
618             to: "right.padding5";\
619          }\
620          rel2 {\
621             relative: 1.0 1.0;\
622             to: "right.padding5";\
623          }\
624       }\
625       description { state: "datefirst" 0.0;\
626          inherit: "default" 0.0;\
627          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
628       }\
629       description { state: "timefirst" 0.0;\
630          inherit: "default" 0.0;\
631          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
632          rel1 {\
633             relative: 1.0 0.0;\
634             to: "right.padding2";\
635          }\
636          rel2 {\
637             relative: 1.0 1.0;\
638             to: "right.padding2";\
639          }\
640       }\
641       description { state: "timefirst24hr" 0.0;\
642          inherit: "default" 0.0;\
643          min: DATETIME_PICKER_BG_PADDING_SIZE_INC;\
644          rel1 {\
645             relative: 1.0 0.0;\
646             to: "right.padding1";\
647          }\
648          rel2 {\
649             relative: 1.0 1.0;\
650             to: "right.padding1";\
651          }\
652       }\
653    }\
654    part {\
655       name: "time.picker.bg"; \
656       scale: 1;\
657       description { state: "default" 0.0; \
658          min: 0 0;\
659          visible: 0;\
660          fixed: 1 0;\
661          image {\
662             normal: "00_button_01.png";\
663             border: DATETIME_BG_IMAGE_BORDER_INC;\
664             border_scale: 1;\
665          }\
666          rel1 {\
667             relative: 0.0 0.0;\
668             to: "time.picker.left.pad";\
669          }\
670          rel2 {\
671             relative: 1.0 1.0;\
672             to: "time.picker.right.pad";\
673          }\
674       }\
675       description { state: "datefirst" 0.0;\
676          inherit: "default" 0.0;\
677          visible: 1;\
678       }\
679       description { state: "timefirst" 0.0;\
680          inherit: "default" 0.0;\
681          visible: 1;\
682       }\
683       description { state: "timefirst24hr" 0.0;\
684          inherit: "default" 0.0;\
685          visible: 1;\
686       }\
687       description { state: "datefirst_press" 0.0;\
688          inherit: "datefirst" 0.0;\
689          image {\
690             normal: "00_button_01_press.png";\
691             border: DATETIME_BG_IMAGE_BORDER_INC;\
692             border_scale: 1;\
693          }\
694       }\
695       description { state: "timefirst_press" 0.0;\
696          inherit: "timefirst" 0.0;\
697          image {\
698             normal: "00_button_01_press.png";\
699             border: DATETIME_BG_IMAGE_BORDER_INC;\
700             border_scale: 1;\
701          }\
702       }\
703       description { state: "timefirst24hr_press" 0.0;\
704          inherit: "timefirst24hr" 0.0;\
705          image {\
706             normal: "00_button_01_press.png";\
707             border: DATETIME_BG_IMAGE_BORDER_INC;\
708             border_scale: 1;\
709          }\
710       }\
711    }\
712    part {\
713       name: "timepicker.focus";\
714       scale: 1;\
715       description {\
716          state: "default" 0.0;\
717          visible: 0;\
718          rel1.to : "time.picker.bg";\
719          rel2.to : "time.picker.bg";\
720          image {\
721             normal: "00_button_01_focus.png";\
722             border: DATETIME_BG_IMAGE_BORDER_INC;\
723             border_scale: 1;\
724          }\
725       }\
726       description { state: "focus" 0.0;\
727          inherit: "default" 0.0;\
728          visible: 1;\
729       }\
730    }\
731    programs{\
732       program {\
733          name: "timepicker_starting_field3";\
734          signal: "timepicker,starting,field3";\
735          source: "elm";\
736          in: 0.001 0.0;\
737          script {\
738             new st[31];\
739             new Float:vl;\
740             get_state(PART:"field3", st, 30, vl);\
741             if (!strcmp(st, "enable")) {\
742               set_state(PART:"time.picker.bg", "datefirst", 0.0);\
743               set_state(PART:"time.picker.left.pad", "datefirst", 0.0);\
744               set_state(PART:"time.picker.right.pad", "datefirst", 0.0);\
745             }\
746          }\
747       }\
748       program {\
749          name: "timepicker_starting_field0";\
750          signal: "timepicker,starting,field0";\
751          source: "elm";\
752          in: 0.001 0.0;\
753          script {\
754             new st[31];\
755             new Float:vl;\
756             get_state(PART:"date.picker.bg", st, 30, vl);\
757             if (!strcmp(st, "timefirst24hr")) {\
758               set_state(PART:"time.picker.bg", "timefirst24hr", 0.0);\
759               set_state(PART:"time.picker.left.pad", "timefirst24hr", 0.0);\
760               set_state(PART:"time.picker.right.pad", "timefirst24hr", 0.0);\
761             }\
762             else {\
763               set_state(PART:"time.picker.bg", "timefirst", 0.0);\
764               set_state(PART:"time.picker.left.pad", "timefirst", 0.0);\
765               set_state(PART:"time.picker.right.pad", "timefirst", 0.0);\
766             }\
767          }\
768       }\
769       program {\
770          name: "timepicker_starting_field1";\
771          signal: "timepicker,starting,field1";\
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_field2";\
780          signal: "timepicker,starting,field2";\
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_field4";\
789          signal: "timepicker,starting,field4";\
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_starting_field5";\
798          signal: "timepicker,starting,field5";\
799          source: "elm";\
800          action: STATE_SET "default" 0.0;\
801          target: "time.picker.bg";\
802          target: "time.picker.left.pad";\
803          target: "time.picker.right.pad";\
804       }\
805       program {\
806          name: "timepicker_mouse_down";\
807          signal: "mouse,down,1";\
808          source: "time.picker.bg";\
809          script {\
810             new st[31];\
811             new Float:vl;\
812             get_state(PART:"time.picker.bg", st, 30, vl);\
813             if (!strcmp(st, "datefirst")) {\
814               set_state(PART:"time.picker.bg", "datefirst_press", 0.0);\
815             }\
816             else if (!strcmp(st, "timefirst")) {\
817               set_state(PART:"time.picker.bg", "timefirst_press", 0.0);\
818             }\
819             else if (!strcmp(st, "timefirst24hr")) {\
820               set_state(PART:"time.picker.bg", "timefirst24hr_press", 0.0);\
821             }\
822          }\
823       }\
824       program {\
825          name: "timepicker_mouse_up";\
826          signal: "mouse,up,1";\
827          source: "time.picker.bg";\
828          script {\
829             new st[31];\
830             new Float:vl;\
831             get_state(PART:"time.picker.bg", st, 30, vl);\
832             if (!strcmp(st, "datefirst_press")) {\
833               set_state(PART:"time.picker.bg", "datefirst", 0.0);\
834             }\
835             else if (!strcmp(st, "timefirst_press")) {\
836               set_state(PART:"time.picker.bg", "timefirst", 0.0);\
837             }\
838             else if (!strcmp(st, "timefirst24hr_press")) {\
839               set_state(PART:"time.picker.bg", "timefirst24hr", 0.0);\
840             }\
841          }\
842       }\
843       program {\
844          name: "timepicker_bg_hide";\
845          signal: "datetime,timepicker,bg,hide";\
846          source: "elm";\
847          action: STATE_SET "default" 0.0;\
848          target: "time.picker.bg";\
849          target: "time.picker.left.pad";\
850          target: "time.picker.right.pad";\
851       }\
852       program {\
853          name: "timepicker_focus";\
854          signal: "elm,action,focus_highlight,show";\
855          source: "elm";\
856          action: STATE_SET "focus" 0.0;\
857          target: "timepicker.focus";\
858       }\
859       program {\
860          name: "timepicker_unfocus";\
861          signal: "elm,action,focus_highlight,hide";\
862          source: "elm";\
863          action: STATE_SET "default" 0.0;\
864          target: "timepicker.focus";\
865       }\
866       program { name: "timepicker_touch_snd";\
867          signal: "mouse,clicked,1";\
868          source: "time.picker.bg";\
869          action: PLAY_SAMPLE "touch_sound" 1.0;\
870          after: timepicker_show_signal;\
871       }\
872       program { name: "timepicker_show_signal";\
873          action: SIGNAL_EMIT "datetime,timepicker,show" "";\
874       }\
875    }
876
877 group { name: "elm/datetime/base/default";
878    images {
879       image: "00_button_01.png" COMP;
880       image: "00_button_01_press.png" COMP;
881       image: "00_button_01_focus.png" COMP;
882    }
883    parts {
884       part {
885          name: "bg";
886          type: RECT;
887          scale: 1;
888          description {
889             state: "default" 0.0;
890             color: 0 0 0 0;
891             min: 0 DATETIME_WIDGET_HEIGHT;
892             max: -1 DATETIME_WIDGET_HEIGHT;
893          }
894       }
895       part {
896          name: "left.padding";
897          type: RECT;
898          scale: 1;
899          clip_to: "clipper";
900          mouse_events: 0;
901          description {
902             state: "default" 0.0;
903             visible: 0;
904             min: DATETIME_WIDGET_PADDING_SIZE_INC;
905             align: 0.0 0.5;
906             fixed: 1 0;
907             rel1.to: "bg";
908             rel2 {
909                relative: 0.0 1.0;
910                to: "bg";
911             }
912          }
913       }
914       part {
915          name: "right.padding";
916          type: RECT;
917          scale: 1;
918          clip_to: "clipper";
919          mouse_events: 0;
920          description {
921             state: "default" 0.0;
922             visible: 0;
923             min: DATETIME_WIDGET_PADDING_SIZE_INC;
924             align: 1.0 0.5;
925             fixed: 1 0;
926             rel1 {
927                relative: 1.0 0.0;
928                to: "bg";
929             }
930             rel2.to: "bg";
931          }
932       }
933
934       DATETIME_PADDING(0, "left.padding")
935       DATETIME_PADDING(1, "separator0")
936       DATETIME_PADDING(2, "separator1")
937       DATETIME_PADDING(3, "separator2")
938       DATETIME_PADDING(4, "separator3")
939       DATETIME_PADDING(5, "separator4")
940
941       DATETIME_DATEPICKER_BG
942       DATETIME_TIMEPICKER_BG
943
944       DATETIME_FIELD(0)
945       DATETIME_FIELD(1)
946       DATETIME_FIELD(2)
947       DATETIME_FIELD(3)
948       DATETIME_FIELD(4)
949       DATETIME_FIELD(5)
950
951       part {
952          name: "clipper";
953          type: RECT;
954          description { state: "default" 0.0;
955             color: 255 255 255 255;
956          }
957          description { state: "visible" 0.0;
958             inherit: "default" 0.0;
959             color: 255 255 255 102;
960          }
961       }
962       part {
963          name: "disabler";
964          type: RECT;
965          description { state: "default" 0.0;
966             color: 0 0 0 0;
967             visible: 0;
968             rel1.to: "bg";
969             rel2.to: "bg";
970          }
971          description { state: "visible" 0.0;
972             inherit: "default" 0.0;
973             visible: 1;
974          }
975       }
976    }
977    programs {
978       program {
979          name: "disble_datetime";
980          signal: "elm,state,disabled";
981          source: "elm";
982          action: STATE_SET "visible" 0.0;
983          target: "disabler";
984          target: "clipper";
985       }
986       program {
987          name: "enable_datetime";
988          signal: "elm,state,enabled";
989          source: "elm";
990          action: STATE_SET "default" 0.0;
991          target: "disabler";
992          target: "clipper";
993       }
994       DATETIME_PICKER_PADDING_PROGRAMS
995    }
996 }
997
998 group { name: "elm/datetime/base/pickerstyle";
999 }
1000
1001 #define DATETIME_FIELD_STYLE1(_pos, _after) \
1002    part {\
1003       name: "field"#_pos; \
1004       type: SWALLOW; \
1005       scale: 1;\
1006       clip_to: "clipper";\
1007       repeat_events: 1;\
1008       description { state: "default" 0.0; \
1009          visible: 0;\
1010          min: 0 0;\
1011          align: 0.0 0.5;\
1012          fixed: 1 1;\
1013          rel1 {\
1014             relative: 1.0 0.0;\
1015             to: "separator"#_after;\
1016          }\
1017          rel2 {\
1018             relative: 1.0 1.0;\
1019             to: "separator"#_after;\
1020          }\
1021       }\
1022       description { state: "enable" 0.0;\
1023          inherit: "default" 0.0;\
1024          visible: 1;\
1025          min: DATETIME_FIELD_MIN_SIZE_INC;\
1026       }\
1027    }\
1028    programs{\
1029       program {\
1030          name: "field_"#_pos"enabled";\
1031          signal: "field"#_pos",enable";\
1032          source: "elm";\
1033          action: STATE_SET "enable" 0.0;\
1034          target: "field"#_pos;\
1035       }\
1036       program {\
1037          name: "field_"#_pos"disabled";\
1038          signal: "field"#_pos",disable";\
1039          source: "elm";\
1040          action: STATE_SET "default" 0.0;\
1041          target: "field"#_pos;\
1042       }\
1043     }
1044
1045 #define DATETIME_SEPARATOR_STYLE1(_pos) \
1046    part {\
1047       name: "separator"#_pos; \
1048       type: TEXT;\
1049       scale: 1;\
1050       clip_to: "clipper";\
1051       repeat_events: 1;\
1052       description {\
1053          state: "default" 0.0;\
1054          visible: 0;\
1055          min: DATETIME_SEPARATOR_MIN_SIZE_INC;\
1056          max: DATETIME_SEPARATOR_MIN_SIZE_INC;\
1057          align: 0.0 0.5;\
1058          fixed: 1 1;\
1059          rel1 {\
1060             relative: 1.0 0.0;\
1061             to: "field"#_pos;\
1062          }\
1063          rel2 {\
1064             relative: 1.0 1.0;\
1065             to: "field"#_pos;\
1066          }\
1067          color: DATETIME_SEPARATOR_TEXT_COLOR_INC;\
1068          text {\
1069             font: "Tizen:style=Regular";\
1070             size: DATETIME_SEPARATOR_TEXT_FONT_SIZE_INC;\
1071             min: 1 0; \
1072             text_class: "tizen";\
1073          }\
1074       }\
1075       description { state: "enable" 0.0;\
1076          inherit: "default" 0.0;\
1077          visible: 1;\
1078       }\
1079       description { state: "hide" 0.0;\
1080          inherit: "default" 0.0;\
1081          min: 0 0;\
1082          max: 0 0;\
1083       }\
1084    }\
1085    programs {\
1086       program {\
1087          name: "separator"#_pos",enabled";\
1088          signal: "field"#_pos",separator,enable";\
1089          source: "elm";\
1090          action: STATE_SET "enable" 0.0;\
1091          target: "separator"#_pos;\
1092       }\
1093       program {\
1094          name: "separator"#_pos",disabled";\
1095          signal: "field"#_pos",separator,disable";\
1096          source: "elm";\
1097          script {\
1098             new st[31];\
1099             new Float:vl;\
1100             get_state(PART:"separator"#_pos, st, 30, vl);\
1101             if (strcmp(st, "hide")) \
1102             {\
1103                set_state(PART:"separator"#_pos, "default", 0.0);\
1104             }\
1105          }\
1106       }\
1107       program {\
1108          name: "separator"#_pos",hide";\
1109          signal: "field"#_pos",disable";\
1110          source: "elm";\
1111          action: STATE_SET "hide" 0.0;\
1112          target: "separator"#_pos;\
1113       }\
1114    }
1115
1116
1117 group { name: "elm/datetime/base/style1";
1118    parts {
1119       part {
1120          name: "bg";
1121          type: RECT;
1122          scale: 1;
1123          description {
1124             state: "default" 0.0;
1125             color: 0 0 0 0;
1126          }
1127       }
1128       part {
1129          name: "left.padding";
1130          type: RECT;
1131          scale: 1;
1132          clip_to: "clipper";
1133          mouse_events: 0;
1134          description {
1135             state: "default" 0.0;
1136             visible: 0;
1137             min: DATETIME_LEFT_PADDING_SIZE_INC;
1138             max: DATETIME_LEFT_PADDING_SIZE_INC;
1139             align: 0.0 0.5;
1140             fixed: 1 1;
1141             rel1.to: "bg";
1142             rel2 {
1143                relative: 0.0 1.0;
1144                to: "bg";
1145             }
1146          }
1147       }
1148       part {
1149          name: "field0";
1150          type: SWALLOW;
1151          scale: 1;
1152          clip_to: "clipper";
1153          repeat_events: 1;
1154          description {
1155             state: "default" 0.0;
1156             visible: 0;
1157             min: 0 0;
1158             align: 0.0 0.5;
1159             fixed: 1 0;
1160             rel1 {
1161                relative: 0.5 0.0;
1162                to_x: "left.padding";
1163             }
1164             rel2 {
1165                relative: 0.5 1.0;
1166                to_x: "left.padding";
1167             }
1168          }
1169          description { state: "enable" 0.0;
1170             inherit: "default" 0.0;
1171             visible: 1;
1172             min: DATETIME_FIELD_MIN_SIZE_INC;
1173          }
1174       }
1175       DATETIME_SEPARATOR_STYLE1(0)
1176       DATETIME_FIELD_STYLE1(1, 0)
1177       DATETIME_SEPARATOR_STYLE1(1)
1178       DATETIME_FIELD_STYLE1(2, 1)
1179       DATETIME_SEPARATOR_STYLE1(2)
1180       DATETIME_FIELD_STYLE1(3, 2)
1181       DATETIME_SEPARATOR_STYLE1(3)
1182       DATETIME_FIELD_STYLE1(4, 3)
1183       DATETIME_SEPARATOR_STYLE1(4)
1184       DATETIME_FIELD_STYLE1(5, 4)
1185       DATETIME_SEPARATOR_STYLE1(5)
1186       part {
1187          name: "right.padding";
1188          type: RECT;
1189          scale: 1;
1190          clip_to: "clipper";
1191          mouse_events: 0;
1192          description {
1193             state: "default" 0.0;
1194             visible: 0;
1195             min: DATETIME_LEFT_PADDING_SIZE_INC;
1196             max: DATETIME_LEFT_PADDING_SIZE_INC;
1197             align: 1.0 0.5;
1198             fixed: 1 1;
1199             rel2 {
1200                relative: 1.0 0.0;
1201                to: "bg";
1202             }
1203             rel2.to: "bg";
1204          }
1205       }
1206       part {
1207          name: "clipper";
1208          type: RECT;
1209          description { state: "default" 0.0;
1210             color: 255 255 255 255;
1211          }
1212          description { state: "visible" 0.0;
1213             inherit: "default" 0.0;
1214             color: 255 255 255 102;
1215          }
1216       }
1217       part {
1218          name: "disabler";
1219          type: RECT;
1220          description { state: "default" 0.0;
1221             color: 0 0 0 0;
1222             visible: 0;
1223          }
1224          description { state: "visible" 0.0;
1225             inherit: "default" 0.0;
1226             visible: 1;
1227          }
1228       }
1229    }
1230    programs {
1231       program {
1232          name: "disble_datetime";
1233          signal: "elm,state,disabled";
1234          source: "elm";
1235          action: STATE_SET "visible" 0.0;
1236          target: "disabler";
1237          target: "clipper";
1238       }
1239       program {
1240          name: "enable_datetime";
1241          signal: "elm,state,enabled";
1242          source: "elm";
1243          action: STATE_SET "default" 0.0;
1244          target: "disabler";
1245          target: "clipper";
1246       }
1247       program {
1248          name: "field0,enabled";
1249          signal: "field0,enable";
1250          source: "elm";
1251          action: STATE_SET "enable" 0.0;
1252          target: "field0";
1253       }
1254       program {
1255          name: "field0,disabled";
1256          signal: "field0,disable";
1257          source: "elm";
1258          action: STATE_SET "default" 0.0;
1259          target: "field0";
1260       }
1261    }
1262 }
1263 group { name: "elm/spinner/base/default";
1264    alias: "elm/spinner/base/datetime_popup";
1265    alias: "elm/spinner/base/datetime_popup/year";
1266    alias: "elm/spinner/base/datetime_popup/month";
1267    alias: "elm/spinner/base/datetime_popup/date";
1268    alias: "elm/spinner/base/datetime_popup/hour";
1269    alias: "elm/spinner/base/datetime_popup/minute";
1270    images {
1271       image: "00_picker_arrow_down.png" COMP;
1272       image: "00_picker_arrow_up.png" COMP;
1273       image: "00_button_01.png" COMP;
1274       image: "00_button_01_press.png" COMP;
1275    }
1276    parts {
1277       part { name: "bg";
1278          type: RECT;
1279          scale: 1;
1280          description { state: "default" 0.0;
1281             color: 0 0 0 0;
1282          }
1283       }
1284       part { name: "up.image";
1285          scale: 1;
1286          description { state: "default" 0.0;
1287             align: 0.5 0.0;
1288             min: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1289             max: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1290             image {
1291                normal: "00_button_01.png";
1292                border: SPINNER_UP_DOWN_IMAGE_BORDER_SIZE_INC;
1293                border_scale: 1;
1294             }
1295          }
1296          description { state: "pressed" 0.0;
1297             inherit: "default" 0.0;
1298             image.normal: "00_button_01_press.png";
1299          }
1300       }
1301       part { name: "up.image.arrow";
1302          scale: 1;
1303          description { state: "default" 0.0;
1304             rel1.to: "up.image";
1305             rel2.to: "up.image";
1306             min: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1307             max: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1308             image.normal: "00_picker_arrow_up.png";
1309          }
1310       }
1311       part { name: "up.image.arrow.shadow.proxy";
1312          type: PROXY;
1313          scale: 1;
1314          clip_to: "up.image.arrow.shadow.clipper";
1315          description { state: "default" 0.0;
1316             source: "up.image.arrow";
1317             proxy.source_clip: 0;
1318             rel1 {
1319                to: "up.image.arrow";
1320                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_TOP_OFFSET_INC;
1321             }
1322             rel2 {
1323                to: "up.image.arrow";
1324                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_BOTTOM_OFFSET_INC;
1325             }
1326          }
1327          description { state: "pressed" 0.0;
1328             inherit: "default" 0.0;
1329             rel1 {
1330                to: "up.image.arrow";
1331                offset: SPINNER_UP_DOWN_ARROW_PRESSED_TOP_OFFSET_INC;
1332             }
1333             rel2 {
1334                to: "up.image.arrow";
1335                offset: SPINNER_UP_DOWN_ARROW_PRESSED_BOTTOM_OFFSET_INC;
1336             }
1337          }
1338       }
1339       part { name: "up.image.arrow.proxy";
1340          type: PROXY;
1341          scale: 1;
1342          clip_to: "up.image.arrow.clipper";
1343          description { state: "default" 0.0;
1344             source: "up.image.arrow";
1345             proxy.source_clip: 0;
1346             rel1.to: "up.image.arrow";
1347             rel2.to: "up.image.arrow";
1348          }
1349       }
1350       part { name: "up.image.arrow.shadow.clipper";
1351          type: RECT;
1352          scale: 1;
1353          description { state: "default" 0.0;
1354             rel1.to: "up.image.arrow";
1355             rel2.to: "up.image.arrow";
1356             color: SPINNER_UP_DOWN_ARROW_SHADOW_DEFAULT_COLOR_INC;
1357          }
1358          description { state: "pressed" 0.0;
1359             inherit: "default" 0.0;
1360             color: SPINNER_UP_DOWN_ARROW_SHADOW_PRESSED_COLOR_INC;
1361          }
1362       }
1363       part { name: "up.image.arrow.clipper";
1364          type: RECT;
1365          scale: 1;
1366          description { state: "default" 0.0;
1367             rel1.to: "up.image.arrow";
1368             rel2.to: "up.image.arrow";
1369             color: SPINNER_UP_DOWN_ARROW_DEFAULT_COLOR_INC;
1370          }
1371          description { state: "pressed" 0.0;
1372             inherit: "default" 0.0;
1373             color: SPINNER_UP_DOWN_ARROW_PRESSED_COLOR_INC;
1374          }
1375       }
1376       part { name: "down.image";
1377          scale: 1;
1378          description { state: "default" 0.0;
1379             align: 0.5 1.0;
1380             min: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1381             max: SPINNER_UP_DOWN_IMAGE_SIZE_INC;
1382             image {
1383                normal: "00_button_01.png";
1384                border: SPINNER_UP_DOWN_IMAGE_BORDER_SIZE_INC;
1385                border_scale: 1;
1386             }
1387          }
1388          description { state: "pressed" 0.0;
1389             inherit: "default" 0.0;
1390             image.normal: "00_button_01_press.png";
1391          }
1392       }
1393       part { name: "down.image.arrow";
1394          scale: 1;
1395          description { state: "default" 0.0;
1396             rel1.to: "down.image";
1397             rel2.to: "down.image";
1398             min: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1399             max: SPINNER_UP_DOWN_ARROW_IMAGE_SIZE_INC;
1400             image.normal: "00_picker_arrow_down.png";
1401          }
1402       }
1403       part { name: "down.image.arrow.shadow.proxy";
1404          type: PROXY;
1405          scale: 1;
1406          clip_to: "down.image.arrow.shadow.clipper";
1407          description { state: "default" 0.0;
1408             source: "down.image.arrow";
1409             proxy.source_clip: 0;
1410             rel1 {
1411                to: "down.image.arrow";
1412                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_TOP_OFFSET_INC;
1413             }
1414             rel2 {
1415                to: "down.image.arrow";
1416                offset: SPINNER_UP_DOWN_ARROW_DEFAULT_BOTTOM_OFFSET_INC;
1417             }
1418          }
1419          description { state: "pressed" 0.0;
1420             inherit: "default" 0.0;
1421             rel1 {
1422                to: "down.image.arrow";
1423                offset: SPINNER_UP_DOWN_ARROW_PRESSED_TOP_OFFSET_INC;
1424             }
1425             rel2 {
1426                to: "down.image.arrow";
1427                offset: SPINNER_UP_DOWN_ARROW_PRESSED_BOTTOM_OFFSET_INC;
1428             }
1429          }
1430       }
1431       part { name: "down.image.arrow.proxy";
1432          type: PROXY;
1433          scale: 1;
1434          clip_to: "down.image.arrow.clipper";
1435          description { state: "default" 0.0;
1436             source: "down.image.arrow";
1437             proxy.source_clip: 0;
1438             rel1.to: "down.image.arrow";
1439             rel2.to: "down.image.arrow";
1440          }
1441       }
1442       part { name: "down.image.arrow.shadow.clipper";
1443          type: RECT;
1444          scale: 1;
1445          description { state: "default" 0.0;
1446             rel1.to: "down.image.arrow";
1447             rel2.to: "down.image.arrow";
1448             color: SPINNER_UP_DOWN_ARROW_SHADOW_DEFAULT_COLOR_INC;
1449          }
1450          description { state: "pressed" 0.0;
1451             inherit: "default" 0.0;
1452             color: SPINNER_UP_DOWN_ARROW_SHADOW_PRESSED_COLOR_INC;
1453          }
1454       }
1455       part { name: "down.image.arrow.clipper";
1456          type: RECT;
1457          scale: 1;
1458          description { state: "default" 0.0;
1459             rel1.to: "down.image.arrow";
1460             rel2.to: "down.image.arrow";
1461             color: SPINNER_UP_DOWN_ARROW_DEFAULT_COLOR_INC;
1462          }
1463          description { state: "pressed" 0.0;
1464             inherit: "default" 0.0;
1465             color: SPINNER_UP_DOWN_ARROW_PRESSED_COLOR_INC;
1466          }
1467       }
1468       part { name: "elm.text";
1469          type: TEXT;
1470          scale: 1;
1471          description { state: "default" 0.0;
1472             visible: 1;
1473             color: SPINNER_ENTRY_TEXT_COLOR_INC;
1474             min: 0 SPINNER_TEXT_HEIGHT_INC;
1475             max: -1 SPINNER_TEXT_HEIGHT_INC;
1476             text {
1477                font: "Tizen:style=Regular";
1478                size: SPINNER_ENTRY_TEXT_SIZE_INC;
1479                min: 0 0;
1480                max: 1 0;
1481                text_class: "tizen";
1482             }
1483          }
1484          description { state: "active" 0.0;
1485             inherit: "default" 0.0;
1486             visible: 0;
1487          }
1488       }
1489       part { name: "button.events";
1490          type: RECT;
1491          mouse_events: 1;
1492          description { state: "default" 0.0;
1493             rel1.to: "elm.text";
1494             rel2.to: "elm.text";
1495             fixed: 1 1;
1496             color: 0 0 0 0;
1497          }
1498       }
1499       part { name: "elm.swallow.entry";
1500          type: SWALLOW;
1501          description { state: "default" 0.0;
1502             visible: 0;
1503             rel1.to: "elm.text";
1504             rel2.to: "elm.text";
1505             fixed: 1 1;
1506          }
1507          description { state: "active" 0.0;
1508             inherit: "default" 0.0;
1509             visible: 1;
1510          }
1511       }
1512       part { name: "up.btn";
1513          type: RECT;
1514          repeat_events: 1;
1515          scale: 1;
1516          description { state: "default" 0.0;
1517            rel1.to: "up.image";
1518            rel2.to: "up.image";
1519            color: 0 0 0 0;
1520          }
1521       }
1522       part { name: "down.btn";
1523          type: RECT;
1524          repeat_events: 1;
1525          scale: 1;
1526          description { state: "default" 0.0;
1527            rel1.to: "down.image";
1528            rel2.to: "down.image";
1529            color: 0 0 0 0;
1530          }
1531       }
1532       part { name: "disabler";
1533          type: RECT;
1534          description { state: "default" 0.0;
1535             color: 0 0 0 0;
1536             visible: 0;
1537          }
1538          description { state: "disabled" 0.0;
1539             inherit: "default" 0.0;
1540             visible: 1;
1541          }
1542       }
1543    }
1544    programs {
1545       program { name: "text_show";
1546          signal: "elm,state,text,visible";
1547          source: "elm";
1548          action:  STATE_SET "visible" 0.0;
1549          target: "elm.text";
1550       }
1551       program { name: "text_hide";
1552          signal: "elm,state,text,hidden";
1553          source: "elm";
1554          action:  STATE_SET "default" 0.0;
1555          target: "elm.text";
1556       }
1557       program { name: "dec_start_signal_emit";
1558          action: SIGNAL_EMIT "elm,action,decrement,start" "";
1559       }
1560       program { name: "dec_stop_signal_emit";
1561          action: SIGNAL_EMIT "elm,action,decrement,stop" "";
1562       }
1563       program { name: "inc_start_signal_emit";
1564          action: SIGNAL_EMIT "elm,action,increment,start" "";
1565       }
1566       program { name: "inc_stop_signal_emit";
1567          action: SIGNAL_EMIT "elm,action,increment,stop" "";
1568       }
1569       program { name: "dec";
1570          signal: "mouse,down,1*";
1571          source: "down.btn";
1572          action:  STATE_SET "pressed" 0.0;
1573          target: "down.image";
1574          target: "down.image.arrow.shadow.proxy";
1575          target: "down.image.arrow.shadow.clipper";
1576          target: "down.image.arrow.clipper";
1577          after: "dec_start_signal_emit";
1578       }
1579       program { name: "dec2";
1580          signal: "mouse,up,1";
1581          source: "down.btn";
1582          action:  STATE_SET "default" 0.0;
1583          target: "down.image";
1584          target: "down.image.arrow.shadow.proxy";
1585          target: "down.image.arrow.shadow.clipper";
1586          target: "down.image.arrow.clipper";
1587          after: "dec_stop_signal_emit";
1588       }
1589       program { name: "inc";
1590          signal: "mouse,down,1*";
1591          source: "up.btn";
1592          action:  STATE_SET "pressed" 0.0;
1593          target: "up.image";
1594          target: "up.image.arrow.shadow.proxy";
1595          target: "up.image.arrow.shadow.clipper";
1596          target: "up.image.arrow.clipper";
1597          after: "inc_start_signal_emit";
1598       }
1599       program { name: "inc2";
1600          signal: "mouse,up,1";
1601          source: "up.btn";
1602          action:  STATE_SET "default" 0.0;
1603          target: "up.image";
1604          target: "up.image.arrow";
1605          target: "up.image.arrow.shadow.proxy";
1606          target: "up.image.arrow.shadow.clipper";
1607          target: "up.image.arrow.clipper";
1608          after: "inc_stop_signal_emit";
1609       }
1610       program { name: "disable";
1611          signal: "elm,state,disabled";
1612          source: "elm";
1613          action: STATE_SET "disabled" 0.0;
1614          target: "disabler";
1615       }
1616       program { name: "enable";
1617          signal: "elm,state,enabled";
1618          source: "elm";
1619          action: STATE_SET "default" 0.0;
1620          target: "disabler";
1621       }
1622       program { name: "active";
1623          signal: "elm,state,active";
1624          source: "elm";
1625          action: STATE_SET "active" 0.0;
1626          target: "elm.text";
1627          target: "elm.swallow.entry";
1628       }
1629       program { name: "inactive";
1630          signal: "elm,state,inactive";
1631          source: "elm";
1632          action: STATE_SET "default" 0.0;
1633          target: "elm.text";
1634          target: "elm.swallow.entry";
1635       }
1636       program { name: "toggle_text";
1637          signal: "mouse,up,1";
1638          source: "button.events";
1639          action: SIGNAL_EMIT "elm,action,entry,toggle" "";
1640       }
1641       program { name: "up_touch_snd";
1642          signal: "mouse,clicked,1";
1643          source: "up.btn";
1644          action: PLAY_SAMPLE "touch_sound" 1.0;
1645       }
1646       program { name: "down_ouch_snd";
1647          signal: "mouse,clicked,1";
1648          source: "down.btn";
1649          action: PLAY_SAMPLE "touch_sound" 1.0;
1650       }
1651    }
1652 }
1653
1654 group { name: "elm/spinner/base/datetime_popup/ampm";
1655    inherit: "elm/spinner/base/default";
1656
1657    parts {
1658       part { name: "block.events";
1659          type: RECT;
1660          description { state: "default" 0.0;
1661             color: 0 0 0 0;
1662             rel1.to: "elm.text";
1663             rel2.to: "elm.text";
1664          }
1665       }
1666    }
1667 }
1668
1669 group { name: "elm/layout/datetime_popup/date_layout";
1670
1671    parts {
1672       part { name: "bg";
1673          type: RECT;
1674          scale: 1;
1675          description { state: "default" 0.0;
1676             color: 0 0 0 0;
1677             min: DATETIME_POPUP_CONTENT_SIZE_INC;
1678             max: DATETIME_POPUP_CONTENT_SIZE_INC;
1679          }
1680       }
1681       part { name: "top.padding";
1682          type: RECT;
1683          scale: 1;
1684          description { state: "default" 0.0;
1685             color: 0 0 0 0;
1686             min: 0 0;
1687             max: -1 0;
1688             rel1.to: "bg";
1689             rel2 {
1690                relative: 1.0 0.0;
1691                to: "bg";
1692             }
1693             align: 0.5 0.0;
1694          }
1695       }
1696       part { name: "bottom.padding";
1697          type: RECT;
1698          scale: 1;
1699          description { state: "default" 0.0;
1700             color: 0 0 0 0;
1701             min: 0 0;
1702             max: -1 0;
1703             rel1 {
1704                relative: 0.0 1.0;
1705                to: "bg";
1706             }
1707             rel2.to: "bg";
1708             align: 0.5 1.0;
1709          }
1710       }
1711       part { name: "left.padding";
1712          type: RECT;
1713          scale: 1;
1714          description { state: "default" 0.0;
1715             color: 0 0 0 0;
1716             min: DATETIME_POPUP_CONTENT_LEFT_PADDING_WIDTH_INC 0;
1717             max: DATETIME_POPUP_CONTENT_LEFT_PADDING_WIDTH_INC -1;
1718             rel1 {
1719                relative: 0.0 1.0;
1720                to_x: "bg";
1721                to_y: "top.padding";
1722             }
1723             rel2 {
1724                relative: 0.0 0.0;
1725                to_x: "bg";
1726                to_y: "bottom.padding";
1727             }
1728             align: 0.0 0.5;
1729          }
1730       }
1731       part { name: "right.padding";
1732          type: RECT;
1733          scale: 1;
1734          description { state: "default" 0.0;
1735             color: 0 0 0 0;
1736             min: DATETIME_POPUP_CONTENT_RIGHT_PADDING_WIDTH_INC 0;
1737             max: DATETIME_POPUP_CONTENT_RIGHT_PADDING_WIDTH_INC -1;
1738             rel2.to: "bg";
1739             rel1 {
1740                relative: 1.0 1.0;
1741                to_x: "bg";
1742                to_y: "top.padding";
1743             }
1744             rel2 {
1745                relative: 1.0 0.0;
1746                to_x: "bg";
1747                to_y: "bottom.padding";
1748             }
1749             align: 1.0 0.5;
1750          }
1751       }
1752       part { name: "field0";
1753          type: SWALLOW;
1754          scale: 1;
1755          description { state: "default" 0.0;
1756             min: DATETIME_POPUP_CONTENT_FIELD_WIDTH_INC 0;
1757             rel1 {
1758                relative: 1.0 0.0;
1759                to: "left.padding";
1760             }
1761             rel2.to: "left.padding";
1762             align: 0.0 0.5;
1763          }
1764       }
1765       part { name: "center.padding1";
1766          type: RECT;
1767          scale: 1;
1768          description { state: "default" 0.0;
1769             color: 0 0 0 0;
1770             min: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC 0;
1771             max: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC -1;
1772             rel1 {
1773                relative: 1.0 0.0;
1774                to: "field0";
1775             }
1776             rel2.to: "field0";
1777             align: 0.0 0.5;
1778          }
1779       }
1780       part { name: "field1";
1781          type: SWALLOW;
1782          scale: 1;
1783          description { state: "default" 0.0;
1784             min: DATETIME_POPUP_CONTENT_FIELD_WIDTH_INC 0;
1785             rel1 {
1786                relative: 1.0 0.0;
1787                to: "center.padding1";
1788             }
1789             rel2 {
1790                relative: 0.0 1.0;
1791                to: "center.padding2";
1792             }
1793          }
1794       }
1795       part { name: "center.padding2";
1796          type: RECT;
1797          scale: 1;
1798          description { state: "default" 0.0;
1799             color: 0 0 0 0;
1800             min: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC 0;
1801             max: DATETIME_POPUP_CONTENT_CENTER_PADDING_WIDTH_INC -1;
1802             rel1.to: "field2";
1803             rel2 {
1804                relative: 0.0 1.0;
1805                to: "field2";
1806             }
1807             align: 1.0 0.5;
1808          }
1809       }
1810       part { name: "field2";
1811          type: SWALLOW;
1812          scale: 1;
1813          description { state: "default" 0.0;
1814             min: DATETIME_POPUP_CONTENT_FIELD_WIDTH_INC 0;
1815             rel1.to: "right.padding";
1816             rel2 {
1817                relative: 0.0 1.0;
1818                to: "right.padding";
1819             }
1820             align: 1.0 0.5;
1821          }
1822       }
1823       part {
1824          name: "event_area";
1825          type: RECT;
1826          description { state: "default" 0.0;
1827             color: 0 0 0 0;
1828             visible: 0;
1829          }
1830          description { state: "visible" 0.0;
1831             inherit: "default" 0.0;
1832             visible: 1;
1833          }
1834       }
1835    }
1836 }
1837
1838 group { name: "elm/layout/datetime_popup/time_layout";
1839    inherit: "elm/layout/datetime_popup/date_layout";
1840
1841    parts {
1842       part { name: "hour.minute.color";
1843          type: TEXT;
1844          scale: 1;
1845          description { state: "default" 0.0;
1846             rel1.to: "center.padding1";
1847             rel2.to: "center.padding1";
1848             color: DATETIME_POPUP_CONTENT_FIELD_TEXT_COLOR_INC;
1849             text {
1850                font: "Tizen:style=Regular";
1851                size: DATETIME_POPUP_CONTENT_FIELD_TEXT_SIZE_INC;
1852                min: 0 0;
1853                text_class: "tizen";
1854                text: ":";
1855             }
1856          }
1857       }
1858    }
1859 }
1860
1861 group { name: "elm/layout/datetime_popup/time_layout_24hr";
1862    inherit: "elm/layout/datetime_popup/date_layout";
1863
1864    parts {
1865       part { name: "field0";
1866          type: SWALLOW;
1867          scale: 1;
1868          description { state: "default" 0.0;
1869             min: DATETIME_POPUP_CONTENT_TIME_24HR_FIELD_WIDTH_INC 0;
1870             rel1 {
1871                relative: 1.0 0.0;
1872                to: "left.padding";
1873             }
1874             rel2.to: "left.padding";
1875             align: 0.0 0.5;
1876          }
1877       }
1878       part { name: "hour.minute.color";
1879          type: TEXT;
1880          scale: 1;
1881          description { state: "default" 0.0;
1882             rel1.to: "center.padding1";
1883             rel2.to: "center.padding1";
1884             color: DATETIME_POPUP_CONTENT_FIELD_TEXT_COLOR_INC;
1885             text {
1886                font: "Tizen:style=Regular";
1887                size: DATETIME_POPUP_CONTENT_FIELD_TEXT_SIZE_INC;
1888                min: 0 0;
1889                text_class: "tizen";
1890                text: ":";
1891             }
1892          }
1893       }
1894       part { name: "field1";
1895          type: SWALLOW;
1896          scale: 1;
1897          description { state: "default" 0.0;
1898             min: DATETIME_POPUP_CONTENT_TIME_24HR_FIELD_WIDTH_INC 0;
1899             rel1 {
1900                relative: 1.0 0.0;
1901                to: "center.padding1";
1902             }
1903             rel2 {
1904                relative: 0.0 1.0;
1905                to: "center.padding2";
1906             }
1907          }
1908       }
1909       part { name: "center.padding2";
1910          type: RECT;
1911          scale: 1;
1912          description { state: "default" 0.0;
1913             visible: 0;
1914             min: 0 0;
1915             max: 0 -1;
1916             rel1.to: "right.padding";
1917             rel2.to: "right.padding";
1918          }
1919       }
1920       part { name: "field2";
1921          type: SWALLOW;
1922          scale: 1;
1923          description { state: "default" 0.0;
1924             min: 0 0;
1925             max: 0 -1;
1926             visible: 0;
1927             rel1.to: "right.padding";
1928             rel2.to: "right.padding";
1929          }
1930       }
1931    }
1932 }