Fork for IVI: mesa fixing
[profile/ivi/uifw.git] / inc / FUiIDateTimeChangeEventListener.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  * @file                FUiIDateTimeChangeEventListener.h
19  * @brief               This is the header file for the %IDateTimeChangeEventListener interface.
20  *
21  * This header file contains the declarations of the %IDateTimeChangeEventListener interface. @n
22  * If a change event is generated, a method of this class is called. @n
23  * So, if applications perform jobs related to change events, they use the methods of this class.
24  *
25  */
26 #ifndef _FUI_IDATETIME_CHANGE_EVENT_LISTENER_H_
27 #define _FUI_IDATETIME_CHANGE_EVENT_LISTENER_H_
28
29 // Includes
30 #include <FBaseRtIEventListener.h>
31 #include <FBaseObject.h>
32
33 namespace Tizen { namespace Ui
34 {
35 class Control;
36 } }
37
38 namespace Tizen {namespace Ui
39 {
40
41 /**
42  * @interface   IDateTimeChangeEventListener
43  * @brief               This interface implements the listener for Date and Time change events.
44  *
45  * @since               2.0
46  *
47  * The %IDateTimeChangeEventListener interface is the listener interface for receiving date and time change events.
48  * The class that processes a date and time change event implements this interface, and the instance created with that class is
49  * registered with a UI control, using the control's AddDateTimeChangeEventListener() method. When the date and time change event
50  * occurs, the OnDateTimeChanged() method of that instance is invoked.
51  * @n
52  * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/ui/implementing_datepicker.htm">DatePicker, TimePicker, and DateTimePicker</a>.
53  */
54 class _OSP_EXPORT_ IDateTimeChangeEventListener
55         : public Tizen::Base::Runtime::IEventListener
56 {
57 // Operation
58 public:
59         /**
60          * This is the destructor for this class.
61          *
62          * @since                       2.0
63          */
64         virtual ~IDateTimeChangeEventListener(void) {}
65
66         /**
67          * Called when there is a change in DateTime. @n
68          * The changed values of day, month, year, hour and minute are passed as input parameters.
69          *
70          * @since                       2.0
71          *
72          * @param[in]       source                  The source of the event
73          * @param[in]           year                    The year value
74          * @param[in]           month                   The month value
75          * @param[in]           day                             The day value
76          * @param[in]           hour                    The hour value
77          * @param[in]           minute                  The minute value
78          *
79          */
80         virtual void OnDateTimeChanged(const Tizen::Ui::Control& source, int year, int month, int day, int hour, int minute) = 0;
81
82
83         /**
84         * Called when the date and time change is canceled.
85         *
86         * @since                        2.0
87         *
88         * @param[in]    source          The source of the event
89         */
90         virtual void OnDateTimeChangeCanceled(const Tizen::Ui::Control& source) = 0;
91
92 protected:
93         //
94         // This method is for internal use only.
95         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
96         //
97         // This method is reserved and may change its name at any time without prior notice.
98         //
99         // @since      2.0
100         //
101         virtual void IDateTimeChangeEventListener_Reserved1(void) {}
102
103         //
104         // This method is for internal use only.
105         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
106         //
107         // This method is reserved and may change its name at any time without prior notice.
108         //
109         // @since      2.0
110         //
111         virtual void IDateTimeChangeEventListener_Reserved2(void) {}
112
113         //
114         // This method is for internal use only.
115         // Using this method can cause behavioral, security-related, and consistency-related issues in the application.
116         //
117         // This method is reserved and may change its name at any time without prior notice.
118         //
119         // @since      2.0
120         //
121         virtual void IDateTimeChangeEventListener_Reserved3(void) {}
122 }; // IDateTimeChangeEventListener
123
124 }} // Tizen::Ui
125
126 #endif // _FUI_IDATETIME_CHANGE_EVENT_LISTENER_H_