2 * Copyright(c) 2017 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 using System.ComponentModel;
19 using System.Runtime.InteropServices;
20 using Tizen.NUI.BaseComponents;
21 using Tizen.NUI.Binding;
26 /// ScrollView contains views that can be scrolled manually (via touch).
28 /// <since_tizen> 3 </since_tizen>
29 public class ScrollView : Scrollable
31 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
32 [EditorBrowsable(EditorBrowsableState.Never)]
33 public static readonly BindableProperty WrapEnabledProperty = BindableProperty.Create("WrapEnabled", typeof(bool), typeof(ScrollView), false, propertyChanged: (bindable, oldValue, newValue) =>
35 var scrollView = (ScrollView)bindable;
38 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.WRAP_ENABLED, new Tizen.NUI.PropertyValue((bool)newValue));
41 defaultValueCreator:(bindable) =>
43 var scrollView = (ScrollView)bindable;
45 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.WRAP_ENABLED).Get(out temp);
48 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
49 [EditorBrowsable(EditorBrowsableState.Never)]
50 public static readonly BindableProperty PanningEnabledProperty = BindableProperty.Create("PanningEnabled", typeof(bool), typeof(ScrollView), false, propertyChanged: (bindable, oldValue, newValue) =>
52 var scrollView = (ScrollView)bindable;
55 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.PANNING_ENABLED, new Tizen.NUI.PropertyValue((bool)newValue));
58 defaultValueCreator:(bindable) =>
60 var scrollView = (ScrollView)bindable;
62 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.PANNING_ENABLED).Get(out temp);
65 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
66 [EditorBrowsable(EditorBrowsableState.Never)]
67 public static readonly BindableProperty AxisAutoLockEnabledProperty = BindableProperty.Create("AxisAutoLockEnabled", typeof(bool), typeof(ScrollView), false, propertyChanged: (bindable, oldValue, newValue) =>
69 var scrollView = (ScrollView)bindable;
72 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.AXIS_AUTO_LOCK_ENABLED, new Tizen.NUI.PropertyValue((bool)newValue));
75 defaultValueCreator:(bindable) =>
77 var scrollView = (ScrollView)bindable;
79 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.AXIS_AUTO_LOCK_ENABLED).Get(out temp);
82 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
83 [EditorBrowsable(EditorBrowsableState.Never)]
84 public static readonly BindableProperty WheelScrollDistanceStepProperty = BindableProperty.Create("WheelScrollDistanceStep", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
86 var scrollView = (ScrollView)bindable;
89 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.WHEEL_SCROLL_DISTANCE_STEP, new Tizen.NUI.PropertyValue((Vector2)newValue));
92 defaultValueCreator:(bindable) =>
94 var scrollView = (ScrollView)bindable;
95 Vector2 temp = new Vector2(0.0f, 0.0f);
96 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.WHEEL_SCROLL_DISTANCE_STEP).Get(temp);
99 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
100 [EditorBrowsable(EditorBrowsableState.Never)]
101 public static readonly BindableProperty ScrollPositionProperty = BindableProperty.Create("ScrollPosition", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
103 var scrollView = (ScrollView)bindable;
104 if (newValue != null)
106 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_POSITION, new Tizen.NUI.PropertyValue((Vector2)newValue));
109 defaultValueCreator:(bindable) =>
111 var scrollView = (ScrollView)bindable;
112 Vector2 temp = new Vector2(0.0f, 0.0f);
113 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_POSITION).Get(temp);
116 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
117 [EditorBrowsable(EditorBrowsableState.Never)]
118 public static readonly BindableProperty ScrollPrePositionProperty = BindableProperty.Create("ScrollPrePosition", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
120 var scrollView = (ScrollView)bindable;
121 if (newValue != null)
123 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_PRE_POSITION, new Tizen.NUI.PropertyValue((Vector2)newValue));
126 defaultValueCreator:(bindable) =>
128 var scrollView = (ScrollView)bindable;
129 Vector2 temp = new Vector2(0.0f, 0.0f);
130 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_PRE_POSITION).Get(temp);
133 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
134 [EditorBrowsable(EditorBrowsableState.Never)]
135 public static readonly BindableProperty ScrollPrePositionMaxProperty = BindableProperty.Create("ScrollPrePositionMax", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
137 var scrollView = (ScrollView)bindable;
138 if (newValue != null)
140 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_PRE_POSITION_MAX, new Tizen.NUI.PropertyValue((Vector2)newValue));
143 defaultValueCreator:(bindable) =>
145 var scrollView = (ScrollView)bindable;
146 Vector2 temp = new Vector2(0.0f, 0.0f);
147 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_PRE_POSITION_MAX).Get(temp);
150 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
151 [EditorBrowsable(EditorBrowsableState.Never)]
152 public static readonly BindableProperty OvershootXProperty = BindableProperty.Create("OvershootX", typeof(float), typeof(ScrollView), default(float), propertyChanged: (bindable, oldValue, newValue) =>
154 var scrollView = (ScrollView)bindable;
155 if (newValue != null)
157 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.OVERSHOOT_X, new Tizen.NUI.PropertyValue((float)newValue));
160 defaultValueCreator:(bindable) =>
162 var scrollView = (ScrollView)bindable;
164 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.OVERSHOOT_X).Get(out temp);
167 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
168 [EditorBrowsable(EditorBrowsableState.Never)]
169 public static readonly BindableProperty OvershootYProperty = BindableProperty.Create("OvershootY", typeof(float), typeof(ScrollView), default(float), propertyChanged: (bindable, oldValue, newValue) =>
171 var scrollView = (ScrollView)bindable;
172 if (newValue != null)
174 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.OVERSHOOT_Y, new Tizen.NUI.PropertyValue((float)newValue));
177 defaultValueCreator:(bindable) =>
179 var scrollView = (ScrollView)bindable;
181 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.OVERSHOOT_Y).Get(out temp);
184 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
185 [EditorBrowsable(EditorBrowsableState.Never)]
186 public static readonly BindableProperty ScrollFinalProperty = BindableProperty.Create("ScrollFinal", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
188 var scrollView = (ScrollView)bindable;
189 if (newValue != null)
191 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_FINAL, new Tizen.NUI.PropertyValue((Vector2)newValue));
194 defaultValueCreator:(bindable) =>
196 var scrollView = (ScrollView)bindable;
197 Vector2 temp = new Vector2(0.0f, 0.0f);
198 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_FINAL).Get(temp);
201 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
202 [EditorBrowsable(EditorBrowsableState.Never)]
203 public static readonly BindableProperty WrapProperty = BindableProperty.Create("Wrap", typeof(bool), typeof(ScrollView), false, propertyChanged: (bindable, oldValue, newValue) =>
205 var scrollView = (ScrollView)bindable;
206 if (newValue != null)
208 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.WRAP, new Tizen.NUI.PropertyValue((bool)newValue));
211 defaultValueCreator:(bindable) =>
213 var scrollView = (ScrollView)bindable;
215 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.WRAP).Get(out temp);
218 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
219 [EditorBrowsable(EditorBrowsableState.Never)]
220 public static readonly BindableProperty PanningProperty = BindableProperty.Create("Panning", typeof(bool), typeof(ScrollView), false, propertyChanged: (bindable, oldValue, newValue) =>
222 var scrollView = (ScrollView)bindable;
223 if (newValue != null)
225 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.PANNING, new Tizen.NUI.PropertyValue((bool)newValue));
228 defaultValueCreator:(bindable) =>
230 var scrollView = (ScrollView)bindable;
232 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.PANNING).Get(out temp);
235 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
236 [EditorBrowsable(EditorBrowsableState.Never)]
237 public static readonly BindableProperty ScrollingProperty = BindableProperty.Create("Scrolling", typeof(bool), typeof(ScrollView), false, propertyChanged: (bindable, oldValue, newValue) =>
239 var scrollView = (ScrollView)bindable;
240 if (newValue != null)
242 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLLING, new Tizen.NUI.PropertyValue((bool)newValue));
245 defaultValueCreator:(bindable) =>
247 var scrollView = (ScrollView)bindable;
249 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLLING).Get(out temp);
252 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
253 [EditorBrowsable(EditorBrowsableState.Never)]
254 public static readonly BindableProperty ScrollDomainSizeProperty = BindableProperty.Create("ScrollDomainSize", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
256 var scrollView = (ScrollView)bindable;
257 if (newValue != null)
259 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_DOMAIN_SIZE, new Tizen.NUI.PropertyValue((Vector2)newValue));
262 defaultValueCreator:(bindable) =>
264 var scrollView = (ScrollView)bindable;
265 Vector2 temp = new Vector2(0.0f, 0.0f);
266 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_DOMAIN_SIZE).Get(temp);
269 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
270 [EditorBrowsable(EditorBrowsableState.Never)]
271 public static readonly BindableProperty ScrollDomainOffsetProperty = BindableProperty.Create("ScrollDomainOffset", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
273 var scrollView = (ScrollView)bindable;
274 if (newValue != null)
276 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_DOMAIN_OFFSET, new Tizen.NUI.PropertyValue((Vector2)newValue));
279 defaultValueCreator:(bindable) =>
281 var scrollView = (ScrollView)bindable;
282 Vector2 temp = new Vector2(0.0f, 0.0f);
283 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_DOMAIN_OFFSET).Get(temp);
286 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
287 [EditorBrowsable(EditorBrowsableState.Never)]
288 public static readonly BindableProperty ScrollPositionDeltaProperty = BindableProperty.Create("ScrollPositionDelta", typeof(Vector2), typeof(ScrollView), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
290 var scrollView = (ScrollView)bindable;
291 if (newValue != null)
293 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_POSITION_DELTA, new Tizen.NUI.PropertyValue((Vector2)newValue));
296 defaultValueCreator:(bindable) =>
298 var scrollView = (ScrollView)bindable;
299 Vector2 temp = new Vector2(0.0f, 0.0f);
300 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_POSITION_DELTA).Get(temp);
303 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
304 [EditorBrowsable(EditorBrowsableState.Never)]
305 public static readonly BindableProperty StartPagePositionProperty = BindableProperty.Create("StartPagePosition", typeof(Vector3), typeof(ScrollView), Vector3.Zero, propertyChanged: (bindable, oldValue, newValue) =>
307 var scrollView = (ScrollView)bindable;
308 if (newValue != null)
310 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.START_PAGE_POSITION, new Tizen.NUI.PropertyValue((Vector3)newValue));
313 defaultValueCreator:(bindable) =>
315 var scrollView = (ScrollView)bindable;
316 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
317 Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.START_PAGE_POSITION).Get(temp);
320 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
321 [EditorBrowsable(EditorBrowsableState.Never)]
322 public static readonly BindableProperty ScrollModeProperty = BindableProperty.Create("ScrollMode", typeof(PropertyMap), typeof(ScrollView), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
324 var scrollView = (ScrollView)bindable;
325 if (newValue != null)
327 Tizen.NUI.Object.SetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_MODE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
330 defaultValueCreator:(bindable) =>
332 var scrollView = (ScrollView)bindable;
333 PropertyValue value = Tizen.NUI.Object.GetProperty(scrollView.swigCPtr, ScrollView.Property.SCROLL_MODE );
334 PropertyMap map = new PropertyMap();
339 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
341 internal ScrollView(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.ScrollView_SWIGUpcast(cPtr), cMemoryOwn)
343 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
346 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(ScrollView obj)
348 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
354 /// <param name="type">the dispose type</param>
355 /// <since_tizen> 3 </since_tizen>
356 protected override void Dispose(DisposeTypes type)
363 if (type == DisposeTypes.Explicit)
366 //Release your own managed resources here.
367 //You should release all of your own disposable objects here.
371 //Release your own unmanaged resources here.
372 //You should not access any managed member here except static instance.
373 //because the execution order of Finalizes is non-deterministic.
375 if (this != null && _scrollViewSnapStartedCallbackDelegate != null)
377 this.SnapStartedSignal().Disconnect(_scrollViewSnapStartedCallbackDelegate);
380 if (swigCPtr.Handle != global::System.IntPtr.Zero)
385 NDalicPINVOKE.delete_ScrollView(swigCPtr);
387 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
394 /// Event arguments that passed via the SnapStarted signal.
396 /// <since_tizen> 3 </since_tizen>
397 public class SnapStartedEventArgs : EventArgs
399 private Tizen.NUI.ScrollView.SnapEvent _snapEvent;
402 /// SnapEventInfo is the SnapEvent information like snap or flick (it tells the target position, scale, rotation for the snap or flick).
404 /// <since_tizen> 3 </since_tizen>
405 public Tizen.NUI.ScrollView.SnapEvent SnapEventInfo
418 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
419 private delegate void SnapStartedCallbackDelegate(IntPtr data);
420 private DaliEventHandler<object, SnapStartedEventArgs> _scrollViewSnapStartedEventHandler;
421 private SnapStartedCallbackDelegate _scrollViewSnapStartedCallbackDelegate;
424 /// SnapStarted can be used to subscribe or unsubscribe the event handler
425 /// The SnapStarted signal is emitted when the ScrollView has started to snap or flick (it tells the target
426 /// position, scale, rotation for the snap or flick).
428 /// <since_tizen> 3 </since_tizen>
429 public event DaliEventHandler<object, SnapStartedEventArgs> SnapStarted
435 // Restricted to only one listener
436 if (_scrollViewSnapStartedEventHandler == null)
438 _scrollViewSnapStartedEventHandler += value;
440 _scrollViewSnapStartedCallbackDelegate = new SnapStartedCallbackDelegate(OnSnapStarted);
441 this.SnapStartedSignal().Connect(_scrollViewSnapStartedCallbackDelegate);
450 if (_scrollViewSnapStartedEventHandler != null)
452 this.SnapStartedSignal().Disconnect(_scrollViewSnapStartedCallbackDelegate);
455 _scrollViewSnapStartedEventHandler -= value;
460 // Callback for ScrollView SnapStarted signal
461 private void OnSnapStarted(IntPtr data)
463 SnapStartedEventArgs e = new SnapStartedEventArgs();
465 // Populate all members of "e" (SnapStartedEventArgs) with real data
466 e.SnapEventInfo = SnapEvent.GetSnapEventFromPtr(data);
468 if (_scrollViewSnapStartedEventHandler != null)
470 //here we send all data to user event handlers
471 _scrollViewSnapStartedEventHandler(this, e);
476 /// Snaps signal event's data.
478 /// <since_tizen> 3 </since_tizen>
479 public class SnapEvent : global::System.IDisposable
481 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
485 /// <since_tizen> 3 </since_tizen>
486 protected bool swigCMemOwn;
488 internal SnapEvent(global::System.IntPtr cPtr, bool cMemoryOwn)
490 swigCMemOwn = cMemoryOwn;
491 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
494 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(SnapEvent obj)
496 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
499 //A Flag to check who called Dispose(). (By User or DisposeQueue)
500 private bool isDisposeQueued = false;
502 /// A Flat to check if it is already disposed.
505 /// <since_tizen> 3 </since_tizen>
506 protected bool disposed = false;
511 /// <since_tizen> 3 </since_tizen>
514 if (!isDisposeQueued)
516 isDisposeQueued = true;
517 DisposeQueue.Instance.Add(this);
524 /// <since_tizen> 3 </since_tizen>
525 public void Dispose()
527 //Throw excpetion if Dispose() is called in separate thread.
528 if (!Window.IsInstalled())
530 throw new System.InvalidOperationException("This API called from separate thread. This API must be called from MainThread.");
535 Dispose(DisposeTypes.Implicit);
539 Dispose(DisposeTypes.Explicit);
540 System.GC.SuppressFinalize(this);
547 /// <param name="type">the dispose type</param>
548 /// <since_tizen> 3 </since_tizen>
549 protected virtual void Dispose(DisposeTypes type)
556 if (type == DisposeTypes.Explicit)
559 //Release your own managed resources here.
560 //You should release all of your own disposable objects here.
564 //Release your own unmanaged resources here.
565 //You should not access any managed member here except static instance.
566 //because the execution order of Finalizes is non-deterministic.
568 if (swigCPtr.Handle != global::System.IntPtr.Zero)
573 NDalicPINVOKE.delete_ScrollView_SnapEvent(swigCPtr);
575 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
582 /// Get SnapEvent From Ptr
584 /// <since_tizen> 3 </since_tizen>
585 public static SnapEvent GetSnapEventFromPtr(global::System.IntPtr cPtr)
587 SnapEvent ret = new SnapEvent(cPtr, false);
588 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
592 internal SnapType type
596 NDalicPINVOKE.ScrollView_SnapEvent_type_set(swigCPtr, (int)value);
597 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
601 SnapType ret = (SnapType)NDalicPINVOKE.ScrollView_SnapEvent_type_get(swigCPtr);
602 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
610 /// <since_tizen> 3 </since_tizen>
611 public Vector2 position
615 NDalicPINVOKE.ScrollView_SnapEvent_position_set(swigCPtr, Vector2.getCPtr(value));
616 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
620 global::System.IntPtr cPtr = NDalicPINVOKE.ScrollView_SnapEvent_position_get(swigCPtr);
621 Vector2 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector2(cPtr, false);
622 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
630 /// <since_tizen> 3 </since_tizen>
631 public float duration
635 NDalicPINVOKE.ScrollView_SnapEvent_duration_set(swigCPtr, value);
636 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
640 float ret = NDalicPINVOKE.ScrollView_SnapEvent_duration_get(swigCPtr);
641 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
647 /// Create an instance of SnapEvent.
649 /// <since_tizen> 3 </since_tizen>
650 public SnapEvent() : this(NDalicPINVOKE.new_ScrollView_SnapEvent(), true)
652 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
658 /// This should be internal, please do not use.
660 /// <since_tizen> 3 </since_tizen>
661 public new class Property
664 /// This should be internal, please do not use.
666 /// <since_tizen> 3 </since_tizen>
667 public static readonly int WRAP_ENABLED = NDalicPINVOKE.ScrollView_Property_WRAP_ENABLED_get();
669 /// This should be internal, please do not use.
671 /// <since_tizen> 3 </since_tizen>
672 public static readonly int PANNING_ENABLED = NDalicPINVOKE.ScrollView_Property_PANNING_ENABLED_get();
674 /// This should be internal, please do not use.
676 /// <since_tizen> 3 </since_tizen>
677 public static readonly int AXIS_AUTO_LOCK_ENABLED = NDalicPINVOKE.ScrollView_Property_AXIS_AUTO_LOCK_ENABLED_get();
679 /// This should be internal, please do not use.
681 /// <since_tizen> 3 </since_tizen>
682 public static readonly int WHEEL_SCROLL_DISTANCE_STEP = NDalicPINVOKE.ScrollView_Property_WHEEL_SCROLL_DISTANCE_STEP_get();
684 /// This should be internal, please do not use.
686 /// <since_tizen> 3 </since_tizen>
687 public static readonly int SCROLL_MODE = NDalicPINVOKE.ScrollView_Property_SCROLL_MODE_get();
689 /// This should be internal, please do not use.
691 /// <since_tizen> 3 </since_tizen>
692 public static readonly int SCROLL_POSITION = NDalicPINVOKE.ScrollView_Property_SCROLL_POSITION_get();
694 /// This should be internal, please do not use.
696 /// <since_tizen> 3 </since_tizen>
697 public static readonly int SCROLL_PRE_POSITION = NDalicPINVOKE.ScrollView_Property_SCROLL_PRE_POSITION_get();
699 /// This should be internal, please do not use.
701 /// <since_tizen> 3 </since_tizen>
702 public static readonly int SCROLL_PRE_POSITION_X = NDalicPINVOKE.ScrollView_Property_SCROLL_PRE_POSITION_X_get();
704 /// This should be internal, please do not use.
706 /// <since_tizen> 3 </since_tizen>
707 public static readonly int SCROLL_PRE_POSITION_Y = NDalicPINVOKE.ScrollView_Property_SCROLL_PRE_POSITION_Y_get();
709 /// This should be internal, please do not use.
711 /// <since_tizen> 3 </since_tizen>
712 public static readonly int SCROLL_PRE_POSITION_MAX = NDalicPINVOKE.ScrollView_Property_SCROLL_PRE_POSITION_MAX_get();
714 /// This should be internal, please do not use.
716 /// <since_tizen> 3 </since_tizen>
717 public static readonly int SCROLL_PRE_POSITION_MAX_X = NDalicPINVOKE.ScrollView_Property_SCROLL_PRE_POSITION_MAX_X_get();
719 /// This should be internal, please do not use.
721 /// <since_tizen> 3 </since_tizen>
722 public static readonly int SCROLL_PRE_POSITION_MAX_Y = NDalicPINVOKE.ScrollView_Property_SCROLL_PRE_POSITION_MAX_Y_get();
724 /// This should be internal, please do not use.
726 /// <since_tizen> 3 </since_tizen>
727 public static readonly int OVERSHOOT_X = NDalicPINVOKE.ScrollView_Property_OVERSHOOT_X_get();
729 /// This should be internal, please do not use.
731 /// <since_tizen> 3 </since_tizen>
732 public static readonly int OVERSHOOT_Y = NDalicPINVOKE.ScrollView_Property_OVERSHOOT_Y_get();
734 /// This should be internal, please do not use.
736 /// <since_tizen> 3 </since_tizen>
737 public static readonly int SCROLL_FINAL = NDalicPINVOKE.ScrollView_Property_SCROLL_FINAL_get();
739 /// This should be internal, please do not use.
741 /// <since_tizen> 3 </since_tizen>
742 public static readonly int SCROLL_FINAL_X = NDalicPINVOKE.ScrollView_Property_SCROLL_FINAL_X_get();
744 /// This should be internal, please do not use.
746 /// <since_tizen> 3 </since_tizen>
747 public static readonly int SCROLL_FINAL_Y = NDalicPINVOKE.ScrollView_Property_SCROLL_FINAL_Y_get();
749 /// This should be internal, please do not use.
751 /// <since_tizen> 3 </since_tizen>
752 public static readonly int WRAP = NDalicPINVOKE.ScrollView_Property_WRAP_get();
754 /// This should be internal, please do not use.
756 /// <since_tizen> 3 </since_tizen>
757 public static readonly int PANNING = NDalicPINVOKE.ScrollView_Property_PANNING_get();
759 /// This should be internal, please do not use.
761 /// <since_tizen> 3 </since_tizen>
762 public static readonly int SCROLLING = NDalicPINVOKE.ScrollView_Property_SCROLLING_get();
764 /// This should be internal, please do not use.
766 /// <since_tizen> 3 </since_tizen>
767 public static readonly int SCROLL_DOMAIN_SIZE = NDalicPINVOKE.ScrollView_Property_SCROLL_DOMAIN_SIZE_get();
769 /// This should be internal, please do not use.
771 /// <since_tizen> 3 </since_tizen>
772 public static readonly int SCROLL_DOMAIN_SIZE_X = NDalicPINVOKE.ScrollView_Property_SCROLL_DOMAIN_SIZE_X_get();
774 /// This should be internal, please do not use.
776 /// <since_tizen> 3 </since_tizen>
777 public static readonly int SCROLL_DOMAIN_SIZE_Y = NDalicPINVOKE.ScrollView_Property_SCROLL_DOMAIN_SIZE_Y_get();
779 /// This should be internal, please do not use.
781 /// <since_tizen> 3 </since_tizen>
782 public static readonly int SCROLL_DOMAIN_OFFSET = NDalicPINVOKE.ScrollView_Property_SCROLL_DOMAIN_OFFSET_get();
784 /// This should be internal, please do not use.
786 /// <since_tizen> 3 </since_tizen>
787 public static readonly int SCROLL_POSITION_DELTA = NDalicPINVOKE.ScrollView_Property_SCROLL_POSITION_DELTA_get();
789 /// This should be internal, please do not use.
791 /// <since_tizen> 3 </since_tizen>
792 public static readonly int START_PAGE_POSITION = NDalicPINVOKE.ScrollView_Property_START_PAGE_POSITION_get();
797 /// Create an instance of ScrollView.
799 /// <since_tizen> 3 </since_tizen>
800 public ScrollView() : this(NDalicPINVOKE.ScrollView_New(), true)
802 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
807 /// Gets snap-animation's AlphaFunction.
809 /// <returns>Current easing alpha function of the snap animation.</returns>
810 /// <since_tizen> 3 </since_tizen>
811 public AlphaFunction GetScrollSnapAlphaFunction()
813 AlphaFunction ret = new AlphaFunction(NDalicPINVOKE.ScrollView_GetScrollSnapAlphaFunction(swigCPtr), true);
814 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
819 /// Sets snap-animation's AlphaFunction.
821 /// <param name="alpha">Easing alpha function of the snap animation.</param>
822 /// <since_tizen> 3 </since_tizen>
823 public void SetScrollSnapAlphaFunction(AlphaFunction alpha)
825 NDalicPINVOKE.ScrollView_SetScrollSnapAlphaFunction(swigCPtr, AlphaFunction.getCPtr(alpha));
826 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
830 /// Gets flick-animation's AlphaFunction.
832 /// <returns>Current easing alpha function of the flick animation.</returns>
833 /// <since_tizen> 3 </since_tizen>
834 public AlphaFunction GetScrollFlickAlphaFunction()
836 AlphaFunction ret = new AlphaFunction(NDalicPINVOKE.ScrollView_GetScrollFlickAlphaFunction(swigCPtr), true);
837 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
842 /// Sets flick-animation's AlphaFunction.
844 /// <param name="alpha">Easing alpha function of the flick animation.</param>
845 /// <since_tizen> 3 </since_tizen>
846 public void SetScrollFlickAlphaFunction(AlphaFunction alpha)
848 NDalicPINVOKE.ScrollView_SetScrollFlickAlphaFunction(swigCPtr, AlphaFunction.getCPtr(alpha));
849 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
853 /// Gets the time for the scroll snap-animation.
855 /// <returns>The time in seconds for the animation to take.</returns>
856 /// <since_tizen> 3 </since_tizen>
857 public float GetScrollSnapDuration()
859 float ret = NDalicPINVOKE.ScrollView_GetScrollSnapDuration(swigCPtr);
860 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
865 /// Sets the time for the scroll snap-animation.
867 /// <param name="time">The time in seconds for the animation to take.</param>
868 /// <since_tizen> 3 </since_tizen>
869 public void SetScrollSnapDuration(float time)
871 NDalicPINVOKE.ScrollView_SetScrollSnapDuration(swigCPtr, time);
872 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
876 /// Gets the time for the scroll flick-animation.
878 /// <returns>The time in seconds for the animation to take.</returns>
879 /// <since_tizen> 3 </since_tizen>
880 public float GetScrollFlickDuration()
882 float ret = NDalicPINVOKE.ScrollView_GetScrollFlickDuration(swigCPtr);
883 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
888 /// Sets the time for the scroll snap-animation.
890 /// <param name="time">The time in seconds for the animation to take.</param>
891 /// <since_tizen> 3 </since_tizen>
892 public void SetScrollFlickDuration(float time)
894 NDalicPINVOKE.ScrollView_SetScrollFlickDuration(swigCPtr, time);
895 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
899 /// Sets scroll sensibility of pan gesture.
901 /// <param name="sensitive">True to enable scroll, false to disable scrolling.</param>
902 /// <since_tizen> 3 </since_tizen>
903 public void SetScrollSensitive(bool sensitive)
905 NDalicPINVOKE.ScrollView_SetScrollSensitive(swigCPtr, sensitive);
906 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
910 /// Sets maximum overshoot amount.
912 /// <param name="overshootX">The maximum number of horizontally scrolled pixels before overshoot X reaches 1.0f.</param>
913 /// <param name="overshootY">The maximum number of vertically scrolled pixels before overshoot X reaches 1.0f.</param>
914 /// <since_tizen> 3 </since_tizen>
915 public void SetMaxOvershoot(float overshootX, float overshootY)
917 NDalicPINVOKE.ScrollView_SetMaxOvershoot(swigCPtr, overshootX, overshootY);
918 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
922 /// Sets Snap Overshoot animation's AlphaFunction.
924 /// <param name="alpha">Easing alpha function of the overshoot snap animation.</param>
925 /// <since_tizen> 3 </since_tizen>
926 public void SetSnapOvershootAlphaFunction(AlphaFunction alpha)
928 NDalicPINVOKE.ScrollView_SetSnapOvershootAlphaFunction(swigCPtr, AlphaFunction.getCPtr(alpha));
929 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
933 /// Sets Snap Overshoot animation's Duration.
935 /// <param name="duration">duration The duration of the overshoot snap animation.</param>
936 /// <since_tizen> 3 </since_tizen>
937 public void SetSnapOvershootDuration(float duration)
939 NDalicPINVOKE.ScrollView_SetSnapOvershootDuration(swigCPtr, duration);
940 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
944 /// Enables or Disables Actor Auto-Snap mode.<br />
945 /// When Actor Auto-Snap mode has been enabled, ScrollView will automatically,
946 /// snap to the closest actor (The closest actor will appear in the center of the ScrollView).
948 /// <param name="enable">Enables (true), or disables (false) Actor AutoSnap.</param>
949 /// <since_tizen> 3 </since_tizen>
950 public void SetViewAutoSnap(bool enable)
952 NDalicPINVOKE.ScrollView_SetActorAutoSnap(swigCPtr, enable);
953 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
957 /// Enables or Disables Wrap mode for ScrollView contents.<br />
958 /// When enabled, the ScrollView contents are wrapped over the X/Y Domain.
960 /// <param name="enable">Enables (true), or disables (false) Wrap Mode.</param>
961 /// <since_tizen> 3 </since_tizen>
962 public void SetWrapMode(bool enable)
964 NDalicPINVOKE.ScrollView_SetWrapMode(swigCPtr, enable);
965 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
969 /// Gets the current distance needed to scroll for ScrollUpdatedSignal to be emitted.
971 /// <returns>Current scroll update distance.</returns>
972 /// <since_tizen> 3 </since_tizen>
973 public int GetScrollUpdateDistance()
975 int ret = NDalicPINVOKE.ScrollView_GetScrollUpdateDistance(swigCPtr);
976 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
981 /// Sets the distance needed to scroll for ScrollUpdatedSignal to be emitted.<br />
982 /// The scroll update distance tells ScrollView how far to move before ScrollUpdatedSignal the informs application.<br />
983 /// Each time the ScrollView crosses this distance the signal will be emitted.<br />
985 /// <param name="distance">The distance for ScrollView to move before emitting update signal.</param>
986 /// <since_tizen> 3 </since_tizen>
987 public void SetScrollUpdateDistance(int distance)
989 NDalicPINVOKE.ScrollView_SetScrollUpdateDistance(swigCPtr, distance);
990 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
994 /// Returns state of Axis Auto Lock mode.
996 /// <returns>Whether Axis Auto Lock mode has been enabled or not.</returns>
997 /// <since_tizen> 3 </since_tizen>
998 public bool GetAxisAutoLock()
1000 bool ret = NDalicPINVOKE.ScrollView_GetAxisAutoLock(swigCPtr);
1001 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1006 /// Enables or Disables Axis Auto Lock mode for panning within the ScrollView.<br />
1007 /// When enabled, any pan gesture that appears mostly horizontal or mostly
1008 /// vertical, will be automatically restricted to horizontal only or vertical
1009 /// only panning, until the pan gesture has completed.
1011 /// <param name="enable">Enables (true), or disables (false) AxisAutoLock mode.</param>
1012 /// <since_tizen> 3 </since_tizen>
1013 public void SetAxisAutoLock(bool enable)
1015 NDalicPINVOKE.ScrollView_SetAxisAutoLock(swigCPtr, enable);
1016 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1020 /// Gets the gradient threshold at which a panning gesture should be locked to the Horizontal or Vertical axis.
1022 /// <returns>The gradient, a value between 0.0 and 1.0f.</returns>
1023 /// <since_tizen> 3 </since_tizen>
1024 public float GetAxisAutoLockGradient()
1026 float ret = NDalicPINVOKE.ScrollView_GetAxisAutoLockGradient(swigCPtr);
1027 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1032 /// Sets the gradient threshold at which a panning gesture should be locked to the Horizontal or Vertical axis.<br />
1033 /// By default, this is 0.36 (0.36:1) which means angles less than 20 degrees to an axis will lock to that axis.<br />
1035 /// <param name="gradient">gradient A value between 0.0 and 1.0 (auto-lock for all angles).</param>
1036 /// <since_tizen> 3 </since_tizen>
1037 public void SetAxisAutoLockGradient(float gradient)
1039 NDalicPINVOKE.ScrollView_SetAxisAutoLockGradient(swigCPtr, gradient);
1040 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1044 /// Gets the friction coefficient setting for ScrollView when flicking in free panning mode.
1045 /// This is a value in stage-diagonals per second^2, stage-diagonal = Length( stage.width, stage.height )
1047 /// <returns>Friction coefficient is returned.</returns>
1048 /// <since_tizen> 3 </since_tizen>
1049 public float GetFrictionCoefficient()
1051 float ret = NDalicPINVOKE.ScrollView_GetFrictionCoefficient(swigCPtr);
1052 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1057 /// Sets the friction coefficient for ScrollView when flicking.<br />
1059 /// <param name="friction">Friction coefficient must be greater than 0.0 (default = 1.0).</param>
1060 /// <since_tizen> 3 </since_tizen>
1061 public void SetFrictionCoefficient(float friction)
1063 NDalicPINVOKE.ScrollView_SetFrictionCoefficient(swigCPtr, friction);
1064 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1068 /// Gets the flick speed coefficient for ScrollView when flicking in free panning mode.<br />
1069 /// This is a constant which multiplies the input touch flick velocity to determine the actual velocity at which to move the scrolling area.
1071 /// <returns>The flick speed coefficient is returned.</returns>
1072 /// <since_tizen> 3 </since_tizen>
1073 public float GetFlickSpeedCoefficient()
1075 float ret = NDalicPINVOKE.ScrollView_GetFlickSpeedCoefficient(swigCPtr);
1076 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1081 /// Sets the flick speed coefficient for ScrollView when flicking in free panning mode.<br />
1082 /// This is a constant which multiplies the input touch flick velocity to determine the actual velocity at
1083 /// which to move the scrolling area.<br />
1085 /// <param name="speed">The flick speed coefficient (default = 1.0).</param>
1086 /// <since_tizen> 3 </since_tizen>
1087 public void SetFlickSpeedCoefficient(float speed)
1089 NDalicPINVOKE.ScrollView_SetFlickSpeedCoefficient(swigCPtr, speed);
1090 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1094 /// Gets the minimum pan distance required for a flick gesture in pixels.<br />
1096 /// <returns>Minimum pan distance vector with separate x and y distance.</returns>
1097 /// <since_tizen> 3 </since_tizen>
1098 public Vector2 GetMinimumDistanceForFlick()
1100 Vector2 ret = new Vector2(NDalicPINVOKE.ScrollView_GetMinimumDistanceForFlick(swigCPtr), true);
1101 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1106 /// Sets the minimum pan distance required for a flick in pixels.<br />
1107 /// Takes a Vector2 containing separate x and y values. As long as the pan distance exceeds one of these axes, a flick will be allowed.
1109 /// <param name="distance">The flick speed coefficient (default = 1.0).</param>
1110 /// <since_tizen> 3 </since_tizen>
1111 public void SetMinimumDistanceForFlick(Vector2 distance)
1113 NDalicPINVOKE.ScrollView_SetMinimumDistanceForFlick(swigCPtr, Vector2.getCPtr(distance));
1114 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1118 /// Returns the minimum pan speed required for a flick gesture in pixels per second.
1120 /// <returns>Minimum pan speed.</returns>
1121 /// <since_tizen> 3 </since_tizen>
1122 public float GetMinimumSpeedForFlick()
1124 float ret = NDalicPINVOKE.ScrollView_GetMinimumSpeedForFlick(swigCPtr);
1125 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1130 /// Sets the minimum pan speed required for a flick in pixels per second.<br />
1132 /// <param name="speed">The minimum pan speed for a flick.</param>
1133 /// <since_tizen> 3 </since_tizen>
1134 public void SetMinimumSpeedForFlick(float speed)
1136 NDalicPINVOKE.ScrollView_SetMinimumSpeedForFlick(swigCPtr, speed);
1137 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1141 /// Gets the maximum flick speed setting for ScrollView when flicking in free panning mode.<br />
1142 /// This is a value in stage-diagonals per second.
1144 /// <returns>Maximum flick speed is returned.</returns>
1145 /// <since_tizen> 3 </since_tizen>
1146 public float GetMaxFlickSpeed()
1148 float ret = NDalicPINVOKE.ScrollView_GetMaxFlickSpeed(swigCPtr);
1149 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1154 /// Sets the maximum flick speed for the ScrollView when flicking in free panning mode.<br />
1155 /// This is a value in stage-diagonals per second. stage-diagonal = Length( stage.width, stage.height ).<br />
1157 /// <param name="speed">Maximum flick speed (default = 3.0).</param>
1158 /// <since_tizen> 3 </since_tizen>
1159 public void SetMaxFlickSpeed(float speed)
1161 NDalicPINVOKE.ScrollView_SetMaxFlickSpeed(swigCPtr, speed);
1162 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1166 /// Gets the step of scroll distance in actor coordinates for each wheel event received in free panning mode.<br />
1168 /// <returns>The step of scroll distance(pixel) in X and Y axes.</returns>
1169 /// <since_tizen> 3 </since_tizen>
1170 public Vector2 GetWheelScrollDistanceStep()
1172 Vector2 ret = new Vector2(NDalicPINVOKE.ScrollView_GetWheelScrollDistanceStep(swigCPtr), true);
1173 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1178 /// Sets the step of scroll distance in actor coordinates for each wheel event received in free panning mode.<br />
1180 /// <param name="step">step The step of scroll distance(pixel) in X and Y axes.</param>
1181 /// <since_tizen> 3 </since_tizen>
1182 public void SetWheelScrollDistanceStep(Vector2 step)
1184 NDalicPINVOKE.ScrollView_SetWheelScrollDistanceStep(swigCPtr, Vector2.getCPtr(step));
1185 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1189 /// Retrieves current scroll position.<br />
1191 /// <returns>The current scroll position.</returns>
1192 /// <since_tizen> 3 </since_tizen>
1193 public Vector2 GetCurrentScrollPosition()
1195 Vector2 ret = new Vector2(NDalicPINVOKE.ScrollView_GetCurrentScrollPosition(swigCPtr), true);
1196 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1201 /// Retrieves current scroll page based on ScrollView dimensions being the size of one page, and all pages laid out in<br />
1202 /// a grid fashion, increasing from left to right until the end of the X-domain.
1204 /// <returns>The current scroll position.</returns>
1205 /// <since_tizen> 3 </since_tizen>
1206 public uint GetCurrentPage()
1208 uint ret = NDalicPINVOKE.ScrollView_GetCurrentPage(swigCPtr);
1209 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1214 /// Scrolls View to position specified (contents will scroll to this position).
1216 /// <param name="position">The position to scroll to.</param>
1217 /// <since_tizen> 3 </since_tizen>
1218 public void ScrollTo(Vector2 position)
1220 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_0(swigCPtr, Vector2.getCPtr(position));
1221 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1225 /// Scrolls View to position specified (contents will scroll to this position).
1227 /// <param name="position">The position to scroll to.</param>
1228 /// <param name="duration">The duration of the animation in seconds.</param>
1229 /// <since_tizen> 3 </since_tizen>
1230 public void ScrollTo(Vector2 position, float duration)
1232 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_1(swigCPtr, Vector2.getCPtr(position), duration);
1233 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1237 /// Scrolls View to position specified (contents will scroll to this position).
1239 /// <param name="position">The position to scroll to.</param>
1240 /// <param name="duration">The duration of the animation in seconds.</param>
1241 /// <param name="alpha">The alpha function to use.</param>
1242 /// <since_tizen> 3 </since_tizen>
1243 public void ScrollTo(Vector2 position, float duration, AlphaFunction alpha)
1245 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_2(swigCPtr, Vector2.getCPtr(position), duration, AlphaFunction.getCPtr(alpha));
1246 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1250 /// Scrolls View to position specified (contents will scroll to this position).
1252 /// <param name="position">The position to scroll to.</param>
1253 /// <param name="duration">The duration of the animation in seconds.</param>
1254 /// <param name="horizontalBias">Whether to bias scrolling to left or right.</param>
1255 /// <param name="verticalBias">Whether to bias scrolling to top or bottom.</param>
1256 /// <since_tizen> 3 </since_tizen>
1257 public void ScrollTo(Vector2 position, float duration, DirectionBias horizontalBias, DirectionBias verticalBias)
1259 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_3(swigCPtr, Vector2.getCPtr(position), duration, (int)horizontalBias, (int)verticalBias);
1260 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1264 /// Scrolls View to position specified (contents will scroll to this position).
1266 /// <param name="position">The position to scroll to.</param>
1267 /// <param name="duration">The duration of the animation in seconds.</param>
1268 /// <param name="alpha">Alpha function to use.</param>
1269 /// <param name="horizontalBias">Whether to bias scrolling to left or right.</param>
1270 /// <param name="verticalBias">Whether to bias scrolling to top or bottom.</param>
1271 /// <since_tizen> 3 </since_tizen>
1272 public void ScrollTo(Vector2 position, float duration, AlphaFunction alpha, DirectionBias horizontalBias, DirectionBias verticalBias)
1274 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_4(swigCPtr, Vector2.getCPtr(position), duration, AlphaFunction.getCPtr(alpha), (int)horizontalBias, (int)verticalBias);
1275 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1279 /// Scrolls View to position specified (contents will scroll to this position).
1281 /// <param name="page">The page to scroll to.</param>
1282 /// <since_tizen> 3 </since_tizen>
1283 public void ScrollTo(uint page)
1285 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_5(swigCPtr, page);
1286 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1290 /// Scrolls View to position specified (contents will scroll to this position).
1292 /// <param name="page">The page to scroll to.</param>
1293 /// <param name="duration">The duration of the animation in seconds.</param>
1294 /// <since_tizen> 3 </since_tizen>
1295 public void ScrollTo(uint page, float duration)
1297 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_6(swigCPtr, page, duration);
1298 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1302 /// Scrolls View to position specified (contents will scroll to this position).
1304 /// <param name="page">The page to scroll to.</param>
1305 /// <param name="duration">The duration of the animation in seconds.</param>
1306 /// <param name="bias">Whether to bias scrolling to left or right.</param>
1307 /// <since_tizen> 3 </since_tizen>
1308 public void ScrollTo(uint page, float duration, DirectionBias bias)
1310 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_7(swigCPtr, page, duration, (int)bias);
1311 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1315 /// Scrolls View to position specified (contents will scroll to this position).
1317 /// <param name="view">The view to center in on (via Scrolling).</param>
1318 /// <since_tizen> 3 </since_tizen>
1319 public void ScrollTo(View view)
1321 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_8(swigCPtr, View.getCPtr(view));
1322 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1326 /// Scrolls View to position specified (contents will scroll to this position).
1328 /// <param name="view">The view to center in on (via Scrolling).</param>
1329 /// <param name="duration">The duration of the animation in seconds.</param>
1330 /// <since_tizen> 3 </since_tizen>
1331 public void ScrollTo(View view, float duration)
1333 NDalicPINVOKE.ScrollView_ScrollTo__SWIG_9(swigCPtr, View.getCPtr(view), duration);
1334 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1338 /// Scrolls View to the nearest snap points as specified by the Rulers.<br />
1339 /// If already at snap points, then will return false, and not scroll.<br />
1341 /// <returns>True if Snapping necessary.</returns>
1342 /// <since_tizen> 3 </since_tizen>
1343 public bool ScrollToSnapPoint()
1345 bool ret = NDalicPINVOKE.ScrollView_ScrollToSnapPoint(swigCPtr);
1346 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1350 internal void ApplyConstraintToChildren(SWIGTYPE_p_Dali__Constraint constraint)
1352 NDalicPINVOKE.ScrollView_ApplyConstraintToChildren(swigCPtr, SWIGTYPE_p_Dali__Constraint.getCPtr(constraint));
1353 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1357 /// Applies Effect to ScrollView.
1359 /// <param name="effect">The effect to apply to scroll view.</param>
1360 /// <since_tizen> 3 </since_tizen>
1361 public void ApplyEffect(ScrollViewEffect effect)
1363 NDalicPINVOKE.ScrollView_ApplyEffect(swigCPtr, ScrollViewEffect.getCPtr(effect));
1364 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1368 /// Removes Effect from ScrollView.
1370 /// <param name="effect">The effect to remove.</param>
1371 /// <since_tizen> 3 </since_tizen>
1372 public void RemoveEffect(ScrollViewEffect effect)
1374 NDalicPINVOKE.ScrollView_RemoveEffect(swigCPtr, ScrollViewEffect.getCPtr(effect));
1375 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1379 /// Remove All Effects from ScrollView.
1381 /// <since_tizen> 3 </since_tizen>
1382 public void RemoveAllEffects()
1384 NDalicPINVOKE.ScrollView_RemoveAllEffects(swigCPtr);
1385 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1389 /// Binds view to this ScrollView.
1390 /// Once an actor is bound to a ScrollView, it will be subject to that ScrollView's properties.
1392 /// <param name="child">The view to add to this ScrollView.</param>
1393 /// <since_tizen> 3 </since_tizen>
1394 public void BindView(View child)
1396 NDalicPINVOKE.ScrollView_BindActor(swigCPtr, View.getCPtr(child));
1397 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1401 /// Unbinds view to this ScrollView.
1402 /// Once an actor is bound to a ScrollView, it will be subject to that ScrollView's properties.
1404 /// <param name="child">The view to remove to this ScrollView.</param>
1405 /// <since_tizen> 3 </since_tizen>
1406 public void UnbindView(View child)
1408 NDalicPINVOKE.ScrollView_UnbindActor(swigCPtr, View.getCPtr(child));
1409 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1413 /// Allows the user to constrain the scroll view in a particular direction.
1415 /// <param name="direction">The axis to constrain the scroll-view to.</param>
1416 /// <param name="threshold">The threshold to apply around the axis.</param>
1417 /// <since_tizen> 3 </since_tizen>
1418 public void SetScrollingDirection(Radian direction, Radian threshold)
1420 NDalicPINVOKE.ScrollView_SetScrollingDirection__SWIG_0(swigCPtr, Radian.getCPtr(direction), Radian.getCPtr(threshold));
1421 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1425 /// Allows the user to constrain the scroll view in a particular direction.
1427 /// <param name="direction">The axis to constrain the scroll-view to.</param>
1428 /// <since_tizen> 3 </since_tizen>
1429 public void SetScrollingDirection(Radian direction)
1431 NDalicPINVOKE.ScrollView_SetScrollingDirection__SWIG_1(swigCPtr, Radian.getCPtr(direction));
1432 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1436 /// Removes a direction constraint from the scroll view.
1438 /// <param name="direction">The axis to constrain the scroll-view to.</param>
1439 /// <since_tizen> 3 </since_tizen>
1440 public void RemoveScrollingDirection(Radian direction)
1442 NDalicPINVOKE.ScrollView_RemoveScrollingDirection(swigCPtr, Radian.getCPtr(direction));
1443 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1446 internal ScrollViewSnapStartedSignal SnapStartedSignal()
1448 ScrollViewSnapStartedSignal ret = new ScrollViewSnapStartedSignal(NDalicPINVOKE.ScrollView_SnapStartedSignal(swigCPtr), false);
1449 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1454 /// Sets and Gets WrapEnabled property.
1456 /// <since_tizen> 3 </since_tizen>
1457 public bool WrapEnabled
1461 return (bool)GetValue(WrapEnabledProperty);
1465 SetValue(WrapEnabledProperty, value);
1470 /// Sets and Gets PanningEnabled property.
1472 /// <since_tizen> 3 </since_tizen>
1473 public bool PanningEnabled
1477 return (bool)GetValue(PanningEnabledProperty);
1481 SetValue(PanningEnabledProperty, value);
1486 /// Sets and Gets AxisAutoLockEnabled property.
1488 /// <since_tizen> 3 </since_tizen>
1489 public bool AxisAutoLockEnabled
1493 return (bool)GetValue(AxisAutoLockEnabledProperty);
1497 SetValue(AxisAutoLockEnabledProperty, value);
1502 /// Sets and Gets WheelScrollDistanceStep property.
1504 /// <since_tizen> 3 </since_tizen>
1505 public Vector2 WheelScrollDistanceStep
1509 return (Vector2)GetValue(WheelScrollDistanceStepProperty);
1513 SetValue(WheelScrollDistanceStepProperty, value);
1518 /// Sets and Gets ScrollPosition property.
1520 /// <since_tizen> 3 </since_tizen>
1521 public Vector2 ScrollPosition
1525 return (Vector2)GetValue(ScrollPositionProperty);
1529 SetValue(ScrollPositionProperty, value);
1534 /// Sets and Gets ScrollPrePosition property.
1536 /// <since_tizen> 3 </since_tizen>
1537 public Vector2 ScrollPrePosition
1541 return (Vector2)GetValue(ScrollPrePositionProperty);
1545 SetValue(ScrollPrePositionProperty, value);
1550 /// Sets and Gets ScrollPrePositionMax property.
1552 /// <since_tizen> 3 </since_tizen>
1553 public Vector2 ScrollPrePositionMax
1557 return (Vector2)GetValue(ScrollPrePositionMaxProperty);
1561 SetValue(ScrollPrePositionMaxProperty, value);
1566 /// Sets and Gets OvershootX property.
1568 /// <since_tizen> 3 </since_tizen>
1569 public float OvershootX
1573 return (float)GetValue(OvershootXProperty);
1577 SetValue(OvershootXProperty, value);
1582 /// Sets and Gets OvershootY property.
1584 /// <since_tizen> 3 </since_tizen>
1585 public float OvershootY
1589 return (float)GetValue(OvershootYProperty);
1593 SetValue(OvershootYProperty, value);
1598 /// Sets and Gets ScrollFinal property.
1600 /// <since_tizen> 3 </since_tizen>
1601 public Vector2 ScrollFinal
1605 return (Vector2)GetValue(ScrollFinalProperty);
1609 SetValue(ScrollFinalProperty, value);
1614 /// Sets and Gets Wrap property.
1616 /// <since_tizen> 3 </since_tizen>
1621 return (bool)GetValue(WrapProperty);
1625 SetValue(WrapProperty, value);
1630 /// Sets and Gets Panning property.
1632 /// <since_tizen> 3 </since_tizen>
1637 return (bool)GetValue(PanningProperty);
1641 SetValue(PanningProperty, value);
1646 /// Sets and Gets Scrolling property.
1648 /// <since_tizen> 3 </since_tizen>
1649 public bool Scrolling
1653 return (bool)GetValue(ScrollingProperty);
1657 SetValue(ScrollingProperty, value);
1662 /// Sets and Gets ScrollDomainSize property.
1664 /// <since_tizen> 3 </since_tizen>
1665 public Vector2 ScrollDomainSize
1669 return (Vector2)GetValue(ScrollDomainSizeProperty);
1673 SetValue(ScrollDomainSizeProperty, value);
1678 /// Sets and Gets ScrollDomainOffset property.
1680 /// <since_tizen> 3 </since_tizen>
1681 public Vector2 ScrollDomainOffset
1685 return (Vector2)GetValue(ScrollDomainOffsetProperty);
1689 SetValue(ScrollDomainOffsetProperty, value);
1694 /// Sets and Gets ScrollPositionDelta property.
1696 /// <since_tizen> 3 </since_tizen>
1697 public Vector2 ScrollPositionDelta
1701 return (Vector2)GetValue(ScrollPositionDeltaProperty);
1705 SetValue(ScrollPositionDeltaProperty, value);
1710 /// Sets and Gets StartPagePosition property.
1712 /// <since_tizen> 3 </since_tizen>
1713 public Vector3 StartPagePosition
1717 return (Vector3)GetValue(StartPagePositionProperty);
1721 SetValue(StartPagePositionProperty, value);
1727 /// Sets and Gets ScrollMode property.
1729 /// <since_tizen> 3 </since_tizen>
1730 public PropertyMap ScrollMode
1734 return (PropertyMap)GetValue(ScrollModeProperty);
1738 SetValue(ScrollModeProperty, value);