remove Doxygen warning
[framework/osp/shell.git] / inc / FShellIAppWidgetPopupProviderFactory.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                FShellIAppWidgetPopupProviderFactory.h
19  * @brief               This is the header file for the %IAppWidgetPopupProviderFactory interface.
20  *
21  * This header file contains the declarations of the %IAppWidgetPopupProviderFactory interface.
22  */
23
24 #ifndef _FSHELL_IAPPWIDGET_POPUP_PROVIDER_FACTORY_H_
25 #define _FSHELL_IAPPWIDGET_POPUP_PROVIDER_FACTORY_H_
26
27 #include <FBaseString.h>
28 #include <FShellAppWidgetPopupProvider.h>
29
30 namespace Tizen { namespace Shell
31 {
32
33 class AppWidgetPopupProvider;
34
35 /**
36  *   @interface  IAppWidgetPopupProviderFactory
37  *   @brief      This interface defines the factory for the %AppWidgetPopupProvider creation
38  *
39  *   @since     2.1
40  *
41  * The %IAppWidgetPopupProviderFactory is the factory interface for creating the %AppWidgetPopupProvider instance.
42  * The %AppWidgetManager calls CreateInstance() when an instance of %IAppWidgetPopupProvider is required.
43  *
44  * @see AppWidgetManager
45  */
46 class _OSP_EXPORT_ IAppWidgetPopupProviderFactory
47 {
48 public:
49         /**
50          * This polymorphic destructor should be overridden if required.
51          * This way, the destructors of the derived classes are called when the destructor of this interface is called.
52          *
53          * @since       2.1
54          */
55         virtual ~IAppWidgetPopupProviderFactory(void) {};
56
57         /**
58          * Creates a AppWidgetPopupProvider instance. @n
59          * Called when the %AppWidgetPopupProvider creation request is received from the appwidget service. @n
60          * Applications that provide the AppWidget functionality must implement this listener.
61          *
62          * @since       2.1
63          *
64          * @param[in]   providerName            The AppWidget provider name
65          * @param[in]   userInfo        User information that specified when the AppWidget is added
66          */
67         virtual AppWidgetPopupProvider* CreateInstance(const Tizen::Base::String& providerName, const Tizen::Base::String& userInfo) = 0;
68
69 protected:
70         //
71         // This method is for internal use only. Using this method can cause behavioral,
72         // security-related, and consistency-related issues in the application.
73         //
74         // @since       2.1
75         //
76         virtual void IAppWidgetPopupProvider_Reserved1(void) {}
77
78         //
79         // This method is for internal use only. Using this method can cause behavioral,
80         // security-related, and consistency-related issues in the application.
81         //
82         // @since       2.1
83         //
84         virtual void IAppWidgetPopupProvider_Reserved2(void) {}
85
86         //
87         // This method is for internal use only. Using this method can cause behavioral,
88         // security-related, and consistency-related issues in the application.
89         //
90         // @since       2.1
91         //
92         virtual void IAppWidgetPopupProvider_Reserved3(void) {}
93 };
94
95 }} // Tizen::Shell
96
97 #endif /* _IAPPWIDGET_POPUP_FACTORY_H_ */