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
26 internal PageTurnView(global::System.IntPtr cPtr, bool cMemoryOwn) : base(Interop.PageTurnView.Upcast(cPtr), cMemoryOwn)
30 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PageTurnView obj)
32 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
35 protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr)
37 Interop.PageTurnView.DeletePageTurnView(swigCPtr);
40 /// <since_tizen> 3 </since_tizen>
41 public class PagePanStartedEventArgs : EventArgs
43 private PageTurnView _pageTurnView;
45 /// <since_tizen> 3 </since_tizen>
46 public PageTurnView PageTurnView
54 _pageTurnView = value;
59 /// <since_tizen> 3 </since_tizen>
60 public class PagePanFinishedEventArgs : EventArgs
62 private PageTurnView _pageTurnView;
64 /// <since_tizen> 3 </since_tizen>
65 public PageTurnView PageTurnView
73 _pageTurnView = value;
78 /// <since_tizen> 3 </since_tizen>
79 public class PageTurnStartedEventArgs : EventArgs
81 private PageTurnView _pageTurnView;
82 private uint _pageIndex;
83 private bool _isTurningForward;
85 /// <since_tizen> 3 </since_tizen>
86 public PageTurnView PageTurnView
94 _pageTurnView = value;
98 /// <since_tizen> 3 </since_tizen>
111 /// <since_tizen> 3 </since_tizen>
112 public bool IsTurningForward
116 return _isTurningForward;
120 _isTurningForward = value;
126 /// <since_tizen> 3 </since_tizen>
127 public class PageTurnFinishedEventArgs : EventArgs
129 private PageTurnView _pageTurnView;
130 private uint _pageIndex;
131 private bool _isTurningForward;
133 /// <since_tizen> 3 </since_tizen>
134 public PageTurnView PageTurnView
138 return _pageTurnView;
142 _pageTurnView = value;
146 /// <since_tizen> 3 </since_tizen>
147 public uint PageIndex
159 /// <since_tizen> 3 </since_tizen>
160 public bool IsTurningForward
164 return _isTurningForward;
168 _isTurningForward = value;
174 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
175 private delegate void PagePanStartedCallbackDelegate(IntPtr page);
176 private DaliEventHandler<object, PagePanStartedEventArgs> _pageTurnViewPagePanStartedEventHandler;
177 private PagePanStartedCallbackDelegate _pageTurnViewPagePanStartedCallbackDelegate;
179 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
180 private delegate void PagePanFinishedCallbackDelegate(IntPtr page);
181 private DaliEventHandler<object, PagePanFinishedEventArgs> _pageTurnViewPagePanFinishedEventHandler;
182 private PagePanFinishedCallbackDelegate _pageTurnViewPagePanFinishedCallbackDelegate;
184 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
185 private delegate void PageTurnStartedCallbackDelegate(IntPtr page, uint pageIndex, bool isTurningForward);
186 private DaliEventHandler<object, PageTurnStartedEventArgs> _pageTurnViewPageTurnStartedEventHandler;
187 private PageTurnStartedCallbackDelegate _pageTurnViewPageTurnStartedCallbackDelegate;
189 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
190 private delegate void PageTurnFinishedCallbackDelegate(IntPtr page, uint pageIndex, bool isTurningForward);
191 private DaliEventHandler<object, PageTurnFinishedEventArgs> _pageTurnViewPageTurnFinishedEventHandler;
192 private PageTurnFinishedCallbackDelegate _pageTurnViewPageTurnFinishedCallbackDelegate;
194 public event DaliEventHandler<object, PagePanStartedEventArgs> PagePanStarted
200 // Restricted to only one listener
201 if (_pageTurnViewPagePanStartedEventHandler == null)
203 _pageTurnViewPagePanStartedEventHandler += value;
205 _pageTurnViewPagePanStartedCallbackDelegate = new PagePanStartedCallbackDelegate(OnPagePanStarted);
206 this.PagePanStartedSignal().Connect(_pageTurnViewPagePanStartedCallbackDelegate);
215 if (_pageTurnViewPagePanStartedEventHandler != null)
217 this.PagePanStartedSignal().Disconnect(_pageTurnViewPagePanStartedCallbackDelegate);
220 _pageTurnViewPagePanStartedEventHandler -= value;
225 // Callback for PageTurnView PagePanStarted signal
226 private void OnPagePanStarted(IntPtr page)
228 PagePanStartedEventArgs e = new PagePanStartedEventArgs();
230 // Populate all members of "e" (PagePanStartedEventArgs) with real page
231 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
233 if (_pageTurnViewPagePanStartedEventHandler != null)
235 //here we send all page to user event handlers
236 _pageTurnViewPagePanStartedEventHandler(this, e);
240 public event DaliEventHandler<object, PagePanFinishedEventArgs> PagePanFinished
246 // Restricted to only one listener
247 if (_pageTurnViewPagePanFinishedEventHandler == null)
249 _pageTurnViewPagePanFinishedEventHandler += value;
251 _pageTurnViewPagePanFinishedCallbackDelegate = new PagePanFinishedCallbackDelegate(OnPagePanFinished);
252 this.PagePanFinishedSignal().Connect(_pageTurnViewPagePanFinishedCallbackDelegate);
261 if (_pageTurnViewPagePanFinishedEventHandler != null)
263 this.PagePanFinishedSignal().Disconnect(_pageTurnViewPagePanFinishedCallbackDelegate);
266 _pageTurnViewPagePanFinishedEventHandler -= value;
271 // Callback for PageTurnView PagePanFinished signal
272 private void OnPagePanFinished(IntPtr page)
274 PagePanFinishedEventArgs e = new PagePanFinishedEventArgs();
276 // Populate all members of "e" (PagePanFinishedEventArgs) with real page
277 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
279 if (_pageTurnViewPagePanFinishedEventHandler != null)
281 //here we send all page to user event handlers
282 _pageTurnViewPagePanFinishedEventHandler(this, e);
287 public event DaliEventHandler<object, PageTurnStartedEventArgs> PageTurnStarted
293 // Restricted to only one listener
294 if (_pageTurnViewPageTurnStartedEventHandler == null)
296 _pageTurnViewPageTurnStartedEventHandler += value;
298 _pageTurnViewPageTurnStartedCallbackDelegate = new PageTurnStartedCallbackDelegate(OnPageTurnStarted);
299 this.PageTurnStartedSignal().Connect(_pageTurnViewPageTurnStartedCallbackDelegate);
308 if (_pageTurnViewPageTurnStartedEventHandler != null)
310 this.PageTurnStartedSignal().Disconnect(_pageTurnViewPageTurnStartedCallbackDelegate);
313 _pageTurnViewPageTurnStartedEventHandler -= value;
318 // Callback for PageTurnView PageTurnStarted signal
319 private void OnPageTurnStarted(IntPtr page, uint pageIndex, bool isTurningForward)
321 PageTurnStartedEventArgs e = new PageTurnStartedEventArgs();
323 // Populate all members of "e" (PageTurnStartedEventArgs) with real page
324 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
325 e.PageIndex = pageIndex;
326 e.IsTurningForward = isTurningForward;
329 if (_pageTurnViewPageTurnStartedEventHandler != null)
331 //here we send all page to user event handlers
332 _pageTurnViewPageTurnStartedEventHandler(this, e);
337 public event DaliEventHandler<object, PageTurnFinishedEventArgs> PageTurnFinished
343 // Restricted to only one listener
344 if (_pageTurnViewPageTurnFinishedEventHandler == null)
346 _pageTurnViewPageTurnFinishedEventHandler += value;
348 _pageTurnViewPageTurnFinishedCallbackDelegate = new PageTurnFinishedCallbackDelegate(OnPageTurnFinished);
349 this.PageTurnFinishedSignal().Connect(_pageTurnViewPageTurnFinishedCallbackDelegate);
358 if (_pageTurnViewPageTurnFinishedEventHandler != null)
360 this.PageTurnFinishedSignal().Disconnect(_pageTurnViewPageTurnFinishedCallbackDelegate);
363 _pageTurnViewPageTurnFinishedEventHandler -= value;
368 // Callback for PageTurnView PageTurnFinished signal
369 private void OnPageTurnFinished(IntPtr page, uint pageIndex, bool isTurningForward)
371 PageTurnFinishedEventArgs e = new PageTurnFinishedEventArgs();
373 // Populate all members of "e" (PageTurnFinishedEventArgs) with real page
374 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
375 e.PageIndex = pageIndex;
376 e.IsTurningForward = isTurningForward;
379 if (_pageTurnViewPageTurnFinishedEventHandler != null)
381 //here we send all page to user event handlers
382 _pageTurnViewPageTurnFinishedEventHandler(this, e);
386 public static PageTurnView GetPageTurnViewFromPtr(global::System.IntPtr cPtr)
388 PageTurnView ret = new PageTurnView(cPtr, false);
389 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
393 internal new class Property
395 internal static readonly int ViewPageSize = Interop.PageTurnView.ViewPageSizeGet();
396 internal static readonly int CurrentPageId = Interop.PageTurnView.CurrentPageIdGet();
397 internal static readonly int SpineShadow = Interop.PageTurnView.SpineShadowGet();
400 public PageTurnView() : this(Interop.PageTurnView.NewPageTurnView(), true)
402 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
405 public PageTurnView(PageTurnView handle) : this(Interop.PageTurnView.NewPageTurnView(PageTurnView.getCPtr(handle)), true)
407 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
410 public PageTurnView Assign(PageTurnView handle)
412 PageTurnView ret = new PageTurnView(Interop.PageTurnView.Assign(swigCPtr, PageTurnView.getCPtr(handle)), false);
413 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
417 public static PageTurnView DownCast(BaseHandle handle)
419 PageTurnView ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as PageTurnView;
420 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
424 public PageTurnSignal PageTurnStartedSignal()
426 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnStartedSignal(swigCPtr), false);
427 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
431 public PageTurnSignal PageTurnFinishedSignal()
433 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnFinishedSignal(swigCPtr), false);
434 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
438 public PagePanSignal PagePanStartedSignal()
440 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PagePanStartedSignal(swigCPtr), false);
441 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
445 public PagePanSignal PagePanFinishedSignal()
447 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PagePanFinishedSignal(swigCPtr), false);
448 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
453 public Vector2 PageSize
457 Vector2 temp = new Vector2(0.0f, 0.0f);
458 GetProperty(PageTurnView.Property.ViewPageSize).Get(temp);
463 SetProperty(PageTurnView.Property.ViewPageSize, new Tizen.NUI.PropertyValue(value));
466 public int CurrentPageId
471 GetProperty(PageTurnView.Property.CurrentPageId).Get(out temp);
476 SetProperty(PageTurnView.Property.CurrentPageId, new Tizen.NUI.PropertyValue(value));
479 public Vector2 SpineShadow
483 Vector2 temp = new Vector2(0.0f, 0.0f);
484 GetProperty(PageTurnView.Property.SpineShadow).Get(temp);
489 SetProperty(PageTurnView.Property.SpineShadow, new Tizen.NUI.PropertyValue(value));