1 /** 2 * @defgroup efl_ui_clock EFL Ui Clock Widget 3 * @ingroup Elementary 4 * 5 * @image html clock_inheritance_tree.png 6 * @image latex clock_inheritance_tree.eps 7 * 8 * @image html img/widget/clock/preview-00.png 9 * @image latex img/widget/clock/preview-00.eps 10 * 11 * @image html img/widget/clock/preview-01.png 12 * @image latex img/widget/clock/preview-01.eps 13 * 14 * @image html img/widget/clock/preview-02.png 15 * @image latex img/widget/clock/preview-02.eps 16 * 17 * Clock widget is used to display and input date & time values. 18 * This widget displays date and time as per the <b>system's locale</b> settings (Date 19 * includes Day, Month & Year along with the defined separators and 20 * Time includes Hour, Minute & AM/PM fields. Separator for AM/PM field is ignored. 21 * 22 * The corresponding Month, AM/PM strings are displayed according to the 23 * system’s language settings. 24 * 25 * Clock format is a combination of LIBC standard characters like 26 * “%%d %%b %%Y %%I : %%M %%p” which, as a whole represents both Date as well as Time 27 * format. 28 * 29 * efl_ui_clock supports only the following sub set of libc date format specifiers: 30 * 31 * @b %%Y : The year as a decimal number including the century (example: 2011). 32 * 33 * @b %%y : The year as a decimal number without a century (range 00 to 99) 34 * 35 * @b %%m : The month as a decimal number (range 01 to 12). 36 * 37 * @b %%b : The abbreviated month name according to the current locale. 38 * 39 * @b %%B : The full month name according to the current locale. 40 * 41 * @b %%h : The abbreviated month name according to the current locale(same as %%b). 42 * 43 * @b %%d : The day of the month as a decimal number (range 01 to 31). 44 * 45 * @b %%e : The day of the month as a decimal number (range 1 to 31). single 46 * digits are preceded by a blank. 47 * 48 * @b %%I : The hour as a decimal number using a 12-hour clock (range 01 to 12). 49 * 50 * @b %%H : The hour as a decimal number using a 24-hour clock (range 00 to 23). 51 * 52 * @b %%k : The hour (24-hour clock) as a decimal number (range 0 to 23). single 53 * digits are preceded by a blank. 54 * 55 * @b %%l : The hour (12-hour clock) as a decimal number (range 1 to 12); single 56 * digits are preceded by a blank. 57 * 58 * @b %%M : The minute as a decimal number (range 00 to 59). 59 * 60 * @b %%p : Either 'AM' or 'PM' according to the given time value, or the 61 * corresponding strings for the current locale. Noon is treated as 'PM' 62 * and midnight as 'AM' 63 * 64 * @b %%P : Like %p but in lower case: 'am' or 'pm' or a corresponding string for 65 * the current locale. 66 * 67 * @b %%c : The preferred date and time representation for the current locale. 68 * 69 * @b %%x : The preferred date representation for the current locale without the time. 70 * 71 * @b %%X : The preferred time representation for the current locale without the date. 72 * 73 * @b %%r : The complete calendar time using the AM/PM format of the current locale. 74 * 75 * @b %%R : The hour and minute in decimal numbers using the format %H:%M. 76 * 77 * @b %%T : The time of day in decimal numbers using the format %H:%M:%S. 78 * 79 * @b %%D : The date using the format %%m/%%d/%%y. 80 * 81 * @b %%F : The date using the format %%Y-%%m-%%d. 82 * 83 * (For more reference on the available <b>LIBC date format specifiers</b>, please 84 * visit the link: 85 * http://www.gnu.org/s/hello/manual/libc.html#Formatting-Calendar-Time ) 86 * 87 * Clock widget can provide Unicode @b separators in between its fields 88 * except for AM/PM field. 89 * A separator can be any <b>Unicode character</b> other than the LIBC standard 90 * date format specifiers.( Example: In the format %%b %%d @b , %%y %%H @b : %%M 91 * comma(,) is separator for date field %%d and colon(:) is separator for 92 * hour field %%H ). 93 * 94 * The default format is a predefined one, based on the system Locale. 95 * 96 * Hour format 12hr(1-12) or 24hr(0-23) display can be selected by setting 97 * the corresponding user format. 98 * 99 * Clock supports six fields: Year, Month, Date, Hour, Minute, AM/PM. 100 * 101 * The individual fields of Clock can be arranged in any order according to the format 102 * set by application. 103 * 104 * There is a provision to set the visibility of a particular field as TRUE/ FALSE 105 * so that <b>only time/ only date / only required fields</b> will be displayed. 106 * 107 * Each field is having a default minimum and maximum values just like the daily 108 * calendar information. These min/max values can be modified as per the application usage. 109 * 110 * User can enter the values only in between the range of maximum and minimum. 111 * Apart from these APIs, there is a provision to display only a limited set of 112 * values out of the possible values. APIs to select the individual field limits 113 * are intended for this purpose. 114 * 115 * The whole widget is left aligned and its size grows horizontally depending 116 * on the current format and each field's visible/disabled state. 117 * 118 * This widget inherits from the @ref Elm_Layout one, so that all the 119 * functions acting on it also work for Clock objects. 120 * 121 * This widget emits the following signals, besides the ones sent from 122 * @ref Elm_Layout : 123 * @li @b "changed" - whenever Clock field value is changed, this 124 * signal is sent. 125 * @li @b "language,changed" - whenever system locale changes, this 126 * signal is sent. 127 * @li @c "focused" - When the Clock has received focus. (since 1.8) 128 * @li @c "unfocused" - When the Clock has lost focus. (since 1.8) 129 * 130 * Here is an example on its usage: 131 * @li @ref clock_example 132 * 133 */ 134 135 /** 136 * @addtogroup efl_ui_clock 137 * @{ 138 */ 139 140 #include "efl_ui_clock.eo.h" 141 142 /** 143 * @} 144 */ 145