Merge "Modify for P130417-9332, P130419-3682, add RestoreItemSatus() after UpdateList...
[platform/framework/native/uifw.git] / inc / FUiAnimDisplayContext.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.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://www.apache.org/licenses/LICENSE-2.0/
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        FUiAnimDisplayContext.h
20  * @brief       This is the header file for the %DisplayContext class.
21  *
22  * This header file contains the declarations of the %DisplayContext class.
23  */
24
25 #ifndef _FUI_ANIM_DISPLAY_CONTEXT_H_
26 #define _FUI_ANIM_DISPLAY_CONTEXT_H_
27
28 #include <FBaseObject.h>
29
30 namespace Tizen { namespace Ui { namespace Animations
31 {
32 class _DisplayContextImpl;
33
34 /**
35  * @class       DisplayContext
36  * @brief       This class represents the display resources for the displayable objects.
37  *
38  * @since       2.0
39  *
40  * The %DisplayContext class represents the display context of the window.
41  * The display context is a set of display resources that includes VisualElements, VisualElementSurfaces, and frame buffer,
42  * and it is managed by Tizen::Ui::Window.
43  */
44 class _OSP_EXPORT_ DisplayContext
45         : public Tizen::Base::Object
46 {
47 protected:
48         /**
49          * This default constructor is intentionally declared as private to prohibit creation of an instance by a user.
50          *
51          * @since               2.0
52          *
53          * @remarks The %DisplayContext instance cannot be created,
54          *                      it is offered by the Tizen::Ui::Window::GetDisplayContext() method.
55          * @see Window::GetDisplayContext()
56          */
57         DisplayContext(void);
58
59
60         /**
61          * This destructor is intentionally declared as private to implement the Singleton semantic.
62          *
63          * @since               2.0
64          *
65          * @remarks             The display context is released when the Tizen::Ui::Window instance is destroyed.
66          *
67          */
68         virtual ~DisplayContext(void);
69
70
71 private:
72
73         /**
74          * The implementation of this copy constructor is intentionally blank to prohibit copying of objects.
75          *
76          * @since               2.0
77          */
78         DisplayContext(const DisplayContext& rhs);
79
80
81         /**
82          * The implementation of this assignment constructor is intentionally blank to prohibit assignment of objects.
83          *
84          * @since               2.0
85          */
86         DisplayContext& operator =(const DisplayContext& rhs);
87
88
89 protected:
90         //
91         // This method is for internal use only. Using this method can cause behavioral,
92         // security-related, and consistency-related issues in the application.
93         //
94         // This method is reserved and may change its name at any time without prior notice.
95         //
96         virtual void DisplayContext_Reserved1(void) {}
97
98
99         //
100         // This method is for internal use only. Using this method can cause behavioral,
101         // security-related, and consistency-related issues in the application.
102         //
103         // This method is reserved and may change its name at any time without prior notice.
104         //
105         virtual void DisplayContext_Reserved2(void) {}
106
107
108         //
109         // This method is for internal use only. Using this method can cause behavioral,
110         // security-related, and consistency-related issues in the application.
111         //
112         // This method is reserved and may change its name at any time without prior notice.
113         //
114         virtual void DisplayContext_Reserved3(void) {}
115
116
117         //
118         // This method is for internal use only. Using this method can cause behavioral,
119         // security-related, and consistency-related issues in the application.
120         //
121         // This method is reserved and may change its name at any time without prior notice.
122         //
123         virtual void DisplayContext_Reserved4(void) {}
124
125
126         //
127         // This method is for internal use only. Using this method can cause behavioral,
128         // security-related, and consistency-related issues in the application.
129         //
130         // This method is reserved and may change its name at any time without prior notice.
131         //
132         virtual void DisplayContext_Reserved5(void) {}
133
134 protected:
135         friend class _DisplayContextImpl;
136         _DisplayContextImpl* _pDisplayContextImpl;
137 }; // class DisplayContext
138
139 }}} //namespace Tizen { namespace Ui { namespace Animations
140
141 #endif //_FUI_ANIM_DISPLAY_CONTEXT_H_