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.Runtime.InteropServices;
19 using Tizen.NUI.BaseComponents;
23 internal class PageTurnView : View
25 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
27 internal PageTurnView(global::System.IntPtr cPtr, bool cMemoryOwn) : base(Interop.PageTurnView.PageTurnView_SWIGUpcast(cPtr), cMemoryOwn)
29 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
32 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PageTurnView obj)
34 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
37 protected override void Dispose(DisposeTypes type)
44 //Release your own unmanaged resources here.
45 //You should not access any managed member here except static instance.
46 //because the execution order of Finalizes is non-deterministic.
48 if (swigCPtr.Handle != global::System.IntPtr.Zero)
53 Interop.PageTurnView.delete_PageTurnView(swigCPtr);
55 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
61 /// <since_tizen> 3 </since_tizen>
62 public class PagePanStartedEventArgs : EventArgs
64 private PageTurnView _pageTurnView;
66 /// <since_tizen> 3 </since_tizen>
67 public PageTurnView PageTurnView
75 _pageTurnView = value;
80 /// <since_tizen> 3 </since_tizen>
81 public class PagePanFinishedEventArgs : EventArgs
83 private PageTurnView _pageTurnView;
85 /// <since_tizen> 3 </since_tizen>
86 public PageTurnView PageTurnView
94 _pageTurnView = value;
99 /// <since_tizen> 3 </since_tizen>
100 public class PageTurnStartedEventArgs : EventArgs
102 private PageTurnView _pageTurnView;
103 private uint _pageIndex;
104 private bool _isTurningForward;
106 /// <since_tizen> 3 </since_tizen>
107 public PageTurnView PageTurnView
111 return _pageTurnView;
115 _pageTurnView = value;
119 /// <since_tizen> 3 </since_tizen>
120 public uint PageIndex
132 /// <since_tizen> 3 </since_tizen>
133 public bool IsTurningForward
137 return _isTurningForward;
141 _isTurningForward = value;
147 /// <since_tizen> 3 </since_tizen>
148 public class PageTurnFinishedEventArgs : EventArgs
150 private PageTurnView _pageTurnView;
151 private uint _pageIndex;
152 private bool _isTurningForward;
154 /// <since_tizen> 3 </since_tizen>
155 public PageTurnView PageTurnView
159 return _pageTurnView;
163 _pageTurnView = value;
167 /// <since_tizen> 3 </since_tizen>
168 public uint PageIndex
180 /// <since_tizen> 3 </since_tizen>
181 public bool IsTurningForward
185 return _isTurningForward;
189 _isTurningForward = value;
195 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
196 private delegate void PagePanStartedCallbackDelegate(IntPtr page);
197 private DaliEventHandler<object, PagePanStartedEventArgs> _pageTurnViewPagePanStartedEventHandler;
198 private PagePanStartedCallbackDelegate _pageTurnViewPagePanStartedCallbackDelegate;
200 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
201 private delegate void PagePanFinishedCallbackDelegate(IntPtr page);
202 private DaliEventHandler<object, PagePanFinishedEventArgs> _pageTurnViewPagePanFinishedEventHandler;
203 private PagePanFinishedCallbackDelegate _pageTurnViewPagePanFinishedCallbackDelegate;
205 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
206 private delegate void PageTurnStartedCallbackDelegate(IntPtr page, uint pageIndex, bool isTurningForward);
207 private DaliEventHandler<object, PageTurnStartedEventArgs> _pageTurnViewPageTurnStartedEventHandler;
208 private PageTurnStartedCallbackDelegate _pageTurnViewPageTurnStartedCallbackDelegate;
210 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
211 private delegate void PageTurnFinishedCallbackDelegate(IntPtr page, uint pageIndex, bool isTurningForward);
212 private DaliEventHandler<object, PageTurnFinishedEventArgs> _pageTurnViewPageTurnFinishedEventHandler;
213 private PageTurnFinishedCallbackDelegate _pageTurnViewPageTurnFinishedCallbackDelegate;
215 public event DaliEventHandler<object, PagePanStartedEventArgs> PagePanStarted
221 // Restricted to only one listener
222 if (_pageTurnViewPagePanStartedEventHandler == null)
224 _pageTurnViewPagePanStartedEventHandler += value;
226 _pageTurnViewPagePanStartedCallbackDelegate = new PagePanStartedCallbackDelegate(OnPagePanStarted);
227 this.PagePanStartedSignal().Connect(_pageTurnViewPagePanStartedCallbackDelegate);
236 if (_pageTurnViewPagePanStartedEventHandler != null)
238 this.PagePanStartedSignal().Disconnect(_pageTurnViewPagePanStartedCallbackDelegate);
241 _pageTurnViewPagePanStartedEventHandler -= value;
246 // Callback for PageTurnView PagePanStarted signal
247 private void OnPagePanStarted(IntPtr page)
249 PagePanStartedEventArgs e = new PagePanStartedEventArgs();
251 // Populate all members of "e" (PagePanStartedEventArgs) with real page
252 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
254 if (_pageTurnViewPagePanStartedEventHandler != null)
256 //here we send all page to user event handlers
257 _pageTurnViewPagePanStartedEventHandler(this, e);
261 public event DaliEventHandler<object, PagePanFinishedEventArgs> PagePanFinished
267 // Restricted to only one listener
268 if (_pageTurnViewPagePanFinishedEventHandler == null)
270 _pageTurnViewPagePanFinishedEventHandler += value;
272 _pageTurnViewPagePanFinishedCallbackDelegate = new PagePanFinishedCallbackDelegate(OnPagePanFinished);
273 this.PagePanFinishedSignal().Connect(_pageTurnViewPagePanFinishedCallbackDelegate);
282 if (_pageTurnViewPagePanFinishedEventHandler != null)
284 this.PagePanFinishedSignal().Disconnect(_pageTurnViewPagePanFinishedCallbackDelegate);
287 _pageTurnViewPagePanFinishedEventHandler -= value;
292 // Callback for PageTurnView PagePanFinished signal
293 private void OnPagePanFinished(IntPtr page)
295 PagePanFinishedEventArgs e = new PagePanFinishedEventArgs();
297 // Populate all members of "e" (PagePanFinishedEventArgs) with real page
298 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
300 if (_pageTurnViewPagePanFinishedEventHandler != null)
302 //here we send all page to user event handlers
303 _pageTurnViewPagePanFinishedEventHandler(this, e);
308 public event DaliEventHandler<object, PageTurnStartedEventArgs> PageTurnStarted
314 // Restricted to only one listener
315 if (_pageTurnViewPageTurnStartedEventHandler == null)
317 _pageTurnViewPageTurnStartedEventHandler += value;
319 _pageTurnViewPageTurnStartedCallbackDelegate = new PageTurnStartedCallbackDelegate(OnPageTurnStarted);
320 this.PageTurnStartedSignal().Connect(_pageTurnViewPageTurnStartedCallbackDelegate);
329 if (_pageTurnViewPageTurnStartedEventHandler != null)
331 this.PageTurnStartedSignal().Disconnect(_pageTurnViewPageTurnStartedCallbackDelegate);
334 _pageTurnViewPageTurnStartedEventHandler -= value;
339 // Callback for PageTurnView PageTurnStarted signal
340 private void OnPageTurnStarted(IntPtr page, uint pageIndex, bool isTurningForward)
342 PageTurnStartedEventArgs e = new PageTurnStartedEventArgs();
344 // Populate all members of "e" (PageTurnStartedEventArgs) with real page
345 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
346 e.PageIndex = pageIndex;
347 e.IsTurningForward = isTurningForward;
350 if (_pageTurnViewPageTurnStartedEventHandler != null)
352 //here we send all page to user event handlers
353 _pageTurnViewPageTurnStartedEventHandler(this, e);
358 public event DaliEventHandler<object, PageTurnFinishedEventArgs> PageTurnFinished
364 // Restricted to only one listener
365 if (_pageTurnViewPageTurnFinishedEventHandler == null)
367 _pageTurnViewPageTurnFinishedEventHandler += value;
369 _pageTurnViewPageTurnFinishedCallbackDelegate = new PageTurnFinishedCallbackDelegate(OnPageTurnFinished);
370 this.PageTurnFinishedSignal().Connect(_pageTurnViewPageTurnFinishedCallbackDelegate);
379 if (_pageTurnViewPageTurnFinishedEventHandler != null)
381 this.PageTurnFinishedSignal().Disconnect(_pageTurnViewPageTurnFinishedCallbackDelegate);
384 _pageTurnViewPageTurnFinishedEventHandler -= value;
389 // Callback for PageTurnView PageTurnFinished signal
390 private void OnPageTurnFinished(IntPtr page, uint pageIndex, bool isTurningForward)
392 PageTurnFinishedEventArgs e = new PageTurnFinishedEventArgs();
394 // Populate all members of "e" (PageTurnFinishedEventArgs) with real page
395 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
396 e.PageIndex = pageIndex;
397 e.IsTurningForward = isTurningForward;
400 if (_pageTurnViewPageTurnFinishedEventHandler != null)
402 //here we send all page to user event handlers
403 _pageTurnViewPageTurnFinishedEventHandler(this, e);
407 public static PageTurnView GetPageTurnViewFromPtr(global::System.IntPtr cPtr)
409 PageTurnView ret = new PageTurnView(cPtr, false);
410 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
414 internal new class Property
416 internal static readonly int VIEW_PAGE_SIZE = Interop.PageTurnView.PageTurnView_Property_VIEW_PAGE_SIZE_get();
417 internal static readonly int CURRENT_PAGE_ID = Interop.PageTurnView.PageTurnView_Property_CURRENT_PAGE_ID_get();
418 internal static readonly int SPINE_SHADOW = Interop.PageTurnView.PageTurnView_Property_SPINE_SHADOW_get();
421 public PageTurnView() : this(Interop.PageTurnView.new_PageTurnView__SWIG_0(), true)
423 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
426 public PageTurnView(PageTurnView handle) : this(Interop.PageTurnView.new_PageTurnView__SWIG_1(PageTurnView.getCPtr(handle)), true)
428 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
431 public PageTurnView Assign(PageTurnView handle)
433 PageTurnView ret = new PageTurnView(Interop.PageTurnView.PageTurnView_Assign(swigCPtr, PageTurnView.getCPtr(handle)), false);
434 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
438 public static PageTurnView DownCast(BaseHandle handle)
440 PageTurnView ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as PageTurnView;
441 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
445 public PageTurnSignal PageTurnStartedSignal()
447 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnView_PageTurnStartedSignal(swigCPtr), false);
448 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
452 public PageTurnSignal PageTurnFinishedSignal()
454 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnView_PageTurnFinishedSignal(swigCPtr), false);
455 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
459 public PagePanSignal PagePanStartedSignal()
461 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PageTurnView_PagePanStartedSignal(swigCPtr), false);
462 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
466 public PagePanSignal PagePanFinishedSignal()
468 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PageTurnView_PagePanFinishedSignal(swigCPtr), false);
469 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
474 public Vector2 PageSize
478 Vector2 temp = new Vector2(0.0f, 0.0f);
479 GetProperty(PageTurnView.Property.VIEW_PAGE_SIZE).Get(temp);
484 SetProperty(PageTurnView.Property.VIEW_PAGE_SIZE, new Tizen.NUI.PropertyValue(value));
487 public int CurrentPageId
492 GetProperty(PageTurnView.Property.CURRENT_PAGE_ID).Get(out temp);
497 SetProperty(PageTurnView.Property.CURRENT_PAGE_ID, new Tizen.NUI.PropertyValue(value));
500 public Vector2 SpineShadow
504 Vector2 temp = new Vector2(0.0f, 0.0f);
505 GetProperty(PageTurnView.Property.SPINE_SHADOW).Get(temp);
510 SetProperty(PageTurnView.Property.SPINE_SHADOW, new Tizen.NUI.PropertyValue(value));