7f1a6bd356ae4bf28749d60d9497f32b78175b02
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / internal / Scrollable.cs
1 //------------------------------------------------------------------------------
2 // <auto-generated />
3 //
4 // This file was automatically generated by SWIG (http://www.swig.org).
5 // Version 3.0.9
6 //
7 // Do not make changes to this file unless you know what you are doing--modify
8 // the SWIG interface file instead.
9 //------------------------------------------------------------------------------
10
11 namespace Tizen.NUI {
12
13 using System;
14 using System.Runtime.InteropServices;
15 using Tizen.NUI.BaseComponents;
16
17     public class Scrollable : View {
18   private global::System.Runtime.InteropServices.HandleRef swigCPtr;
19
20   internal Scrollable(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.Scrollable_SWIGUpcast(cPtr), cMemoryOwn) {
21     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
22   }
23
24   internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Scrollable obj) {
25     return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
26   }
27
28   public override void Dispose() {
29     if (!Window.IsInstalled()) {
30       DisposeQueue.Instance.Add(this);
31       return;
32     }
33
34     lock(this) {
35       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
36         if (swigCMemOwn) {
37           swigCMemOwn = false;
38           NDalicPINVOKE.delete_Scrollable(swigCPtr);
39         }
40         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
41       }
42       global::System.GC.SuppressFinalize(this);
43       base.Dispose();
44     }
45   }
46
47
48
49 public class StartedEventArgs : EventArgs
50 {
51    private Vector2 _vector2;
52
53    public Vector2 Vector2
54    {
55       get
56       {
57          return _vector2;
58       }
59       set
60       {
61          _vector2 = value;
62       }
63    }
64 }
65
66 public class UpdatedEventArgs : EventArgs
67 {
68    private Vector2 _vector2;
69
70    public Vector2 Vector2
71    {
72       get
73       {
74          return _vector2;
75       }
76       set
77       {
78          _vector2 = value;
79       }
80    }
81 }
82
83 public class CompletedEventArgs : EventArgs
84 {
85    private Vector2 _vector2;
86
87    public Vector2 Vector2
88    {
89       get
90       {
91          return _vector2;
92       }
93       set
94       {
95          _vector2 = value;
96       }
97    }
98 }
99
100   [UnmanagedFunctionPointer(CallingConvention.StdCall)]
101   private delegate void StartedCallbackDelegate(IntPtr vector2);
102   private DaliEventHandler<object,StartedEventArgs> _scrollableStartedEventHandler;
103   private StartedCallbackDelegate _scrollableStartedCallbackDelegate;
104
105   [UnmanagedFunctionPointer(CallingConvention.StdCall)]
106   private delegate void UpdatedCallbackDelegate(IntPtr vector2);
107   private DaliEventHandler<object,UpdatedEventArgs> _scrollableUpdatedEventHandler;
108   private UpdatedCallbackDelegate _scrollableUpdatedCallbackDelegate;
109
110   [UnmanagedFunctionPointer(CallingConvention.StdCall)]
111   private delegate void CompletedCallbackDelegate(IntPtr vector2);
112   private DaliEventHandler<object,CompletedEventArgs> _scrollableCompletedEventHandler;
113   private CompletedCallbackDelegate _scrollableCompletedCallbackDelegate;
114
115   public event DaliEventHandler<object,StartedEventArgs> ScrollStarted
116   {
117      add
118      {
119         lock(this)
120         {
121            // Restricted to only one listener
122            if (_scrollableStartedEventHandler == null)
123            {
124               _scrollableStartedEventHandler += value;
125
126               _scrollableStartedCallbackDelegate = new StartedCallbackDelegate(OnStarted);
127               this.ScrollStartedSignal().Connect(_scrollableStartedCallbackDelegate);
128            }
129         }
130      }
131
132      remove
133      {
134         lock(this)
135         {
136            if (_scrollableStartedEventHandler != null)
137            {
138               this.ScrollStartedSignal().Disconnect(_scrollableStartedCallbackDelegate);
139            }
140
141            _scrollableStartedEventHandler -= value;
142         }
143      }
144   }
145
146  private void OnStarted(IntPtr vector2)
147   {
148    StartedEventArgs e = new StartedEventArgs();
149
150    // Populate all members of "e" (StartedEventArgs) with real data
151    e.Vector2 = Tizen.NUI.Vector2.GetVector2FromPtr(vector2);
152
153    if (_scrollableStartedEventHandler != null)
154    {
155       //here we send all data to user event handlers
156       _scrollableStartedEventHandler(this, e);
157    }
158
159   }
160
161   public event DaliEventHandler<object,UpdatedEventArgs> ScrollUpdated
162   {
163      add
164      {
165         lock(this)
166         {
167            // Restricted to only one listener
168            if (_scrollableUpdatedEventHandler == null)
169            {
170               _scrollableUpdatedEventHandler += value;
171
172               _scrollableUpdatedCallbackDelegate = new UpdatedCallbackDelegate(OnUpdated);
173               this.ScrollUpdatedSignal().Connect(_scrollableUpdatedCallbackDelegate);
174            }
175         }
176      }
177
178      remove
179      {
180         lock(this)
181         {
182            if (_scrollableUpdatedEventHandler != null)
183            {
184               this.ScrollUpdatedSignal().Disconnect(_scrollableUpdatedCallbackDelegate);
185            }
186
187            _scrollableUpdatedEventHandler -= value;
188         }
189      }
190   }
191
192  private void OnUpdated(IntPtr vector2)
193   {
194    UpdatedEventArgs e = new UpdatedEventArgs();
195
196    // Populate all members of "e" (UpdatedEventArgs) with real data
197    e.Vector2 = Tizen.NUI.Vector2.GetVector2FromPtr(vector2);
198
199    if (_scrollableUpdatedEventHandler != null)
200    {
201       //here we send all data to user event handlers
202       _scrollableUpdatedEventHandler(this, e);
203    }
204
205   }
206
207   public event DaliEventHandler<object,CompletedEventArgs> ScrollCompleted
208   {
209      add
210      {
211         lock(this)
212         {
213            // Restricted to only one listener
214            if (_scrollableCompletedEventHandler == null)
215            {
216               _scrollableCompletedEventHandler += value;
217
218               _scrollableCompletedCallbackDelegate = new CompletedCallbackDelegate(OnCompleted);
219               this.ScrollCompletedSignal().Connect(_scrollableCompletedCallbackDelegate);
220            }
221         }
222      }
223
224      remove
225      {
226         lock(this)
227         {
228            if (_scrollableCompletedEventHandler != null)
229            {
230               this.ScrollCompletedSignal().Disconnect(_scrollableCompletedCallbackDelegate);
231            }
232
233            _scrollableCompletedEventHandler -= value;
234         }
235      }
236   }
237
238  private void OnCompleted(IntPtr vector2)
239   {
240    CompletedEventArgs e = new CompletedEventArgs();
241
242    // Populate all members of "e" (CompletedEventArgs) with real data
243    e.Vector2 = Tizen.NUI.Vector2.GetVector2FromPtr(vector2);
244
245    if (_scrollableCompletedEventHandler != null)
246    {
247       //here we send all data to user event handlers
248       _scrollableCompletedEventHandler(this, e);
249    }
250
251   }
252
253
254   public class Property : global::System.IDisposable {
255     private global::System.Runtime.InteropServices.HandleRef swigCPtr;
256     protected bool swigCMemOwn;
257   
258     internal Property(global::System.IntPtr cPtr, bool cMemoryOwn) {
259       swigCMemOwn = cMemoryOwn;
260       swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
261     }
262   
263     internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Property obj) {
264       return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
265     }
266   
267     ~Property() {
268       Dispose();
269     }
270   
271     public virtual void Dispose() {
272       lock(this) {
273         if (swigCPtr.Handle != global::System.IntPtr.Zero) {
274           if (swigCMemOwn) {
275             swigCMemOwn = false;
276             NDalicPINVOKE.delete_Scrollable_Property(swigCPtr);
277           }
278           swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
279         }
280         global::System.GC.SuppressFinalize(this);
281       }
282     }
283   
284     public Property() : this(NDalicPINVOKE.new_Scrollable_Property(), true) {
285       if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
286     }
287   
288     public static readonly int OVERSHOOT_EFFECT_COLOR = NDalicPINVOKE.Scrollable_Property_OVERSHOOT_EFFECT_COLOR_get();
289     public static readonly int OVERSHOOT_ANIMATION_SPEED = NDalicPINVOKE.Scrollable_Property_OVERSHOOT_ANIMATION_SPEED_get();
290     public static readonly int OVERSHOOT_ENABLED = NDalicPINVOKE.Scrollable_Property_OVERSHOOT_ENABLED_get();
291     public static readonly int OVERSHOOT_SIZE = NDalicPINVOKE.Scrollable_Property_OVERSHOOT_SIZE_get();
292     public static readonly int SCROLL_TO_ALPHA_FUNCTION = NDalicPINVOKE.Scrollable_Property_SCROLL_TO_ALPHA_FUNCTION_get();
293     public static readonly int SCROLL_RELATIVE_POSITION = NDalicPINVOKE.Scrollable_Property_SCROLL_RELATIVE_POSITION_get();
294     public static readonly int SCROLL_POSITION_MIN = NDalicPINVOKE.Scrollable_Property_SCROLL_POSITION_MIN_get();
295     public static readonly int SCROLL_POSITION_MIN_X = NDalicPINVOKE.Scrollable_Property_SCROLL_POSITION_MIN_X_get();
296     public static readonly int SCROLL_POSITION_MIN_Y = NDalicPINVOKE.Scrollable_Property_SCROLL_POSITION_MIN_Y_get();
297     public static readonly int SCROLL_POSITION_MAX = NDalicPINVOKE.Scrollable_Property_SCROLL_POSITION_MAX_get();
298     public static readonly int SCROLL_POSITION_MAX_X = NDalicPINVOKE.Scrollable_Property_SCROLL_POSITION_MAX_X_get();
299     public static readonly int SCROLL_POSITION_MAX_Y = NDalicPINVOKE.Scrollable_Property_SCROLL_POSITION_MAX_Y_get();
300     public static readonly int CAN_SCROLL_VERTICAL = NDalicPINVOKE.Scrollable_Property_CAN_SCROLL_VERTICAL_get();
301     public static readonly int CAN_SCROLL_HORIZONTAL = NDalicPINVOKE.Scrollable_Property_CAN_SCROLL_HORIZONTAL_get();
302   
303   }
304
305   public Scrollable() : this(NDalicPINVOKE.new_Scrollable__SWIG_0(), true) {
306     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
307   }
308
309   public Scrollable(Scrollable handle) : this(NDalicPINVOKE.new_Scrollable__SWIG_1(Scrollable.getCPtr(handle)), true) {
310     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
311   }
312
313   public Scrollable Assign(Scrollable handle) {
314     Scrollable ret = new Scrollable(NDalicPINVOKE.Scrollable_Assign(swigCPtr, Scrollable.getCPtr(handle)), false);
315     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
316     return ret;
317   }
318
319   public new static Scrollable DownCast(BaseHandle handle) {
320     Scrollable ret = new Scrollable(NDalicPINVOKE.Scrollable_DownCast(BaseHandle.getCPtr(handle)), true);
321     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
322     return ret;
323   }
324
325   public bool IsOvershootEnabled() {
326     bool ret = NDalicPINVOKE.Scrollable_IsOvershootEnabled(swigCPtr);
327     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
328     return ret;
329   }
330
331   public void SetOvershootEnabled(bool enable) {
332     NDalicPINVOKE.Scrollable_SetOvershootEnabled(swigCPtr, enable);
333     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
334   }
335
336   public void SetOvershootEffectColor(Vector4 color) {
337     NDalicPINVOKE.Scrollable_SetOvershootEffectColor(swigCPtr, Vector4.getCPtr(color));
338     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
339   }
340
341   public Vector4 GetOvershootEffectColor() {
342     Vector4 ret = new Vector4(NDalicPINVOKE.Scrollable_GetOvershootEffectColor(swigCPtr), true);
343     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
344     return ret;
345   }
346
347   public void SetOvershootAnimationSpeed(float pixelsPerSecond) {
348     NDalicPINVOKE.Scrollable_SetOvershootAnimationSpeed(swigCPtr, pixelsPerSecond);
349     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
350   }
351
352   public float GetOvershootAnimationSpeed() {
353     float ret = NDalicPINVOKE.Scrollable_GetOvershootAnimationSpeed(swigCPtr);
354     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
355     return ret;
356   }
357
358   internal ScrollableSignal ScrollStartedSignal() {
359     ScrollableSignal ret = new ScrollableSignal(NDalicPINVOKE.Scrollable_ScrollStartedSignal(swigCPtr), false);
360     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
361     return ret;
362   }
363
364   internal ScrollableSignal ScrollUpdatedSignal() {
365     ScrollableSignal ret = new ScrollableSignal(NDalicPINVOKE.Scrollable_ScrollUpdatedSignal(swigCPtr), false);
366     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
367     return ret;
368   }
369
370   internal ScrollableSignal ScrollCompletedSignal() {
371     ScrollableSignal ret = new ScrollableSignal(NDalicPINVOKE.Scrollable_ScrollCompletedSignal(swigCPtr), false);
372     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
373     return ret;
374   }
375
376   public enum PropertyRange {
377     PROPERTY_START_INDEX = PropertyRanges.PROPERTY_REGISTRATION_START_INDEX,
378     PROPERTY_END_INDEX = View.PropertyRange.PROPERTY_START_INDEX+1000,
379     ANIMATABLE_PROPERTY_START_INDEX = PropertyRanges.ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX,
380     ANIMATABLE_PROPERTY_END_INDEX = PropertyRanges.ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX+1000
381   }
382
383   public Vector4 OvershootEffectColor
384   {
385     get
386     {
387       Vector4 temp = new Vector4(0.0f,0.0f,0.0f,0.0f);
388       GetProperty( Scrollable.Property.OVERSHOOT_EFFECT_COLOR).Get(  temp );
389       return temp;
390     }
391     set
392     {
393       SetProperty( Scrollable.Property.OVERSHOOT_EFFECT_COLOR, new Tizen.NUI.PropertyValue( value ) );
394     }
395   }
396   public float OvershootAnimationSpeed
397   {
398     get
399     {
400       float temp = 0.0f;
401       GetProperty( Scrollable.Property.OVERSHOOT_ANIMATION_SPEED).Get( ref temp );
402       return temp;
403     }
404     set
405     {
406       SetProperty( Scrollable.Property.OVERSHOOT_ANIMATION_SPEED, new Tizen.NUI.PropertyValue( value ) );
407     }
408   }
409   public bool OvershootEnabled
410   {
411     get
412     {
413       bool temp = false;
414       GetProperty( Scrollable.Property.OVERSHOOT_ENABLED).Get( ref temp );
415       return temp;
416     }
417     set
418     {
419       SetProperty( Scrollable.Property.OVERSHOOT_ENABLED, new Tizen.NUI.PropertyValue( value ) );
420     }
421   }
422   public Vector2 OvershootSize
423   {
424     get
425     {
426       Vector2 temp = new Vector2(0.0f,0.0f);
427       GetProperty( Scrollable.Property.OVERSHOOT_SIZE).Get(  temp );
428       return temp;
429     }
430     set
431     {
432       SetProperty( Scrollable.Property.OVERSHOOT_SIZE, new Tizen.NUI.PropertyValue( value ) );
433     }
434   }
435   public int ScrollToAlphaFunction
436   {
437     get
438     {
439       int temp = 0;
440       GetProperty( Scrollable.Property.SCROLL_TO_ALPHA_FUNCTION).Get( ref temp );
441       return temp;
442     }
443     set
444     {
445       SetProperty( Scrollable.Property.SCROLL_TO_ALPHA_FUNCTION, new Tizen.NUI.PropertyValue( value ) );
446     }
447   }
448   public Vector2 ScrollRelativePosition
449   {
450     get
451     {
452       Vector2 temp = new Vector2(0.0f,0.0f);
453       GetProperty( Scrollable.Property.SCROLL_RELATIVE_POSITION).Get(  temp );
454       return temp;
455     }
456     set
457     {
458       SetProperty( Scrollable.Property.SCROLL_RELATIVE_POSITION, new Tizen.NUI.PropertyValue( value ) );
459     }
460   }
461   public Vector2 ScrollPositionMin
462   {
463     get
464     {
465       Vector2 temp = new Vector2(0.0f,0.0f);
466       GetProperty( Scrollable.Property.SCROLL_POSITION_MIN).Get(  temp );
467       return temp;
468     }
469     set
470     {
471       SetProperty( Scrollable.Property.SCROLL_POSITION_MIN, new Tizen.NUI.PropertyValue( value ) );
472     }
473   }
474   public Vector2 ScrollPositionMax
475   {
476     get
477     {
478       Vector2 temp = new Vector2(0.0f,0.0f);
479       GetProperty( Scrollable.Property.SCROLL_POSITION_MAX).Get(  temp );
480       return temp;
481     }
482     set
483     {
484       SetProperty( Scrollable.Property.SCROLL_POSITION_MAX, new Tizen.NUI.PropertyValue( value ) );
485     }
486   }
487   public bool CanScrollVertical
488   {
489     get
490     {
491       bool temp = false;
492       GetProperty( Scrollable.Property.CAN_SCROLL_VERTICAL).Get( ref temp );
493       return temp;
494     }
495     set
496     {
497       SetProperty( Scrollable.Property.CAN_SCROLL_VERTICAL, new Tizen.NUI.PropertyValue( value ) );
498     }
499   }
500   public bool CanScrollHorizontal
501   {
502     get
503     {
504       bool temp = false;
505       GetProperty( Scrollable.Property.CAN_SCROLL_HORIZONTAL).Get( ref temp );
506       return temp;
507     }
508     set
509     {
510       SetProperty( Scrollable.Property.CAN_SCROLL_HORIZONTAL, new Tizen.NUI.PropertyValue( value ) );
511     }
512   }
513
514 }
515
516 }