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(cPtr, cMemoryOwn)
30 protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr)
32 Interop.PageTurnView.DeletePageTurnView(swigCPtr);
35 public class PagePanStartedEventArgs : EventArgs
37 private PageTurnView pageTurnView;
39 public PageTurnView PageTurnView
52 public class PagePanFinishedEventArgs : EventArgs
54 private PageTurnView pageTurnView;
56 public PageTurnView PageTurnView
69 public class PageTurnStartedEventArgs : EventArgs
71 private PageTurnView pageTurnView;
72 private uint pageIndex;
73 private bool isTurningForward;
75 public PageTurnView PageTurnView
99 public bool IsTurningForward
103 return isTurningForward;
107 isTurningForward = value;
113 public class PageTurnFinishedEventArgs : EventArgs
115 private PageTurnView pageTurnView;
116 private uint pageIndex;
117 private bool isTurningForward;
119 public PageTurnView PageTurnView
127 pageTurnView = value;
131 public uint PageIndex
143 public bool IsTurningForward
147 return isTurningForward;
151 isTurningForward = value;
157 [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
158 private delegate void PagePanStartedCallbackDelegate(IntPtr page);
159 private DaliEventHandler<object, PagePanStartedEventArgs> pageTurnViewPagePanStartedEventHandler;
160 private PagePanStartedCallbackDelegate pageTurnViewPagePanStartedCallbackDelegate;
162 [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
163 private delegate void PagePanFinishedCallbackDelegate(IntPtr page);
164 private DaliEventHandler<object, PagePanFinishedEventArgs> pageTurnViewPagePanFinishedEventHandler;
165 private PagePanFinishedCallbackDelegate pageTurnViewPagePanFinishedCallbackDelegate;
167 [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
168 private delegate void PageTurnStartedCallbackDelegate(IntPtr page, uint pageIndex, bool isTurningForward);
169 private DaliEventHandler<object, PageTurnStartedEventArgs> pageTurnViewPageTurnStartedEventHandler;
170 private PageTurnStartedCallbackDelegate pageTurnViewPageTurnStartedCallbackDelegate;
172 [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
173 private delegate void PageTurnFinishedCallbackDelegate(IntPtr page, uint pageIndex, bool isTurningForward);
174 private DaliEventHandler<object, PageTurnFinishedEventArgs> pageTurnViewPageTurnFinishedEventHandler;
175 private PageTurnFinishedCallbackDelegate pageTurnViewPageTurnFinishedCallbackDelegate;
177 public event DaliEventHandler<object, PagePanStartedEventArgs> PagePanStarted
181 // Restricted to only one listener
182 if (pageTurnViewPagePanStartedEventHandler == null)
184 pageTurnViewPagePanStartedEventHandler += value;
186 pageTurnViewPagePanStartedCallbackDelegate = new PagePanStartedCallbackDelegate(OnPagePanStarted);
187 this.PagePanStartedSignal().Connect(pageTurnViewPagePanStartedCallbackDelegate);
193 if (pageTurnViewPagePanStartedEventHandler != null)
195 this.PagePanStartedSignal().Disconnect(pageTurnViewPagePanStartedCallbackDelegate);
198 pageTurnViewPagePanStartedEventHandler -= value;
202 // Callback for PageTurnView PagePanStarted signal
203 private void OnPagePanStarted(IntPtr page)
205 PagePanStartedEventArgs e = new PagePanStartedEventArgs();
207 // Populate all members of "e" (PagePanStartedEventArgs) with real page
208 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
210 if (pageTurnViewPagePanStartedEventHandler != null)
212 //here we send all page to user event handlers
213 pageTurnViewPagePanStartedEventHandler(this, e);
217 public event DaliEventHandler<object, PagePanFinishedEventArgs> PagePanFinished
221 // Restricted to only one listener
222 if (pageTurnViewPagePanFinishedEventHandler == null)
224 pageTurnViewPagePanFinishedEventHandler += value;
226 pageTurnViewPagePanFinishedCallbackDelegate = new PagePanFinishedCallbackDelegate(OnPagePanFinished);
227 this.PagePanFinishedSignal().Connect(pageTurnViewPagePanFinishedCallbackDelegate);
233 if (pageTurnViewPagePanFinishedEventHandler != null)
235 this.PagePanFinishedSignal().Disconnect(pageTurnViewPagePanFinishedCallbackDelegate);
238 pageTurnViewPagePanFinishedEventHandler -= value;
242 // Callback for PageTurnView PagePanFinished signal
243 private void OnPagePanFinished(IntPtr page)
245 PagePanFinishedEventArgs e = new PagePanFinishedEventArgs();
247 // Populate all members of "e" (PagePanFinishedEventArgs) with real page
248 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
250 if (pageTurnViewPagePanFinishedEventHandler != null)
252 //here we send all page to user event handlers
253 pageTurnViewPagePanFinishedEventHandler(this, e);
258 public event DaliEventHandler<object, PageTurnStartedEventArgs> PageTurnStarted
262 // Restricted to only one listener
263 if (pageTurnViewPageTurnStartedEventHandler == null)
265 pageTurnViewPageTurnStartedEventHandler += value;
267 pageTurnViewPageTurnStartedCallbackDelegate = new PageTurnStartedCallbackDelegate(OnPageTurnStarted);
268 this.PageTurnStartedSignal().Connect(pageTurnViewPageTurnStartedCallbackDelegate);
274 if (pageTurnViewPageTurnStartedEventHandler != null)
276 this.PageTurnStartedSignal().Disconnect(pageTurnViewPageTurnStartedCallbackDelegate);
279 pageTurnViewPageTurnStartedEventHandler -= value;
283 // Callback for PageTurnView PageTurnStarted signal
284 private void OnPageTurnStarted(IntPtr page, uint pageIndex, bool isTurningForward)
286 PageTurnStartedEventArgs e = new PageTurnStartedEventArgs();
288 // Populate all members of "e" (PageTurnStartedEventArgs) with real page
289 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
290 e.PageIndex = pageIndex;
291 e.IsTurningForward = isTurningForward;
294 if (pageTurnViewPageTurnStartedEventHandler != null)
296 //here we send all page to user event handlers
297 pageTurnViewPageTurnStartedEventHandler(this, e);
302 public event DaliEventHandler<object, PageTurnFinishedEventArgs> PageTurnFinished
306 // Restricted to only one listener
307 if (pageTurnViewPageTurnFinishedEventHandler == null)
309 pageTurnViewPageTurnFinishedEventHandler += value;
311 pageTurnViewPageTurnFinishedCallbackDelegate = new PageTurnFinishedCallbackDelegate(OnPageTurnFinished);
312 this.PageTurnFinishedSignal().Connect(pageTurnViewPageTurnFinishedCallbackDelegate);
318 if (pageTurnViewPageTurnFinishedEventHandler != null)
320 this.PageTurnFinishedSignal().Disconnect(pageTurnViewPageTurnFinishedCallbackDelegate);
323 pageTurnViewPageTurnFinishedEventHandler -= value;
327 // Callback for PageTurnView PageTurnFinished signal
328 private void OnPageTurnFinished(IntPtr page, uint pageIndex, bool isTurningForward)
330 PageTurnFinishedEventArgs e = new PageTurnFinishedEventArgs();
332 // Populate all members of "e" (PageTurnFinishedEventArgs) with real page
333 e.PageTurnView = PageTurnView.GetPageTurnViewFromPtr(page);
334 e.PageIndex = pageIndex;
335 e.IsTurningForward = isTurningForward;
338 if (pageTurnViewPageTurnFinishedEventHandler != null)
340 //here we send all page to user event handlers
341 pageTurnViewPageTurnFinishedEventHandler(this, e);
345 public static PageTurnView GetPageTurnViewFromPtr(global::System.IntPtr cPtr)
347 PageTurnView ret = new PageTurnView(cPtr, false);
348 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
352 internal new class Property
354 internal static readonly int ViewPageSize = Interop.PageTurnView.ViewPageSizeGet();
355 internal static readonly int CurrentPageId = Interop.PageTurnView.CurrentPageIdGet();
356 internal static readonly int SpineShadow = Interop.PageTurnView.SpineShadowGet();
359 public PageTurnView() : this(Interop.PageTurnView.NewPageTurnView(), true)
361 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
364 public PageTurnView(PageTurnView handle) : this(Interop.PageTurnView.NewPageTurnView(PageTurnView.getCPtr(handle)), true)
366 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
369 public PageTurnView Assign(PageTurnView handle)
371 PageTurnView ret = new PageTurnView(Interop.PageTurnView.Assign(SwigCPtr, PageTurnView.getCPtr(handle)), false);
372 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
376 public static PageTurnView DownCast(BaseHandle handle)
378 PageTurnView ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as PageTurnView;
379 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
383 public PageTurnSignal PageTurnStartedSignal()
385 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnStartedSignal(SwigCPtr), false);
386 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
390 public PageTurnSignal PageTurnFinishedSignal()
392 PageTurnSignal ret = new PageTurnSignal(Interop.PageTurnView.PageTurnFinishedSignal(SwigCPtr), false);
393 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
397 public PagePanSignal PagePanStartedSignal()
399 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PagePanStartedSignal(SwigCPtr), false);
400 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
404 public PagePanSignal PagePanFinishedSignal()
406 PagePanSignal ret = new PagePanSignal(Interop.PageTurnView.PagePanFinishedSignal(SwigCPtr), false);
407 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
412 public Vector2 PageSize
416 Vector2 temp = new Vector2(0.0f, 0.0f);
417 GetProperty(PageTurnView.Property.ViewPageSize).Get(temp);
422 SetProperty(PageTurnView.Property.ViewPageSize, new Tizen.NUI.PropertyValue(value));
425 public int CurrentPageId
430 GetProperty(PageTurnView.Property.CurrentPageId).Get(out temp);
435 SetProperty(PageTurnView.Property.CurrentPageId, new Tizen.NUI.PropertyValue(value));
438 public Vector2 SpineShadow
442 Vector2 temp = new Vector2(0.0f, 0.0f);
443 GetProperty(PageTurnView.Property.SpineShadow).Get(temp);
448 SetProperty(PageTurnView.Property.SpineShadow, new Tizen.NUI.PropertyValue(value));