Merge "Unchecked GetCharacter func when index is over string length" into tizen_2.2
[platform/framework/native/uifw.git] / inc / FUiISlidableListEventListener.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        FUiISlidableListEventListener.h
20  * @brief       This is the header file for the %ISlidableListEventListener interface.
21  *
22  * This header file contains the declarations of the %ISlidableListEventListener interface. @n
23  * If the event is generated, a method of this interface is called. @n
24  * So, if applications do jobs related to item events, use the methods of this interface.
25  *
26  */
27 #ifndef _FUI_ISLIDABLE_LIST_EVENT_LISTENER_H_
28 #define _FUI_ISLIDABLE_LIST_EVENT_LISTENER_H_
29
30 #include <FBaseRtIEventListener.h>
31
32 namespace Tizen { namespace Ui
33 {
34 class Control;
35 } }
36
37 namespace Tizen {namespace Ui
38 {
39
40 /**
41  * @if OSPDEPREC
42  * @interface   ISlidableListEventListener
43  * @brief               <i> [Deprecated] </i> This interface implements the listener for events on SlidableList.
44  * @deprecated  This interface is deprecated. Instead of using this interface, use the IListViewItemEventListener interface.
45  * @since               2.0
46  *
47  *
48  * The %ISlidableListEventListener interface implements a listener for receiving scroll events on SlidableList. This listener is implemented
49  * to allow the application to load the items as needed, as the user scrolls through the list.
50  * The class is registered with a SlidableList, using the control's AddSlidableListEventListener() method.
51  * @endif
52  */
53 class _OSP_EXPORT_ ISlidableListEventListener
54         : public Tizen::Base::Runtime::IEventListener
55 {
56 // Operation
57 public:
58         /**
59          * @if OSPDEPREC
60          * This is the destructor for this class.
61          *
62          * @brief               <i> [Deprecated] </i> This interface implements the listener for events on SlidableList.
63          * @deprecated  This interface is deprecated. Instead of using this interface, use the IListViewItemEventListener interface.
64          * @since               2.0
65          * @endif
66          */
67         virtual ~ISlidableListEventListener(void) {}
68
69         /**
70          * @if OSPDEPREC
71          * Called when the slidable list is about to be drawn and requests to set the properties of the list such as the total height.
72          *
73          * @brief               <i> [Deprecated] </i> This interface implements the listener for events on SlidableList.
74          * @deprecated  This interface is deprecated. Instead of using this interface, use the IListViewItemEventListener interface.
75          * @since               2.0
76          *
77          * @param[in]   source          The source of the event
78          * @endif
79          */
80         virtual void OnListPropertyRequested(const Tizen::Ui::Control& source) = 0;
81
82         /**
83          * @if OSPDEPREC
84          * Called when the items need to be loaded to the top.
85          *
86          * @brief               <i> [Deprecated] </i> This interface implements the listener for events on SlidableList.
87          * @deprecated  This interface is deprecated. Instead of using this interface, use the IListViewItemEventListener interface.
88          * @since               2.0
89          *
90          * @param[in]   source          The source of the event
91          * @param[in]   index           The index of the item
92          * @param[in]   numItems        The number of items
93          * @endif
94          */
95         virtual void OnLoadToTopRequested(const Tizen::Ui::Control& source, int index, int numItems) = 0;
96
97         /**
98          * @if OSPDEPREC
99          * Called when the items need to be loaded to the bottom.
100          *
101          * @brief               <i> [Deprecated] </i> This interface implements the listener for events on SlidableList.
102          * @deprecated  This interface is deprecated. Instead of using this interface, use the IListViewItemEventListener interface.
103          * @since               2.0
104          *
105          * @param[in]   source          The source of the event
106          * @param[in]   index           The index of the item
107          * @param[in]   numItems        The number of items
108          * @endif
109          */
110         virtual void OnLoadToBottomRequested(const Tizen::Ui::Control& source, int index, int numItems) = 0;
111
112         /**
113          * @if OSPDEPREC
114          * Called when an item is about to be unloaded from memory. @n
115          * The user-allocated resources associated with the item must be freed before unloading, when OnUnloadItemRequested() is called.
116          *
117          * @brief               <i> [Deprecated] </i> This interface implements the listener for events on SlidableList.
118          * @deprecated  This interface is deprecated. Instead of using this interface, use the IListViewItemEventListener interface.
119          * @since               2.0
120          *
121          * @param[in]   source          The source of the event
122          * @param[in]   index           The index of the item
123          * @endif
124          */
125         virtual void OnUnloadItemRequested(const Tizen::Ui::Control& source, int index) = 0;
126
127 }; //ISlidableListEventListener
128
129 }} //Tizen::Ui
130
131 #endif // _FUI_ISLIDABLE_LIST_EVENT_LISTENER_H_