diff options
author | Jaeun Choi <jaeun12.choi@samsung.com> | 2017-06-09 14:45:14 +0900 |
---|---|---|
committer | Jaeun Choi <jaeun12.choi@samsung.com> | 2017-06-09 16:58:04 +0900 |
commit | 5a959bdffa583bf79c926b9deb625e03a465faad (patch) | |
tree | 57fcadf074ced980494fe0e5f425833cdb7eee3c | |
parent | 3449e8c9d151010c4782de0bd1bd9074c658cacd (diff) | |
download | efl-5a959bdffa583bf79c926b9deb625e03a465faad.tar.gz |
add scrollbar_mode property to efl.ui.scrollable interface
-rw-r--r-- | src/lib/elementary/efl_ui_scroll_manager.c | 9 | ||||
-rw-r--r-- | src/lib/elementary/efl_ui_scroll_manager.eo | 11 | ||||
-rw-r--r-- | src/lib/elementary/efl_ui_scroller.c | 9 | ||||
-rw-r--r-- | src/lib/elementary/efl_ui_scroller.eo | 1 | ||||
-rw-r--r-- | src/lib/evas/canvas/efl_ui_scrollable.eo | 21 |
5 files changed, 51 insertions, 0 deletions
diff --git a/src/lib/elementary/efl_ui_scroll_manager.c b/src/lib/elementary/efl_ui_scroll_manager.c index b39f438745..c237ef6f8b 100644 --- a/src/lib/elementary/efl_ui_scroll_manager.c +++ b/src/lib/elementary/efl_ui_scroll_manager.c @@ -10,6 +10,15 @@ #define MY_CLASS_NAME "Efl_Ui_Scroll_Manager" +EOLIAN static void +_efl_ui_scroll_manager_scrollbar_mode_set(Eo *obj, + Efl_Ui_Scroll_Manager_Data *sd, + Efl_Ui_Scrollbar_Mode hmode, + Efl_Ui_Scrollbar_Mode vmode) +{ + elm_interface_scrollable_policy_set(obj, hmode, vmode); +} + EOLIAN static Efl_Ui_Focus_Manager* _efl_ui_scroll_manager_efl_ui_focus_user_manager_get(Eo *obj EINA_UNUSED, Efl_Ui_Scroll_Manager_Data *sd) diff --git a/src/lib/elementary/efl_ui_scroll_manager.eo b/src/lib/elementary/efl_ui_scroll_manager.eo index 999d49a372..760663549f 100644 --- a/src/lib/elementary/efl_ui_scroll_manager.eo +++ b/src/lib/elementary/efl_ui_scroll_manager.eo @@ -14,6 +14,17 @@ class Efl.Ui.Scroll.Manager (Efl.Canvas.Group, content: Efl.Gfx @nullable; [[content object]] } } + @property scrollbar_mode { + [[Scrollbar visibility policy]] + set { + } + //get { + //} + values { + hbar: Efl.Ui.Scrollbar.Mode; [[Horizontal scrollbar]] + vbar: Efl.Ui.Scrollbar.Mode; [[Vertical scrollbar]] + } + } } implements { Efl.Object.constructor; diff --git a/src/lib/elementary/efl_ui_scroller.c b/src/lib/elementary/efl_ui_scroller.c index b3767fdaba..cfe550605a 100644 --- a/src/lib/elementary/efl_ui_scroller.c +++ b/src/lib/elementary/efl_ui_scroller.c @@ -15,6 +15,15 @@ EOLIAN static void +_efl_ui_scroller_efl_ui_scrollable_scrollbar_mode_set(Eo *obj, + Efl_Ui_Scroller_Data *sd, + Efl_Ui_Scrollbar_Mode hmode, + Efl_Ui_Scrollbar_Mode vmode) +{ + efl_ui_scroll_manager_scrollbar_mode_set(sd->smanager, hmode, vmode); +} + +EOLIAN static void _efl_ui_scroller_efl_gfx_size_set(Eo *obj, Efl_Ui_Scroller_Data *sd, Evas_Coord w, diff --git a/src/lib/elementary/efl_ui_scroller.eo b/src/lib/elementary/efl_ui_scroller.eo index 89a29604a8..11410819ca 100644 --- a/src/lib/elementary/efl_ui_scroller.eo +++ b/src/lib/elementary/efl_ui_scroller.eo @@ -9,5 +9,6 @@ class Efl.Ui.Scroller (Elm.Layout, Efl.Ui.Scrollable) Efl.Gfx.size { set; } Efl.Gfx.position { set; } Efl.Container.content { set; } + Efl.Ui.Scrollable.scrollbar_mode { set; } } } diff --git a/src/lib/evas/canvas/efl_ui_scrollable.eo b/src/lib/evas/canvas/efl_ui_scrollable.eo index 366e2c02f9..0013fe99bb 100644 --- a/src/lib/evas/canvas/efl_ui_scrollable.eo +++ b/src/lib/evas/canvas/efl_ui_scrollable.eo @@ -1,7 +1,28 @@ +enum Efl.Ui.Scrollbar.Mode +{ + auto = 0, [[Visible if necessary]] + on, [[Always visible]] + off, [[Always invisible]] + last [[]] +} + interface Efl.Ui.Scrollable () { [[Efl UI scrollable interface]] event_prefix: efl_ui; + methods { + @property scrollbar_mode { + [[Scrollbar visibility policy]] + set { + } + get { + } + values { + hbar: Efl.Ui.Scrollbar.Mode; [[Horizontal scrollbar]] + vbar: Efl.Ui.Scrollbar.Mode; [[Vertical scrollbar]] + } + } + } events { scroll; [[Called when scroll operation started]] scroll,anim,start; [[Called when scroll animation started]] |