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
198 // Restricted to only one listener
199 if (_pageTurnViewPagePanStartedEventHandler == null)
201 _pageTurnViewPagePanStartedEventHandler += value;
203 _pageTurnViewPagePanStartedCallbackDelegate = new PagePanStartedCallbackDelegate(OnPagePanStarted);
204 this.PagePanStartedSignal().Connect(_pageTurnViewPagePanStartedCallbackDelegate);
210 if (_pageTurnViewPagePanStartedEventHandler != null)
212 this.PagePanStartedSignal().Disconnect(_pageTurnViewPagePanStartedCallbackDelegate);
215 _pageTurnViewPagePanStartedEventHandler -= value;
219 // Callback for PageTurnView PagePanStarted signal
220 private void OnPagePanStarted(IntPtr page)
222 PagePanStartedEventArgs e = new PagePanStartedEventArgs();
224 // Populate all members of "e" (PagePanStartedEventArgs) with real page
225 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
227 if (_pageTurnViewPagePanStartedEventHandler != null)
229 //here we send all page to user event handlers
230 _pageTurnViewPagePanStartedEventHandler(this, e);
234 public event DaliEventHandler<object, PagePanFinishedEventArgs> PagePanFinished
238 // Restricted to only one listener
239 if (_pageTurnViewPagePanFinishedEventHandler == null)
241 _pageTurnViewPagePanFinishedEventHandler += value;
243 _pageTurnViewPagePanFinishedCallbackDelegate = new PagePanFinishedCallbackDelegate(OnPagePanFinished);
244 this.PagePanFinishedSignal().Connect(_pageTurnViewPagePanFinishedCallbackDelegate);
250 if (_pageTurnViewPagePanFinishedEventHandler != null)
252 this.PagePanFinishedSignal().Disconnect(_pageTurnViewPagePanFinishedCallbackDelegate);
255 _pageTurnViewPagePanFinishedEventHandler -= value;
259 // Callback for PageTurnView PagePanFinished signal
260 private void OnPagePanFinished(IntPtr page)
262 PagePanFinishedEventArgs e = new PagePanFinishedEventArgs();
264 // Populate all members of "e" (PagePanFinishedEventArgs) with real page
265 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
267 if (_pageTurnViewPagePanFinishedEventHandler != null)
269 //here we send all page to user event handlers
270 _pageTurnViewPagePanFinishedEventHandler(this, e);
275 public event DaliEventHandler<object, PageTurnStartedEventArgs> PageTurnStarted
279 // Restricted to only one listener
280 if (_pageTurnViewPageTurnStartedEventHandler == null)
282 _pageTurnViewPageTurnStartedEventHandler += value;
284 _pageTurnViewPageTurnStartedCallbackDelegate = new PageTurnStartedCallbackDelegate(OnPageTurnStarted);
285 this.PageTurnStartedSignal().Connect(_pageTurnViewPageTurnStartedCallbackDelegate);
291 if (_pageTurnViewPageTurnStartedEventHandler != null)
293 this.PageTurnStartedSignal().Disconnect(_pageTurnViewPageTurnStartedCallbackDelegate);
296 _pageTurnViewPageTurnStartedEventHandler -= value;
300 // Callback for PageTurnView PageTurnStarted signal
301 private void OnPageTurnStarted(IntPtr page, uint pageIndex, bool isTurningForward)
303 PageTurnStartedEventArgs e = new PageTurnStartedEventArgs();
305 // Populate all members of "e" (PageTurnStartedEventArgs) with real page
306 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
307 e.PageIndex = pageIndex;
308 e.IsTurningForward = isTurningForward;
311 if (_pageTurnViewPageTurnStartedEventHandler != null)
313 //here we send all page to user event handlers
314 _pageTurnViewPageTurnStartedEventHandler(this, e);
319 public event DaliEventHandler<object, PageTurnFinishedEventArgs> PageTurnFinished
323 // Restricted to only one listener
324 if (_pageTurnViewPageTurnFinishedEventHandler == null)
326 _pageTurnViewPageTurnFinishedEventHandler += value;
328 _pageTurnViewPageTurnFinishedCallbackDelegate = new PageTurnFinishedCallbackDelegate(OnPageTurnFinished);
329 this.PageTurnFinishedSignal().Connect(_pageTurnViewPageTurnFinishedCallbackDelegate);
335 if (_pageTurnViewPageTurnFinishedEventHandler != null)
337 this.PageTurnFinishedSignal().Disconnect(_pageTurnViewPageTurnFinishedCallbackDelegate);
340 _pageTurnViewPageTurnFinishedEventHandler -= value;
344 // Callback for PageTurnView PageTurnFinished signal
345 private void OnPageTurnFinished(IntPtr page, uint pageIndex, bool isTurningForward)
347 PageTurnFinishedEventArgs e = new PageTurnFinishedEventArgs();
349 // Populate all members of "e" (PageTurnFinishedEventArgs) with real page
350 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
351 e.PageIndex = pageIndex;
352 e.IsTurningForward = isTurningForward;
355 if (_pageTurnViewPageTurnFinishedEventHandler != null)
357 //here we send all page to user event handlers
358 _pageTurnViewPageTurnFinishedEventHandler(this, e);
362 public static PageTurnView GetPageTurnViewFromPtr(global::System.IntPtr cPtr)
364 PageTurnView ret = new PageTurnView(cPtr, false);
365 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
369 internal new class Property
371 internal static readonly int ViewPageSize = Interop.PageTurnView.ViewPageSizeGet();
372 internal static readonly int CurrentPageId = Interop.PageTurnView.CurrentPageIdGet();
373 internal static readonly int SpineShadow = Interop.PageTurnView.SpineShadowGet();
376 public PageTurnView() : this(Interop.PageTurnView.NewPageTurnView(), true)
378 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
381 public PageTurnView(PageTurnView handle) : this(Interop.PageTurnView.NewPageTurnView(PageTurnView.getCPtr(handle)), true)
383 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
386 public PageTurnView Assign(PageTurnView handle)
388 PageTurnView ret = new PageTurnView(Interop.PageTurnView.Assign(SwigCPtr, PageTurnView.getCPtr(handle)), false);
389 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
393 public static PageTurnView DownCast(BaseHandle handle)
395 PageTurnView ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as PageTurnView;
396 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
400 public PageTurnSignal PageTurnStartedSignal()
402 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnStartedSignal(SwigCPtr), false);
403 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
407 public PageTurnSignal PageTurnFinishedSignal()
409 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnFinishedSignal(SwigCPtr), false);
410 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
414 public PagePanSignal PagePanStartedSignal()
416 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PagePanStartedSignal(SwigCPtr), false);
417 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
421 public PagePanSignal PagePanFinishedSignal()
423 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PagePanFinishedSignal(SwigCPtr), false);
424 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
429 public Vector2 PageSize
433 Vector2 temp = new Vector2(0.0f, 0.0f);
434 GetProperty(PageTurnView.Property.ViewPageSize).Get(temp);
439 SetProperty(PageTurnView.Property.ViewPageSize, new Tizen.NUI.PropertyValue(value));
442 public int CurrentPageId
447 GetProperty(PageTurnView.Property.CurrentPageId).Get(out temp);
452 SetProperty(PageTurnView.Property.CurrentPageId, new Tizen.NUI.PropertyValue(value));
455 public Vector2 SpineShadow
459 Vector2 temp = new Vector2(0.0f, 0.0f);
460 GetProperty(PageTurnView.Property.SpineShadow).Get(temp);
465 SetProperty(PageTurnView.Property.SpineShadow, new Tizen.NUI.PropertyValue(value));