Merge "Unchecked GetCharacter func when index is over string length" into tizen_2.2
[platform/framework/native/uifw.git] / inc / FUiCtrlIFrameEventListener.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  * @file        FUiCtrlIFrameEventListener.h
19  * @brief       This is the header file for the %IFrameEventListener interface.
20  *
21  * This header file contains the declarations of the %IFrameEventListener interface. @n
22  * If a frame lifecycle event is generated, a method of this class is called. @n
23  * So, if an application needs to perform tasks related to the frame event, provide the implementation of the methods declared in this interface.
24  */
25
26 #ifndef _FUI_CTRL_IFRAME_EVENT_LISTENER_H_
27 #define _FUI_CTRL_IFRAME_EVENT_LISTENER_H_
28
29 #include <FBaseRtIEventListener.h>
30
31 namespace Tizen { namespace Ui { namespace Controls
32 {
33
34 class Frame;
35
36 /**
37  * @interface   IFrameEventListener
38  * @brief               This interface implements the listener for the frame lifecycle event.
39  *
40  * @since               2.0
41  *
42  * The %IFrameEventListener interface is the listener interface for receiving %Frame lifecycle events.
43  *
44  * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/ui/implementing_frame.htm">Frame</a>.
45  *
46  */
47 class _OSP_EXPORT_ IFrameEventListener
48         : public Tizen::Base::Runtime::IEventListener
49 {
50 // Lifecycle
51 public:
52         //
53         //This method is for internal use only. Using this method can cause behavioral, security-related,
54         //and consistency-related issues in the application.
55         //
56         virtual ~IFrameEventListener(void) {}
57
58 // Operations
59 public:
60         /**
61          * Called when a Frame instance is about to be destroyed. @n
62          * The %OnFrameTerminating() method is called just before the system destroys the %Frame instance of an application during the application termination sequence.
63          *
64          * @since               2.0
65          *
66          * @param[in]   source          The source of the event
67          * @remarks     This method releases any resources that need to be deallocated before the destruction of the Frame instance.
68          */
69         virtual void OnFrameTerminating(const Tizen::Ui::Controls::Frame& source) = 0;
70
71         /**
72          * Called when a Frame instance is about to be activated. @n
73          * The %OnFrameActivated() method is called just after the system activates the %Frame instance of an application.
74          *
75          * @since 2.0
76          *
77          * @param[in]   source          The source of the event
78           */
79         virtual void OnFrameActivated(const Tizen::Ui::Controls::Frame& source) {}
80
81         /**
82          * Called when a Frame instance is about to be deactivated. @n
83          * The %OnFrameDeactivated() method is called just after the system deactivates the %Frame instance of an application.
84          *
85          * @since 2.0
86          *
87          * @param[in]   source          The source of the event
88          */
89         virtual void OnFrameDeactivated(const Tizen::Ui::Controls::Frame& source) {}
90
91         /**
92          * Called after a Frame instance is minimized. @n
93          * The %OnFrameMinimized() method is called just after the system minimizes the %Frame instance of an application.
94          *
95          * @since 2.1
96          *
97          * @param[in]   source          The source of the event
98          */
99         virtual void OnFrameMinimized(const Tizen::Ui::Controls::Frame& source) {}
100
101         /**
102          * Called after a Frame instance is restored. @n
103          * The %OnFrameRestored() method is called just after the system restores the %Frame instance of an application.
104          *
105          * @since 2.1
106          *
107          * @param[in]   source          The source of the event
108          */
109         virtual void OnFrameRestored(const Tizen::Ui::Controls::Frame& source) {}
110
111         // Reserves
112 protected:
113         //
114         //This method is for internal use only. Using this method can cause behavioral, security-related,
115         //and consistency-related issues in the application.
116         //
117         // This method is reserved and may change its name at any time without
118         // prior notice.
119         //
120         // @since 2.0
121         //
122         virtual void IFrameEventListener_Reserved3(void) {}
123
124         //
125         //This method is for internal use only. Using this method can cause behavioral, security-related,
126         //and consistency-related issues in the application.
127         //
128         // This method is reserved and may change its name at any time without
129         // prior notice.
130         //
131         // @since 2.0
132         //
133         virtual void IFrameEventListener_Reserved4(void) {}
134
135         //
136         //This method is for internal use only. Using this method can cause behavioral, security-related,
137         //and consistency-related issues in the application.
138         //
139         // This method is reserved and may change its name at any time without
140         // prior notice.
141         //
142         // @since 2.0
143         //
144         virtual void IFrameEventListener_Reserved5(void) {}
145 }; // IFrameEventListener
146
147 }}} // Tizen::Ui::Controls
148
149 #endif // _FUI_CTRL_IFRAME_EVENT_LISTENER_H_