dde9f99e7bad6598e5cb2a2f1d2b7bb154d4a16a
[platform/core/uifw/dali-toolkit.git] / optional / dali-toolkit / internal / controls / page-turn-view / page-turn-portrait-view-impl.h
1 #ifndef __DALI_TOOLKIT_INTERNAL_PAGE_TURN_PORTRAIT_VIEW_IMPL_H__
2 #define __DALI_TOOLKIT_INTERNAL_PAGE_TURN_PORTRAIT_VIEW_IMPL_H__
3
4 //
5 // Copyright (c) 2014 Samsung Electronics Co., Ltd.
6 //
7 // Licensed under the Flora License, Version 1.0 (the License);
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
10 //
11 //     http://floralicense.org/license/
12 //
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an AS IS BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
18 //
19
20 // INTERNAL INCLUDES
21 #include <dali-toolkit/public-api/controls/page-turn-view/page-turn-portrait-view.h>
22 #include <dali-toolkit/internal/controls/page-turn-view/page-turn-view-impl.h>
23
24 namespace Dali
25 {
26
27 namespace Toolkit
28 {
29
30 namespace Internal
31 {
32
33 /**
34  * Implementation class of the PageTurnView in portrait mode
35  */
36 class PageTurnPortraitView : public PageTurnView
37 {
38 public:
39
40   /**
41    * Create a new PageTurnPortraitView
42    * @return A handle to the newly allocated PageTurnPortraitView
43    */
44   static Toolkit::PageTurnPortraitView New( PageFactory& pageFactory, const Vector2& pageSize );
45
46 protected:
47
48   /**
49    * Constructor.
50    * It initializes the PageTurnPortraitView members
51    */
52   PageTurnPortraitView( PageFactory& pageFactory, const Vector2& pageSize );
53
54   /**
55    * A reference counted object may only be deleted by calling Unreference()
56    */
57   virtual ~PageTurnPortraitView();
58
59 protected: // From PageTurnView
60
61   /**
62    * @copydoc PageTurnView::OnPageTurnViewInitialize
63    */
64   virtual void OnPageTurnViewInitialize();
65
66   /**
67    * @copydoc PageTurnView::NewPageFromRenderBuffer
68    */
69   virtual ImageActor NewPageFromRenderBuffer( int pageIndex );
70
71   /**
72    * @copydoc PageTurnView::SetPanPosition
73    */
74   virtual Vector2 SetPanPosition( const Vector2& gesturePosition );
75
76   /**
77    * @copydoc PageTurnView::SetPanActor
78    */
79   virtual void SetPanActor( const Vector2& panPosition );
80
81   /**
82    * @copydoc PageTurnView::SetSpineEffect
83    */
84   virtual void SetSpineEffect(Actor actor, bool isLeftSide);
85
86   /**
87    * @copydoc PageTurnView::OnPossibleOutwardsFlick
88    */
89   virtual void OnPossibleOutwardsFlick( const Vector2& panPosition, float gestureSpeed );
90
91 private:
92
93   /**
94    * @copydoc PageTurnView::TurnedOver
95    */
96   void OnTurnedOver( Animation& animation );
97
98 private:
99
100   //Undefined
101   PageTurnPortraitView( const PageTurnPortraitView& );
102
103   //undefined
104   PageTurnPortraitView& operator=(const PageTurnPortraitView& rhs);
105
106 };
107
108 } // namespace Internal
109
110 } // namespace Toolkit
111
112 } // namespace Dali
113 #endif /* __DALI_TOOLKIT_INTERNAL_PAGE_TURN_PORTRAIT_VIEW_IMPL_H__ */