2019-02-28 07:23:11 -08:00
|
|
|
class @beta Efl.Ui.Panes extends Efl.Ui.Layout_Base implements Efl.Ui.Direction,
|
2019-01-18 05:22:23 -08:00
|
|
|
Efl.Ui.Clickable
|
2014-03-24 23:37:43 -07:00
|
|
|
{
|
2016-11-24 02:46:51 -08:00
|
|
|
[[Elementary panes class]]
|
2016-05-17 09:14:47 -07:00
|
|
|
event_prefix: elm_panes;
|
2015-05-07 09:32:53 -07:00
|
|
|
methods {
|
2017-08-09 04:45:02 -07:00
|
|
|
@property split_ratio {
|
|
|
|
[[Set the split ratio between panes widget first and second parts.
|
2014-03-24 23:37:43 -07:00
|
|
|
|
2015-07-31 08:16:13 -07:00
|
|
|
By default it's homogeneous, i.e., both sides have the same size.
|
2014-03-24 23:37:43 -07:00
|
|
|
|
2015-07-31 08:16:13 -07:00
|
|
|
If something different is required, it can be set with this function.
|
2017-08-09 04:45:02 -07:00
|
|
|
For example, if the first content should be displayed over
|
|
|
|
75% of the panes size, $ratio should be passed as 0.75.
|
|
|
|
This way, second content will be resized to 25% of panes size.
|
|
|
|
|
|
|
|
If displayed vertically, first content is displayed at top, and
|
|
|
|
second content at bottom.
|
|
|
|
|
|
|
|
Note: This ratio will change when user drags the panes bar.]]
|
|
|
|
set {
|
|
|
|
}
|
|
|
|
get {
|
|
|
|
}
|
2014-03-24 23:37:43 -07:00
|
|
|
values {
|
2017-08-09 04:45:02 -07:00
|
|
|
ratio: double; [[Value between 0.0 and 1.0 representing split ratio between panes first and second parts.]]
|
2014-03-24 23:37:43 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property fixed {
|
2015-07-31 08:16:13 -07:00
|
|
|
[[Set whether the left and right panes can be resized by user interaction.
|
2014-03-24 23:37:43 -07:00
|
|
|
|
2015-07-31 08:16:13 -07:00
|
|
|
By default panes' contents are resizable by user interaction.]]
|
|
|
|
set {
|
2014-03-24 23:37:43 -07:00
|
|
|
}
|
|
|
|
get {
|
|
|
|
}
|
|
|
|
values {
|
2015-07-31 08:16:13 -07:00
|
|
|
fixed: bool; [[Use $true to fix the left and right panes sizes and make
|
|
|
|
them not to be resized by user interaction. Use $false to make them
|
|
|
|
resizable.]]
|
2014-03-24 23:37:43 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2018-01-16 05:36:04 -08:00
|
|
|
parts {
|
2018-04-09 04:50:52 -07:00
|
|
|
first: Efl.Ui.Panes_Part; [[The first half of the panes widget (left or top)]]
|
|
|
|
second: Efl.Ui.Panes_Part; [[The second half of the panes widget (right or bottom)]]
|
2018-01-16 05:36:04 -08:00
|
|
|
}
|
2014-03-24 23:37:43 -07:00
|
|
|
implements {
|
2016-08-10 07:23:04 -07:00
|
|
|
Efl.Object.constructor;
|
2018-01-07 20:55:35 -08:00
|
|
|
Efl.Ui.Widget.theme_apply;
|
2017-08-09 23:58:34 -07:00
|
|
|
Efl.Ui.Direction.direction { get; set; [[Only supports $vertical and $horizontal. Default is $vertical.]] }
|
2018-05-03 16:34:17 -07:00
|
|
|
Efl.Part.part_get;
|
2014-03-24 23:37:43 -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
|
|
|
press: void; [[Called when panes got pressed]]
|
|
|
|
unpress: void; [[Called when panes are no longer pressed]]
|
2014-03-24 23:37:43 -07:00
|
|
|
}
|
|
|
|
}
|