tizen 2.4 release
[framework/uifw/e17-mod-tizen-comp.git] / src / e_mod_comp_cfdata.h
1 #ifndef E_MOD_COMP_CFDATA_H
2 #define E_MOD_COMP_CFDATA_H
3
4 typedef struct _Config Config;
5 typedef struct _Match  Match;
6
7 struct _Config
8 {
9    const char   *shadow_file;
10    const char   *shadow_style;
11    const char   *effect_file;
12    const char   *hwcomp_file;
13    int           engine;
14    int           max_unmapped_pixels;
15    int           max_unmapped_time;
16    int           min_unmapped_time;
17    int           fps_average_range;
18    unsigned char fps_corner;
19    unsigned char fps_show;
20    unsigned char use_shadow;
21    unsigned char indirect;
22    unsigned char texture_from_pixmap;
23    unsigned char lock_fps;
24    unsigned char loose_sync;
25    unsigned char efl_sync;
26    unsigned char grab;
27    unsigned char vsync;
28    unsigned char keep_unmapped;
29    unsigned char send_flush;
30    unsigned char send_dump;
31    unsigned char nocomp_fs;
32    unsigned char use_hwc;
33    unsigned char smooth_windows;
34    double        first_draw_delay;
35    unsigned char canvas_per_zone;
36    unsigned char use_lock_screen;
37    unsigned char default_window_effect;
38    unsigned char keyboard_effect;
39    unsigned char xv_rotation_effect;
40    unsigned char fake_image_launch;
41    int           fake_launch_layer;
42    int            lower_layer;
43    unsigned char defer_raise_effect;
44    double        max_lock_screen_time;
45    double        damage_timeout;
46    double        nocomp_begin_timeout;
47    unsigned char use_hw_ov;
48    unsigned char debug_info_show;
49    int           max_debug_msgs;
50    int           debug_type_nocomp;
51    int           debug_type_swap;
52    int           debug_type_effect;
53    unsigned char use_efl_native_surface;
54    unsigned char stand_by_canvas_render_enable;
55
56    const char   *effect_policy_unknown;
57    const char   *effect_policy_desktop;
58    const char   *effect_policy_dock;
59    const char   *effect_policy_toolbar;
60    const char   *effect_policy_menu;
61    const char   *effect_policy_utility;
62    const char   *effect_policy_splash;
63    const char   *effect_policy_dialog;
64    const char   *effect_policy_normal;
65    const char   *effect_policy_videocall;
66    const char   *effect_policy_dropdown_menu;
67    const char   *effect_policy_popup_menu;
68    const char   *effect_policy_tooltip;
69    const char   *effect_policy_notification;
70    const char   *effect_policy_combo;
71    const char   *effect_policy_dnd;
72    const char   *effect_policy_menuscreen;
73    const char   *effect_policy_quickpanel_base;
74    const char   *effect_policy_quickpanel;
75    const char   *effect_policy_taskmanager;
76    const char   *effect_policy_livemagazine;
77    const char   *effect_policy_lockscreen;
78    const char   *effect_policy_indicator;
79    const char   *effect_policy_tickernoti;
80    const char   *effect_policy_debugging_info;
81    const char   *effect_policy_apptray;
82    const char   *effect_policy_mini_apptray;
83    const char   *effect_policy_volume;
84    const char   *effect_policy_background;
85    const char   *effect_policy_isf_keyboard;
86    const char   *effect_policy_isf_sub;
87    const char   *effect_policy_setup_wizard;
88    const char   *effect_policy_toast;
89    const char   *effect_policy_app_popup;
90
91    struct
92    {
93       Eina_List *popups;    // used for e popups
94       Eina_List *borders;    // used for borders
95       Eina_List *overrides;    // used for client menus, tooltips etc.
96       Eina_List *menus;    // used for e menus
97    } match;
98 };
99
100 struct _Match
101 {
102    const char *title; // glob - used for borders, NULL if not to be used
103    const char *name; // glob - used for borders, overrides, popups, NULL if not to be used
104    const char *clas; // glob - used for borders, overrides, NULL if not to be used
105    const char *role; // glob - used for borders
106
107    const char *shadow_style; // shadow style to use
108
109    int         primary_type; // Ecore_X_Window_Type - used for borders, overrides, first one found - ECORE_X_WINDOW_TYPE_UNKNOWN if not to be used
110    char        borderless; // used for borders, 0 == dont use, 1 == borderless, -1 == not borderless
111    char        dialog; // used for borders, 0 == don't use, 1 == dialog, -1 == not dialog
112    char        accepts_focus; // used for borders, 0 == don't use, 1 == accepts focus, -1 == does not accept focus
113    char        vkbd; // used for borders, 0 == don't use, 1 == is vkbd, -1 == not vkbd
114    char        quickpanel; // used for borders, 0 == don't use, 1 == is quickpanel, -1 == not quickpanel
115    char        argb; // used for borders, overrides, popups, menus, 0 == don't use, 1 == is argb, -1 == not argb
116    char        fullscreen; // used for borders, 0 == don't use, 1 == is fullscreen, -1 == not fullscreen
117    char        modal; // used for borders, 0 == don't use, 1 == is modal, -1 == not modal
118 };
119
120 EAPI void    e_mod_comp_cfdata_edd_init(E_Config_DD **conf_edd, E_Config_DD **match_edd);
121 EAPI Config *e_mod_comp_cfdata_config_new(void);
122 EAPI void    e_mod_cfdata_config_free(Config *cfg);
123
124 #endif