appcore-widget : initial commit
[platform/core/appfw/appcore-widget.git] / include / widget_app_internal.h
1 /*
2  * Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #ifndef __TIZEN_APPFW_WIDGET_APP_INTERNAL_H__
18 #define __TIZEN_APPFW_WIDGET_APP_INTERNAL_H__
19
20 #include <widget_app.h>
21
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25
26 /**
27  * For in-house applications
28  *
29  */
30
31 typedef struct
32 {
33         struct __pointer
34         {
35                 double x;
36                 double y;
37                 int down;
38         } pointer;
39
40         struct __part
41         {
42                 double sx;
43                 double sy;
44                 double ex;
45                 double ey;
46         } part;
47
48 } widget_obj_event_info_s;
49
50 typedef int (*widget_instance_text_signal_cb)(widget_context_h context, const char *signal_name,
51         const char *source, widget_obj_event_info_s *info);
52
53 typedef struct _widget_obj_private_ops
54 {
55         widget_instance_text_signal_cb text_signal;
56 } widget_obj_private_ops_s;
57
58 typedef struct _widget_class_factory_full widget_class_factory_full_s;
59 typedef const widget_class_factory_full_s* (*widget_class_factory_override_text_signal)(widget_instance_text_signal_cb op);
60
61 typedef widget_class_h (*_widget_class_factory_operation_make)(widget_instance_lifecycle_callback_s callback);
62
63 struct _widget_class_factory_full
64 {
65         widget_class_factory_override_text_signal override_text_signal;
66 };
67
68 const widget_class_factory_full_s* widget_app_get_class_factory(void);
69
70 #ifdef __cplusplus
71 }
72 #endif
73
74 #endif