2 using System.Collections.Generic;
12 /// CircleScrollerVerticalBar is a part used to set the color of the vertical bar.
14 /// <since_tizen> 6 </since_tizen>
15 public class CircleScrollerVerticalBar : ICircleColor
18 public CircleScrollerVerticalBar(IntPtr CircleHandle) { _handle = CircleHandle; }
21 /// Sets the color of the vertical bar on the circle scroller.
23 /// <since_tizen> 6 </since_tizen>
24 public void SetColor(int r, int g, int b, int a)
27 Interop.Eext.eext_circle_object_color_set(_handle, r, g, b, a);
31 /// Gets the color of the vertical bar on the circle scroller.
33 /// <since_tizen> 6 </since_tizen>
34 public void GetColor(out int r, out int g, out int b, out int a)
38 Interop.Eext.eext_circle_object_color_get(_handle, out r, out g, out b, out a);
43 /// CircleScrollerVerticalBarBackground is a part used to set the background color of the vertical bar.
45 /// <since_tizen> 6 </since_tizen>
46 public class CircleScrollerVerticalBarBackground : ICircleColor
49 public CircleScrollerVerticalBarBackground(IntPtr CircleHandle) { _handle = CircleHandle; }
52 /// Sets the background color of the vertical bar on the circle scroller.
54 /// <since_tizen> 6 </since_tizen>
55 public void SetColor(int r, int g, int b, int a)
58 Interop.Eext.eext_circle_object_item_color_set(_handle, "vertical,scroll,bg", r, g, b, a);
62 /// Gets the background color of the vertical bar on the circle scroller.
64 /// <since_tizen> 6 </since_tizen>
65 public void GetColor(out int r, out int g, out int b, out int a)
69 Interop.Eext.eext_circle_object_item_color_get(_handle, "vertical,scroll,bg", out r, out g, out b, out a);
74 /// CircleScrollerHorizontalBar is a part used to set the color of the horizontal bar.
76 /// <since_tizen> 6 </since_tizen>
77 public class CircleScrollerHorizontalBar : ICircleColor
80 public CircleScrollerHorizontalBar(IntPtr CircleHandle) { _handle = CircleHandle; }
83 /// Sets the color of the horizontal bar on the circle scroller.
85 /// <since_tizen> 6 </since_tizen>
86 public void SetColor(int r, int g, int b, int a)
89 Interop.Eext.eext_circle_object_item_color_set(_handle, "horizontal,scroll,bar", r, g, b, a);
93 /// Gets the color of the horizontal bar on the circle scroller.
95 /// <since_tizen> 6 </since_tizen>
96 public void GetColor(out int r, out int g, out int b, out int a)
100 Interop.Eext.eext_circle_object_item_color_get(_handle, "horizontal,scroll,bar", out r, out g, out b, out a);
105 /// CircleScrollerHorizontalBarBackground is a part used to set the background color of the horizontal bar.
107 /// <since_tizen> 6 </since_tizen>
108 public class CircleScrollerHorizontalBarBackground : ICircleColor
111 public CircleScrollerHorizontalBarBackground(IntPtr CircleHandle) { _handle = CircleHandle; }
114 /// Sets the background color of the horizontal bar on the circle scroller.
116 /// <since_tizen> 6 </since_tizen>
117 public void SetColor(int r, int g, int b, int a)
120 Interop.Eext.eext_circle_object_item_color_set(_handle, "horizontal,scroll,bg", r, g, b, a);
124 /// Gets the background color of the horizontal bar on the circle scroller.
126 /// <since_tizen> 6 </since_tizen>
127 public void GetColor(out int r, out int g, out int b, out int a)
131 Interop.Eext.eext_circle_object_item_color_get(_handle, "horizontal,scroll,bg", out r, out g, out b, out a);
135 public class CircleScroller : Efl.Ui.Scroller, ICircleWidget
140 /// Get the handle for the circle widget.
142 /// <since_tizen> 6 </since_tizen>
143 public virtual IntPtr CircleHandle => _handle;
146 /// Sets or gets the color of the vertical bar.
148 /// <since_tizen> 6 </since_tizen>
149 public CircleScrollerVerticalBar VerticalBar;
152 /// Sets or gets the background color of the vertical bar.
154 /// <since_tizen> 6 </since_tizen>
155 public CircleScrollerVerticalBarBackground VerticalBarBackground;
158 /// Sets or gets the color of the horizontal bar.
160 /// <since_tizen> 6 </since_tizen>
161 public CircleScrollerHorizontalBar HorizontalBar;
164 /// Sets or gets the background color of the horizontal bar.
166 /// <since_tizen> 6 </since_tizen>
167 public CircleScrollerHorizontalBarBackground HorizontalBarBackground;
170 /// Creates and initializes a new instance of the CircleScroller class.
172 /// <param name="parent">The Efl.Ui.Widget to which the new CircleScroller will be attached as a child.</par
173 /// <since_tizen> 6 </since_tizen>
174 public CircleScroller(Efl.Ui.Widget parent) : base(parent)
176 _handle = Interop.Eext.eext_circle_object_scroller_add(this.NativeHandle, IntPtr.Zero);
178 VerticalBar = new CircleScrollerVerticalBar(_handle);
179 VerticalBarBackground = new CircleScrollerVerticalBarBackground(_handle);
180 HorizontalBar = new CircleScrollerHorizontalBar(_handle);
181 HorizontalBarBackground = new CircleScrollerHorizontalBarBackground(_handle);
183 elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
186 [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
187 internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
190 /// Sets or gets the disabled state of the circle scroller.
192 /// <since_tizen> 6 </since_tizen>
196 set => Enable = !value;
200 /// Sets or gets the enabled state of the circle scroller.
202 /// <since_tizen> 6 </since_tizen>
207 return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
211 Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
216 /// Sets or gets the value of HorizontalScrollBarVisiblePolicy.
218 /// <since_tizen> 6 </since_tizen>
219 public ScrollbarMode HorizontalScrollBarVisiblePolicy
224 Interop.Eext.eext_circle_object_scroller_policy_get(CircleHandle, out policy, IntPtr.Zero);
225 return (ScrollbarMode)policy;
229 ScrollbarMode v = VerticalScrollBarVisiblePolicy;
230 Interop.Eext.eext_circle_object_scroller_policy_set(CircleHandle, (int)value, (int)v);
235 /// Sets or gets the value of VerticalScrollBarVisiblePolicy.
237 /// <since_tizen> 6 </since_tizen>
238 public ScrollbarMode VerticalScrollBarVisiblePolicy
243 Interop.Eext.eext_circle_object_scroller_policy_get(CircleHandle, IntPtr.Zero, out policy);
244 return (ScrollbarMode)policy;
248 ScrollbarMode h = HorizontalScrollBarVisiblePolicy;
249 Interop.Eext.eext_circle_object_scroller_policy_set(CircleHandle, (int)h, (int)value);
254 /// Sets or gets the line width of the vertical scroll bar.
256 /// <since_tizen> 6 </since_tizen>
257 public int VerticalScrollBarLineWidth
261 return Interop.Eext.eext_circle_object_line_width_get(CircleHandle);
265 Interop.Eext.eext_circle_object_line_width_set(CircleHandle, value);
270 /// Sets or gets the line width of the horizontal scroll bar.
272 /// <since_tizen> 6 </since_tizen>
273 public int HorizontalScrollBarLineWidth
277 return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "horizontal,scroll,bar");
281 Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "horizontal,scroll,bar", value);
286 /// Sets or gets the line width of the vertical scroll background.
288 /// <since_tizen> 6 </since_tizen>
289 public int VerticalScrollBackgroundLineWidth
293 return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "vertical,scroll,bg");
297 Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "vertical,scroll,bg", value);
302 /// Sets or gets the line width of the horizontal scroll background.
304 /// <since_tizen> 6 </since_tizen>
305 public int HorizontalScrollBackgroundLineWidth
309 return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "horizontal,scroll,bg");
313 Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "horizontal,scroll,bg", value);
318 /// Sets or gets the radius of the vertical scroll bar.
320 /// <since_tizen> 6 </since_tizen>
321 public double VerticalScrollBarRadius
325 return Interop.Eext.eext_circle_object_radius_get(CircleHandle);
329 Interop.Eext.eext_circle_object_radius_set(CircleHandle, value);
334 /// Sets or gets the radius of the horizontal scroll bar.
336 /// <since_tizen> 6 </since_tizen>
337 public double HorizontalScrollBarRadius
341 return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "horizontal,scroll,bar");
345 Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "horizontal,scroll,bar", value);
350 /// Sets or gets the radius of the vertical scroll background.
352 /// <since_tizen> 6 </since_tizen>
353 public double VerticalScrollBackgroundRadius
357 return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "vertical,scroll,bg");
361 Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "vertical,scroll,bg", value);
366 /// Sets or gets the radius of the horizontal scroll background.
368 /// <since_tizen> 6 </since_tizen>
369 public double HorizontalScrollBackgroundRadius
373 return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "horizontal,scroll,bg");
377 Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "horizontal,scroll,bg", value);