diff options
Diffstat (limited to 'src/lib/efl/interfaces/efl_ui_scrollable.eo')
-rw-r--r-- | src/lib/efl/interfaces/efl_ui_scrollable.eo | 104 |
1 files changed, 53 insertions, 51 deletions
diff --git a/src/lib/efl/interfaces/efl_ui_scrollable.eo b/src/lib/efl/interfaces/efl_ui_scrollable.eo index 1c9c3f5..872f883 100644 --- a/src/lib/efl/interfaces/efl_ui_scrollable.eo +++ b/src/lib/efl/interfaces/efl_ui_scrollable.eo | |||
@@ -3,24 +3,29 @@ import efl_ui_layout_orientable; | |||
3 | 3 | ||
4 | interface Efl.Ui.Scrollable | 4 | interface Efl.Ui.Scrollable |
5 | { | 5 | { |
6 | [[Efl UI scrollable interface | 6 | [[Interface for widgets capable of displaying content through a viewport, which might be smaller |
7 | than the actual content. | ||
8 | This interface does not control how the content is added. This is typically done through @Efl.Content. | ||
9 | |||
10 | When the content does not fit inside the viewport, typically @Efl.Ui.Scrollbar widgets will be used, | ||
11 | but this is beyond the scope of this interface. | ||
7 | 12 | ||
8 | @since 1.23 | 13 | @since 1.23 |
9 | ]] | 14 | ]] |
10 | event_c_prefix: efl_ui; | 15 | event_c_prefix: efl_ui; |
11 | methods { | 16 | methods { |
12 | @property content_pos { | 17 | @property content_pos { |
13 | [[The content position]] | 18 | [[Position of the content inside the scroller.]] |
14 | set { | 19 | set { |
15 | } | 20 | } |
16 | get { | 21 | get { |
17 | } | 22 | } |
18 | values { | 23 | values { |
19 | pos: Eina.Position2D; [[The position is virtual value, (0, 0) starting at the top-left.]] | 24 | pos: Eina.Position2D; [[The position is a virtual value, where $[0,0] means the top-left corner.]] |
20 | } | 25 | } |
21 | } | 26 | } |
22 | @property content_size { | 27 | @property content_size { |
23 | [[The content size]] | 28 | [[Current size of the content, for convenience.]] |
24 | get { | 29 | get { |
25 | } | 30 | } |
26 | values { | 31 | values { |
@@ -28,7 +33,10 @@ interface Efl.Ui.Scrollable | |||
28 | } | 33 | } |
29 | } | 34 | } |
30 | @property viewport_geometry { | 35 | @property viewport_geometry { |
31 | [[The viewport geometry]] | 36 | [[Current position and size of the viewport (or scroller window), for convenience. |
37 | |||
38 | This is the viewport through which the content is displayed. | ||
39 | ]] | ||
32 | get { | 40 | get { |
33 | } | 41 | } |
34 | values { | 42 | values { |
@@ -36,57 +44,54 @@ interface Efl.Ui.Scrollable | |||
36 | } | 44 | } |
37 | } | 45 | } |
38 | @property bounce_enabled { | 46 | @property bounce_enabled { |
39 | [[Bouncing behavior | 47 | [[When scrolling, the scroller may "bounce" when reaching the edge of the |
40 | |||
41 | When scrolling, the scroller may "bounce" when reaching the edge of the | ||
42 | content object. This is a visual way to indicate the end has been reached. | 48 | content object. This is a visual way to indicate the end has been reached. |
43 | This is enabled by default for both axes. This API will determine if it's enabled | 49 | This is enabled by default for both axes. This property determines if bouncing is enabled |
44 | for the given axis with the boolean parameters for each one.]] | 50 | in each axis. |
51 | When bouncing is disabled, scrolling just stops upon reaching the end of the content. | ||
52 | ]] | ||
45 | set { | 53 | set { |
46 | } | 54 | } |
47 | get { | 55 | get { |
48 | } | 56 | } |
49 | values { | 57 | values { |
50 | horiz: bool; [[Horizontal bounce policy.]] | 58 | horiz: bool; [[Horizontal bouncing is enabled.]] |
51 | vert: bool; [[Vertical bounce policy.]] | 59 | vert: bool; [[Vertical bouncing is enabled.]] |
52 | } | 60 | } |
53 | } | 61 | } |
54 | @property scroll_freeze { | 62 | @property scroll_freeze { |
55 | [[Freeze property | 63 | [[Freezes scrolling movement (by input of a user). |
56 | This function will freeze scrolling movement (by input of a user). | 64 | Unlike @.movement_block, this property freezes bidirectionally. |
57 | Unlike @.movement_block, this function freezes bidirectionally. | ||
58 | If you want to freeze in only one direction, | 65 | If you want to freeze in only one direction, |
59 | see @.movement_block.set. | 66 | see @.movement_block. |
60 | ]] | 67 | ]] |
61 | get { | 68 | get { |
62 | } | 69 | } |
63 | set { | 70 | set { |
64 | } | 71 | } |
65 | values { | 72 | values { |
66 | freeze: bool; [[$true if freeze, $false otherwise]] | 73 | freeze: bool; [[$true if freeze.]] |
67 | } | 74 | } |
68 | } | 75 | } |
69 | @property scroll_hold { | 76 | @property scroll_hold { |
70 | [[Hold property | 77 | [[When hold turns on, it only scrolls by holding action.]] |
71 | When hold turns on, it only scrolls by holding action. | ||
72 | ]] | ||
73 | get { | 78 | get { |
74 | } | 79 | } |
75 | set { | 80 | set { |
76 | } | 81 | } |
77 | values { | 82 | values { |
78 | hold: bool; [[$true if hold, $false otherwise]] | 83 | hold: bool; [[$true if hold.]] |
79 | } | 84 | } |
80 | } | 85 | } |
81 | @property looping { | 86 | @property looping { |
82 | [[Controls an infinite loop for a scroller.]] | 87 | [[Controls infinite looping for a scroller.]] |
83 | set { | 88 | set { |
84 | } | 89 | } |
85 | get { | 90 | get { |
86 | } | 91 | } |
87 | values { | 92 | values { |
88 | loop_h: bool; [[The scrolling horizontal loop]] | 93 | loop_h: bool; [[Scroll horizontal looping is enabled.]] |
89 | loop_v: bool; [[The Scrolling vertical loop]] | 94 | loop_v: bool; [[Scroll vertical looping is enabled.]] |
90 | } | 95 | } |
91 | } | 96 | } |
92 | @property movement_block { | 97 | @property movement_block { |
@@ -103,11 +108,11 @@ interface Efl.Ui.Scrollable | |||
103 | get { | 108 | get { |
104 | } | 109 | } |
105 | values { | 110 | values { |
106 | block: Efl.Ui.Layout_Orientation(Efl.Ui.Layout_Orientation.default); [[Which axis (or axes) to block]] | 111 | block: Efl.Ui.Layout_Orientation(Efl.Ui.Layout_Orientation.default); [[Which axis (or axes) to block.]] |
107 | } | 112 | } |
108 | } | 113 | } |
109 | @property gravity { | 114 | @property gravity { |
110 | [[Control scrolling gravity on the scrollable | 115 | [[Control scrolling gravity on the scrollable. |
111 | 116 | ||
112 | The gravity defines how the scroller will adjust its view | 117 | The gravity defines how the scroller will adjust its view |
113 | when the size of the scroller contents increases. | 118 | when the size of the scroller contents increases. |
@@ -137,54 +142,51 @@ interface Efl.Ui.Scrollable | |||
137 | set { | 142 | set { |
138 | } | 143 | } |
139 | values { | 144 | values { |
140 | w: bool; [[Whether to limit the minimum horizontal size]] | 145 | w: bool; [[Whether to limit the minimum horizontal size.]] |
141 | h: bool; [[Whether to limit the minimum vertical size]] | 146 | h: bool; [[Whether to limit the minimum vertical size.]] |
142 | } | 147 | } |
143 | } | 148 | } |
144 | @property step_size { | 149 | @property step_size { |
145 | [[Control the step size | 150 | [[Amount to scroll in response to cursor key presses.]] |
146 | |||
147 | Use this call to set step size. | ||
148 | This value is used when scroller scroll by arrow key event.]] | ||
149 | set { | 151 | set { |
150 | } | 152 | } |
151 | get { | 153 | get { |
152 | } | 154 | } |
153 | values { | 155 | values { |
154 | step: Eina.Position2D; [[The step size in pixels]] | 156 | step: Eina.Position2D; [[The step size in pixels.]] |
155 | } | 157 | } |
156 | } | 158 | } |
157 | scroll { | 159 | scroll { |
158 | [[Show a specific virtual region within the scroller content object. | 160 | [[Show a specific virtual region within the scroller content object. |
159 | 161 | ||
160 | This will ensure all (or part if it does not fit) of the designated | 162 | This will ensure all (or part if it does not fit) of the designated |
161 | region in the virtual content object (0, 0 starting at the top-left of the | 163 | region in the virtual content object ($[0,0] starting at the top-left of the |
162 | virtual content object) is shown within the scroller. This allows the scroller to "smoothly slide" | 164 | virtual content object) is shown within the scroller. This allows the scroller to "smoothly slide" |
163 | to this location (if configuration in general calls for transitions). It | 165 | to this location (if configuration in general calls for transitions). It |
164 | may not jump immediately to the new location and make take a while and | 166 | may not jump immediately to the new location and make take a while and |
165 | show other content along the way. | 167 | show other content along the way. |
166 | ]] | 168 | ]] |
167 | params { | 169 | params { |
168 | @in rect: Eina.Rect; [[The position where to scroll. and The size user want to see]] | 170 | @in rect: Eina.Rect; [[The position where to scroll and the size user want to see.]] |
169 | @in animation: bool; [[Whether to scroll with animation or not]] | 171 | @in animation: bool; [[Whether to scroll with animation or not.]] |
170 | } | 172 | } |
171 | } | 173 | } |
172 | } | 174 | } |
173 | events { | 175 | events { |
174 | scroll,started: void; [[Called when scroll operation starts]] | 176 | scroll,started: void; [[Called when scroll operation starts.]] |
175 | scroll,changed: void; [[Called when scrolling]] | 177 | scroll,changed: void; [[Called when scrolling.]] |
176 | scroll,finished: void; [[Called when scroll operation finishes]] | 178 | scroll,finished: void; [[Called when scroll operation finishes.]] |
177 | scroll,up: void; [[Called when scrolling upwards]] | 179 | scroll,up: void; [[Called when scrolling upwards.]] |
178 | scroll,down: void; [[Called when scrolling downwards]] | 180 | scroll,down: void; [[Called when scrolling downwards.]] |
179 | scroll,left: void; [[Called when scrolling left]] | 181 | scroll,left: void; [[Called when scrolling left.]] |
180 | scroll,right: void; [[Called when scrolling right]] | 182 | scroll,right: void; [[Called when scrolling right.]] |
181 | edge,up: void; [[Called when hitting the top edge]] | 183 | edge,up: void; [[Called when hitting the top edge.]] |
182 | edge,down: void; [[Called when hitting the bottom edge]] | 184 | edge,down: void; [[Called when hitting the bottom edge.]] |
183 | edge,left: void; [[Called when hitting the left edge]] | 185 | edge,left: void; [[Called when hitting the left edge.]] |
184 | edge,right: void; [[Called when hitting the right edge]] | 186 | edge,right: void; [[Called when hitting the right edge.]] |
185 | scroll,anim,started: void; [[Called when scroll animation starts]] | 187 | scroll,anim,started: void; [[Called when scroll animation starts.]] |
186 | scroll,anim,finished: void; [[Called when scroll animation finishes]] | 188 | scroll,anim,finished: void; [[Called when scroll animation finishes.]] |
187 | scroll,drag,started: void; [[Called when scroll drag starts]] | 189 | scroll,drag,started: void; [[Called when scroll drag starts.]] |
188 | scroll,drag,finished: void; [[Called when scroll drag finishes]] | 190 | scroll,drag,finished: void; [[Called when scroll drag finishes.]] |
189 | } | 191 | } |
190 | } | 192 | } |