Tizen 2.1 base
[framework/osp/uifw.git] / src / ui / scenes / FUiScenes_SceneTransitionImpl.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://floralicense.org/license/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 /**
19  * @file        FUiScenes_SceneTransitionImpl.h
20  * @brief       This is the header file of the _SceneTransitionImpl class.
21  *
22  * This header file contains the declarations of the _SceneTransitionImpl class.
23  */
24
25
26 #ifndef _FUI_SCENES_INTERNAL_SCENE_TRANSITION_IMPL_H_
27 #define _FUI_SCENES_INTERNAL_SCENE_TRANSITION_IMPL_H_
28
29 #include <FUiScenesSceneTransition.h>
30
31 namespace Tizen { namespace Ui { namespace Scenes
32 {
33
34 class _SceneTransitionImpl
35         : public Tizen::Base::Object
36 {
37
38 public:
39         _SceneTransitionImpl(void);
40         _SceneTransitionImpl(const _SceneTransitionImpl& rhs);
41         _SceneTransitionImpl(SceneTransitionDirection direction, const SceneId& destinationSceneId,
42                                                  SceneTransitionAnimationType animationType,
43                                                  SceneHistoryOption historyOption, SceneDestroyOption destroyOption);
44         _SceneTransitionImpl operator=(const _SceneTransitionImpl& rhs);
45         virtual bool Equals(const _SceneTransitionImpl& rhs) const;
46         virtual int GetHashCode(void) const;
47         virtual ~_SceneTransitionImpl(void);
48
49         result SetDirection(SceneTransitionDirection direction);
50         SceneTransitionDirection GetDirection(void) const;
51         result SetDestinationSceneId(const SceneId& sceneId);
52         SceneId GetDestinationSceneId(void) const;
53         result SetAnimationType(SceneTransitionAnimationType animationType);
54         SceneTransitionAnimationType GetAnimationType(void) const;
55         result SetHistoryOption(SceneHistoryOption historyOption);
56         SceneHistoryOption GetHistoryOption(void) const;
57         result SetDestroyOption(SceneDestroyOption destroyOption);
58         SceneDestroyOption GetDestroyOption(void) const;
59
60         //
61         // Gets the implementation.
62         //
63         // @return              The implementation
64         // @param[in]   The interface instance pointer
65         // @since       2.0
66         //
67         static _SceneTransitionImpl* GetInstance(SceneTransition& scene);
68
69         //
70         // Gets the implementation.
71         //
72         // @return              The implementation
73         // @param[in]   The interface instance pointer
74         // @since       2.0
75         //
76         static const _SceneTransitionImpl* GetInstance(const SceneTransition& scene);
77
78 private:
79         SceneTransitionDirection __direction;
80         SceneId __destinationSceneId;
81         SceneTransitionAnimationType __animationType;
82         SceneHistoryOption __historyOption;
83         SceneDestroyOption __destroyOption;
84
85 }; // _SceneTransitionImpl
86 } } } // Tizen::Ui::Scenes
87
88 #endif // _FUI_SCENES_INTERNAL_SCENE_TRANSITION_IMPL_H_