2017-10-25 00:42:39 -07:00
|
|
|
import efl_types;
|
|
|
|
|
2019-03-08 06:55:43 -08:00
|
|
|
enum @beta Efl.Ui.Calendar_Weekday
|
2017-10-25 00:42:39 -07:00
|
|
|
{
|
|
|
|
[[A weekday
|
|
|
|
|
|
|
|
See also @Efl.Ui.Calendar.first_day_of_week.set.
|
|
|
|
]]
|
|
|
|
sunday, [[Sunday weekday]]
|
|
|
|
monday, [[Monday weekday]]
|
2018-08-29 22:01:21 -07:00
|
|
|
tuesday, [[Tuesday weekday]]
|
2017-10-25 00:42:39 -07:00
|
|
|
wednesday, [[Wednesday weekday]]
|
|
|
|
thursday, [[Thursday weekday]]
|
|
|
|
friday, [[Friday weekday]]
|
|
|
|
saturday, [[Saturday weekday]]
|
|
|
|
last [[Sentinel value to indicate last enum field during iteration]]
|
|
|
|
}
|
|
|
|
|
2019-02-28 07:23:11 -08:00
|
|
|
class @beta Efl.Ui.Calendar extends Efl.Ui.Layout_Base implements Efl.Ui.Focus.Composition, Efl.Access.Widget.Action, Efl.Ui.Format
|
2017-10-25 00:42:39 -07:00
|
|
|
{
|
|
|
|
[[Calendar widget
|
|
|
|
|
|
|
|
It helps applications to flexibly display a calendar with day of the week,
|
|
|
|
date, year and month. Applications are able to set specific dates to be
|
|
|
|
reported back, when selected, in the smart callbacks of the calendar widget.
|
|
|
|
]]
|
|
|
|
methods {
|
|
|
|
@property first_day_of_week {
|
2017-11-12 22:39:53 -08:00
|
|
|
[[The first day of week to use on calendar widgets.
|
|
|
|
|
|
|
|
This is the day that will appear in the left-most column (eg. Monday
|
|
|
|
in France or Sunday in the US).
|
|
|
|
]]
|
2017-10-25 00:42:39 -07:00
|
|
|
values {
|
2018-04-06 07:33:44 -07:00
|
|
|
day: Efl.Ui.Calendar_Weekday(Efl.Ui.Calendar_Weekday.sunday);
|
2017-11-12 22:39:53 -08:00
|
|
|
[[The first day of the week.]]
|
2017-10-25 00:42:39 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
@property date_min {
|
|
|
|
[[Minimum date on calendar.]]
|
|
|
|
set {
|
|
|
|
[[Set the minimum date on calendar.
|
|
|
|
|
|
|
|
Set the minimum date, changing the displayed month or year if needed.
|
|
|
|
Displayed day also to be disabled if it is smaller than minimum date.
|
|
|
|
If the minimum date is greater than current maximum date, the minimum
|
|
|
|
date would be changed to the maximum date with returning $false.
|
|
|
|
]]
|
|
|
|
return: bool; [[$true, on success, $false otherwise]]
|
|
|
|
}
|
|
|
|
get {
|
|
|
|
[[Get the minimum date.
|
|
|
|
|
|
|
|
Default value is 1 JAN,1902.
|
|
|
|
]]
|
|
|
|
}
|
|
|
|
values {
|
2018-08-29 22:01:21 -07:00
|
|
|
min: Efl.Time; [[Time structure containing the minimum date.]]
|
2017-10-25 00:42:39 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
@property date_max {
|
|
|
|
[[Maximum date on calendar.]]
|
|
|
|
set {
|
|
|
|
[[Set the maximum date on calendar.
|
|
|
|
|
|
|
|
Set the maximum date, changing the displayed month or year if needed.
|
|
|
|
Displayed day also to be disabled if it is bigger than maximum date.
|
|
|
|
If the maximum date is less than current minimum date, the maximum date
|
|
|
|
would be changed to the minimum date with returning $false.
|
|
|
|
]]
|
|
|
|
return: bool; [[$true, on success, $false otherwise]]
|
|
|
|
}
|
|
|
|
get {
|
|
|
|
[[Get the maximum date.
|
|
|
|
|
|
|
|
Default maximum year is -1.
|
|
|
|
Default maximum day and month are 31 and DEC.
|
|
|
|
|
|
|
|
If the maximum year is a negative value, it will be limited depending
|
|
|
|
on the platform architecture (year 2037 for 32 bits);
|
|
|
|
]]
|
|
|
|
}
|
|
|
|
values {
|
|
|
|
max: Efl.Time; [[Time structure containing the maximum date.]]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@property date {
|
|
|
|
[[The selected date on calendar.]]
|
|
|
|
set {
|
|
|
|
[[Set the selected date. If the date is greater than the maximum date,
|
|
|
|
the date would be changed to the maximum date with returning $false.
|
|
|
|
In the opposite case with the minimum date,
|
2017-10-27 02:31:59 -07:00
|
|
|
this would give the same result.
|
2017-10-25 00:42:39 -07:00
|
|
|
]]
|
2017-10-27 02:31:59 -07:00
|
|
|
return: bool; [[$true, on success, $false otherwise]]
|
2017-10-25 00:42:39 -07:00
|
|
|
}
|
|
|
|
get {
|
|
|
|
}
|
|
|
|
values {
|
|
|
|
date: Efl.Time; [[Time structure containing the selected date.]]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
implements {
|
|
|
|
class.constructor;
|
|
|
|
Efl.Object.constructor;
|
|
|
|
Efl.Object.destructor;
|
|
|
|
Efl.Canvas.Group.group_calculate;
|
2018-01-07 20:55:35 -08:00
|
|
|
Efl.Ui.Widget.theme_apply;
|
|
|
|
Efl.Ui.Widget.on_access_update;
|
2018-01-19 00:25:47 -08:00
|
|
|
Efl.Ui.Focus.Object.on_focus_update;
|
2019-03-04 10:37:18 -08:00
|
|
|
Efl.Ui.Widget.widget_input_event_handler;
|
2017-11-15 18:31:26 -08:00
|
|
|
Efl.Access.Widget.Action.elm_actions { get; }
|
2017-10-27 02:31:59 -07:00
|
|
|
Efl.Ui.Format.format_cb { set; }
|
efl_ui_format: remove supporting default TM format in interface.
Summary:
efl_ui_format printed ERR log in calendar use case.
calendar only accept format as "B,b,h,m,y,Y"
But it doesn't cover that and not supporting TM type.
If there is other widget which one using format interface, It also has own accpeted format.
So i think it should impelment on widget side.
Test Plan: elementary_test -> efl_ui_calendar.
Reviewers: Hermet, singh.amitesh, Jaehyun, zmike, segfaultxavi
Reviewed By: segfaultxavi
Subscribers: segfaultxavi, cedric, #reviewers, #committers, zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6871
2018-11-20 00:59:18 -08:00
|
|
|
Efl.Ui.Format.format_string { set; get;}
|
2017-10-25 00:42:39 -07:00
|
|
|
}
|
|
|
|
events {
|
efl: Add missing event types
Summary:
All events must have a type now, otherwise bindings don't know how to handle
the event_info field.
Most of the missing event types were actually "void" (no event_info present).
Some struct definitions had to be moved to eo instead of h files, so they
are available to bindings. Some have not, and are marked with FIXME.
Some namespaces have been fixed (like Efl_Event_Cb -> Efl.Event_Cb).
In general, there are hundreds of changed files, but mostly to add a type which
was not present before, so there's no harm done.
Also, A lot of FIXMEs have been added which should be, like, fixed.
For example, some events can send different types of event_info, which is
very inconvenient (and error prone).
Test Plan: make with c# bindings works, make check and make examples work too.
Reviewers: cedric, q66, lauromoura
Subscribers: zmike
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6169
2018-05-11 08:20:40 -07:00
|
|
|
changed: void; [[Emitted when the selected date in the calendar is changed]]
|
2017-10-25 00:42:39 -07:00
|
|
|
}
|
|
|
|
}
|