forked from Qortal/Brooklyn
75 lines
3.0 KiB
C
75 lines
3.0 KiB
C
|
#ifdef E_TYPEDEFS
|
||
|
typedef struct _E_Comp_Config E_Comp_Config;
|
||
|
typedef struct _E_Comp_Match E_Comp_Match;
|
||
|
#else
|
||
|
#ifndef E_COMP_CFDATA_H
|
||
|
#define E_COMP_CFDATA_H
|
||
|
|
||
|
#define E_COMP_VERSION 1
|
||
|
struct _E_Comp_Config
|
||
|
{
|
||
|
int version;
|
||
|
const char *shadow_style;
|
||
|
int engine;
|
||
|
int max_unmapped_pixels;
|
||
|
int max_unmapped_time;
|
||
|
int min_unmapped_time;
|
||
|
unsigned char fps_corner;
|
||
|
unsigned char fps_show;
|
||
|
unsigned char indirect;
|
||
|
unsigned char texture_from_pixmap;
|
||
|
unsigned char lock_fps;
|
||
|
unsigned char grab;
|
||
|
unsigned char vsync;
|
||
|
unsigned char swap_mode;
|
||
|
unsigned char no_dither;
|
||
|
unsigned char keep_unmapped;
|
||
|
unsigned char send_flush;
|
||
|
unsigned char send_dump;
|
||
|
unsigned char nocomp_fs;
|
||
|
unsigned char smooth_windows;
|
||
|
unsigned char nofade;
|
||
|
double first_draw_delay;
|
||
|
Eina_Bool enable_advanced_features;
|
||
|
|
||
|
struct
|
||
|
{
|
||
|
Eina_List *popups; // used for e popups
|
||
|
Eina_List *borders; // used for borders
|
||
|
Eina_List *overrides; // used for client menus, tooltips etc.
|
||
|
Eina_List *menus; // used for e menus
|
||
|
Eina_List *objects; // used for e objects which are not popups or menus
|
||
|
} match;
|
||
|
};
|
||
|
|
||
|
struct _E_Comp_Match
|
||
|
{
|
||
|
const char *title; // glob - used for borders, NULL if not to be used
|
||
|
const char *name; // glob - used for borders, overrides, popups, NULL if not to be used
|
||
|
const char *clas; // glob - used for borders, overrides, NULL if not to be used
|
||
|
const char *role; // glob - used for borders
|
||
|
|
||
|
const char *shadow_style; // shadow style to use
|
||
|
const char *visibility_effect; // effect to use when showing and hiding
|
||
|
|
||
|
int primary_type; // Ecore_X_Window_Type - used for borders, overrides, first one found - ECORE_X_WINDOW_TYPE_UNKNOWN if not to be used
|
||
|
signed char borderless; // used for borders, 0 == dont use, 1 == borderless, -1 == not borderless
|
||
|
signed char dialog; // used for borders, 0 == don't use, 1 == dialog, -1 == not dialog
|
||
|
signed char accepts_focus; // used for borders, 0 == don't use, 1 == accepts focus, -1 == does not accept focus
|
||
|
signed char vkbd; // used for borders, 0 == don't use, 1 == is vkbd, -1 == not vkbd
|
||
|
signed char argb; // used for borders, overrides, popups, menus, 0 == don't use, 1 == is argb, -1 == not argb
|
||
|
signed char fullscreen; // used for borders, 0 == don't use, 1 == is fullscreen, -1 == not fullscreen
|
||
|
signed char modal; // used for borders, 0 == don't use, 1 == is modal, -1 == not modal
|
||
|
signed char focus; // used for setting focus state (on popups): 1 is focused, unset is use regular logic
|
||
|
signed char urgent; // used for setting urgent state (on popups): 1 is urgent, unset is use regular logic
|
||
|
signed char no_shadow; // set whether shadow is disabled
|
||
|
};
|
||
|
|
||
|
E_API void e_comp_cfdata_edd_init(E_Config_DD **conf_edd, E_Config_DD **match_edd);
|
||
|
E_API E_Comp_Config *e_comp_cfdata_config_new(void);
|
||
|
E_API void e_comp_cfdata_config_free(E_Comp_Config *cfg);
|
||
|
E_API void e_comp_cfdata_match_free(E_Comp_Match *m);
|
||
|
|
||
|
#endif
|
||
|
#endif
|