2 // Tizen Web Device API
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
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
9 // http://www.apache.org/licenses/LICENSE-2.0
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.
19 #ifndef _CALENDAR_MULTI_CALLBACK_H_
20 #define _CALENDAR_MULTI_CALLBACK_H_
22 #include <dpl/shared_ptr.h>
23 #include <Commons/IEvent.h>
24 #include <CommonsJavaScript/JSCallbackManager.h>
25 #include <JavaScriptCore/JavaScript.h>
26 #include "CalendarEvent.h"
29 using namespace WrtDeviceApis::CommonsJavaScript;
34 struct CalendarEventsSuccessCallback {
36 JSValueRef onEventSuccess;
37 JSValueRef onEventError;
39 CalendarEventsSuccessCallback()
46 class CalendarEventsCallbackPrivateData : public WrtDeviceApis::Commons::IEventPrivateData
49 CalendarEventsCallbackPrivateData(const JSCallbackManagerPtr& onSuccess,
50 const JSCallbackManagerPtr& onEvent): m_onSuccess(onSuccess),
55 JSCallbackManagerPtr getOnSuccess() const
59 JSCallbackManagerPtr getOnEvent() const
65 JSCallbackManagerPtr m_onSuccess;
66 JSCallbackManagerPtr m_onEvent;
68 typedef DPL::SharedPtr<CalendarEventsCallbackPrivateData> CalendarEventsCallbackPrivateDataPtr;
70 struct CalendarChangeCallback {
74 //JSValueRef onCalendarReset;
76 CalendarChangeCallback()
80 //onCalendarReset(NULL)
84 class CalendarChangeCallbackPrivateData : public WrtDeviceApis::Commons::IEventPrivateData
87 CalendarChangeCallbackPrivateData(const JSCallbackManagerPtr& onAdded,
88 const JSCallbackManagerPtr& onUpdated, const JSCallbackManagerPtr& onDeleted):
89 //const JSCallbackManagerPtr& onCalendarReset):
91 m_onUpdated(onUpdated),
92 m_onDeleted(onDeleted)
93 //m_onCalendarReset(onCalendarReset)
97 JSCallbackManagerPtr getOnAdded() const
101 JSCallbackManagerPtr getOnUpdated() const
105 JSCallbackManagerPtr getOnDeleted() const
111 JSCallbackManagerPtr getOnCalendarReset() const
113 return m_onCalendarReset;
118 JSCallbackManagerPtr m_onAdded;
119 JSCallbackManagerPtr m_onUpdated;
120 JSCallbackManagerPtr m_onDeleted;
121 //JSCallbackManagerPtr m_onCalendarReset;
123 typedef DPL::SharedPtr<CalendarChangeCallbackPrivateData> CalendarChangeCallbackPrivateDataPtr;
128 #endif /* _CALENDAR_MULTI_CALLBACK_H_ */