Clouseau: Moved the legacy eet descriptors to a separate file.
This cleans up the code a bit and will let us get rid of it easily when the time comes. SVN revision: 83510
This commit is contained in:
parent
12c379a500
commit
54ffd3ebc9
|
@ -10,7 +10,8 @@ AM_CPPFLAGS = \
|
|||
|
||||
EXTRA_DIST = \
|
||||
clouseau_private.h \
|
||||
clouseau_private2.h
|
||||
clouseau_private2.h \
|
||||
clouseau_data_legacy.h
|
||||
|
||||
pkgdir = $(libdir)/clouseau
|
||||
pkg_LTLIBRARIES = libclouseau.la libclouseau_client.la
|
||||
|
@ -18,6 +19,7 @@ pkg_LTLIBRARIES = libclouseau.la libclouseau_client.la
|
|||
libclouseau_la_SOURCES = \
|
||||
clouseau_client.c \
|
||||
clouseau_object_information.c \
|
||||
clouseau_data_legacy.c \
|
||||
clouseau_data.c
|
||||
|
||||
libclouseau_la_LDFLAGS = -module -avoid-version -rdynamic
|
||||
|
@ -26,6 +28,7 @@ libclouseau_la_LIBADD = @EFL_LIBS@
|
|||
libclouseau_la_CFLAGS = @EFL_CFLAGS@
|
||||
|
||||
libclouseau_client_la_SOURCES = clouseau_object_information.c \
|
||||
clouseau_data_legacy.c \
|
||||
clouseau_data.c
|
||||
|
||||
libclouseau_client_la_DEPENDENCIES = $(top_builddir)/config.h
|
||||
|
|
|
@ -1,14 +1,8 @@
|
|||
#include "clouseau_private.h"
|
||||
#include "clouseau_data_legacy.h"
|
||||
|
||||
static int clouseau_init_count = 0;
|
||||
|
||||
static Eet_Data_Descriptor *clouseau_object_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_union_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_textblock_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_edje_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_image_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_text_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_elm_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_connect_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_app_add_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_data_req_edd = NULL;
|
||||
|
@ -20,7 +14,6 @@ static Eet_Data_Descriptor *clouseau_app_closed_edd = NULL;
|
|||
static Eet_Data_Descriptor *clouseau_highlight_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_bmp_req_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_protocol_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_map_point_props_edd = NULL;
|
||||
|
||||
static Eet_Data_Descriptor *eo_string_edd = NULL;
|
||||
static Eet_Data_Descriptor *eo_int_edd = NULL;
|
||||
|
@ -238,276 +231,6 @@ _clouseau_bmp_req_desc_make(void)
|
|||
"ctr", ctr, EET_T_UINT);
|
||||
}
|
||||
|
||||
static struct {
|
||||
Clouseau_Object_Type u;
|
||||
const char *name;
|
||||
} eet_props_mapping[] = {
|
||||
/* As eet_mapping */
|
||||
{ CLOUSEAU_OBJ_TYPE_OTHER, "CLOUSEAU_OBJ_TYPE_OTHER" },
|
||||
{ CLOUSEAU_OBJ_TYPE_ELM, "CLOUSEAU_OBJ_TYPE_ELM" },
|
||||
{ CLOUSEAU_OBJ_TYPE_TEXT, "CLOUSEAU_OBJ_TYPE_TEXT" },
|
||||
{ CLOUSEAU_OBJ_TYPE_IMAGE, "CLOUSEAU_OBJ_TYPE_IMAGE" },
|
||||
{ CLOUSEAU_OBJ_TYPE_EDJE, "CLOUSEAU_OBJ_TYPE_EDJE" },
|
||||
{ CLOUSEAU_OBJ_TYPE_TEXTBLOCK, "CLOUSEAU_OBJ_TYPE_TEXTBLOCK" },
|
||||
{ CLOUSEAU_OBJ_TYPE_UNKNOWN, NULL }
|
||||
};
|
||||
|
||||
static const char *
|
||||
_clouseau_props_union_type_get(const void *data, Eina_Bool *unknow)
|
||||
{ /* _union_type_get */
|
||||
const Clouseau_Object_Type *u = data;
|
||||
int i;
|
||||
|
||||
if (unknow)
|
||||
*unknow = EINA_FALSE;
|
||||
|
||||
for (i = 0; eet_props_mapping[i].name != NULL; ++i)
|
||||
if (*u == eet_props_mapping[i].u)
|
||||
return eet_props_mapping[i].name;
|
||||
|
||||
if (unknow)
|
||||
*unknow = EINA_TRUE;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_clouseau_props_union_type_set(const char *type, void *data, Eina_Bool unknow)
|
||||
{ /* same as _union_type_set */
|
||||
Clouseau_Object_Type *u = data;
|
||||
int i;
|
||||
|
||||
if (unknow)
|
||||
return EINA_FALSE;
|
||||
|
||||
for (i = 0; eet_props_mapping[i].name != NULL; ++i)
|
||||
if (strcmp(eet_props_mapping[i].name, type) == 0)
|
||||
{
|
||||
*u = eet_props_mapping[i].u;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_elm_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Elm_Props);
|
||||
clouseau_elm_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"type", type, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"style", style, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"scale", scale, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"has_focus", has_focus, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"is_disabled", is_disabled, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"is_mirrored", is_mirrored, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"is_mirrored_automatic", is_mirrored_automatic, EET_T_UCHAR);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_text_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Evas_Text_Props);
|
||||
clouseau_text_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"font", font, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"size", size, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"source", source, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"text", text, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_image_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Evas_Image_Props);
|
||||
clouseau_image_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"file", file, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"key", key, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"source", source, EET_T_UINT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"load_err", load_err, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_edje_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Edje_Props);
|
||||
clouseau_edje_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_edje_edd, Clouseau_Edje_Props,
|
||||
"file", file, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_edje_edd, Clouseau_Edje_Props,
|
||||
"group", group, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_edje_edd, Clouseau_Edje_Props,
|
||||
"load_err", load_err, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_textblock_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Evas_Textblock_Props);
|
||||
clouseau_textblock_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_textblock_edd, Clouseau_Evas_Textblock_Props,
|
||||
"style", style, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_textblock_edd, Clouseau_Evas_Textblock_Props,
|
||||
"text", text, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_map_point_props_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc,
|
||||
Clouseau_Evas_Map_Point_Props);
|
||||
|
||||
clouseau_map_point_props_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_map_point_props_edd,
|
||||
Clouseau_Evas_Map_Point_Props, "x", x, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_map_point_props_edd,
|
||||
Clouseau_Evas_Map_Point_Props, "y", y, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_map_point_props_edd,
|
||||
Clouseau_Evas_Map_Point_Props, "z", z, EET_T_INT);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_object_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Object);
|
||||
clouseau_object_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
/* START - evas_props Struct desc */
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.name", evas_props.name, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.bt", evas_props.bt, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.layer", evas_props.layer, EET_T_SHORT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.x", evas_props.x, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.y", evas_props.y, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.w", evas_props.w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.h", evas_props.h, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.scale", evas_props.scale, EET_T_DOUBLE);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.min_w", evas_props.min_w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.min_h", evas_props.min_h, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.max_w", evas_props.max_w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.max_h", evas_props.max_h, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.req_w", evas_props.req_w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.req_h", evas_props.req_h, EET_T_INT);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.align_x", evas_props.align_x, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.align_y", evas_props.align_y, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.weight_x", evas_props.weight_x, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.weight_y", evas_props.weight_y, EET_T_DOUBLE);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.r", evas_props.r, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.g", evas_props.g, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.b", evas_props.b, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.a", evas_props.a, EET_T_INT);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.pass_events", evas_props.pass_events, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.repeat_events", evas_props.repeat_events, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.propagate_events", evas_props.propagate_events, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.has_focus", evas_props.has_focus, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.is_clipper", evas_props.is_clipper, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.is_visible", evas_props.is_visible, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.clipper", evas_props.clipper, EET_T_ULONG_LONG);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.mode", evas_props.mode, EET_T_INT);
|
||||
|
||||
_clouseau_elm_desc_make();
|
||||
_clouseau_text_desc_make();
|
||||
_clouseau_image_desc_make();
|
||||
_clouseau_edje_desc_make();
|
||||
_clouseau_textblock_desc_make();
|
||||
|
||||
_clouseau_map_point_props_desc_make();
|
||||
EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.points", evas_props.points,
|
||||
clouseau_map_point_props_edd);
|
||||
|
||||
/* for union */
|
||||
EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Extra_Props);
|
||||
eddc.func.type_get = _clouseau_props_union_type_get;
|
||||
eddc.func.type_set = _clouseau_props_union_type_set;
|
||||
clouseau_union_edd = eet_data_descriptor_file_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_ELM", clouseau_elm_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_TEXT",
|
||||
clouseau_text_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_IMAGE",
|
||||
clouseau_image_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_EDJE",
|
||||
clouseau_edje_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_TEXTBLOCK",
|
||||
clouseau_textblock_edd);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_UNION(clouseau_object_edd, Clouseau_Object,
|
||||
"u", extra_props.u,
|
||||
extra_props.type, clouseau_union_edd);
|
||||
}
|
||||
|
||||
/* START EO descs */
|
||||
struct _Clouseau_Eo_Dbg_Info_Mapping
|
||||
{
|
||||
|
@ -730,11 +453,11 @@ _clouseau_eo_descs_make(void)
|
|||
static void
|
||||
clouseau_data_descriptors_init(void)
|
||||
{
|
||||
clouseau_data_descriptors_legacy_init();
|
||||
_clouseau_eo_descs_make();
|
||||
_clouseau_bmp_req_desc_make();
|
||||
_clouseau_bmp_info_desc_make();
|
||||
_clouseau_shot_list_desc_make();
|
||||
_clouseau_object_desc_make();
|
||||
_clouseau_tree_item_desc_make();
|
||||
_clouseau_connect_desc_make();
|
||||
_clouseau_app_add_desc_make();
|
||||
|
@ -761,18 +484,11 @@ clouseau_data_descriptors_shutdown(void)
|
|||
eet_data_descriptor_free(clouseau_tree_edd);
|
||||
eet_data_descriptor_free(clouseau_app_closed_edd);
|
||||
eet_data_descriptor_free(clouseau_highlight_edd);
|
||||
eet_data_descriptor_free(clouseau_object_edd);
|
||||
eet_data_descriptor_free(clouseau_bmp_req_edd);
|
||||
eet_data_descriptor_free(clouseau_bmp_info_edd);
|
||||
eet_data_descriptor_free(clouseau_shot_list_edd);
|
||||
eet_data_descriptor_free(clouseau_protocol_edd);
|
||||
eet_data_descriptor_free(clouseau_elm_edd);
|
||||
eet_data_descriptor_free(clouseau_text_edd);
|
||||
eet_data_descriptor_free(clouseau_image_edd);
|
||||
eet_data_descriptor_free(clouseau_edje_edd);
|
||||
eet_data_descriptor_free(clouseau_textblock_edd);
|
||||
eet_data_descriptor_free(clouseau_union_edd);
|
||||
eet_data_descriptor_free(clouseau_map_point_props_edd);
|
||||
clouseau_data_descriptors_legacy_shutdown();
|
||||
}
|
||||
|
||||
static void *
|
||||
|
|
|
@ -0,0 +1,295 @@
|
|||
#include "clouseau_data_legacy.h"
|
||||
|
||||
Eet_Data_Descriptor *clouseau_object_edd = NULL;
|
||||
Eet_Data_Descriptor *clouseau_union_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_textblock_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_edje_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_image_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_text_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_elm_edd = NULL;
|
||||
static Eet_Data_Descriptor *clouseau_map_point_props_edd = NULL;
|
||||
|
||||
static struct {
|
||||
Clouseau_Object_Type u;
|
||||
const char *name;
|
||||
} eet_props_mapping[] = {
|
||||
/* As eet_mapping */
|
||||
{ CLOUSEAU_OBJ_TYPE_OTHER, "CLOUSEAU_OBJ_TYPE_OTHER" },
|
||||
{ CLOUSEAU_OBJ_TYPE_ELM, "CLOUSEAU_OBJ_TYPE_ELM" },
|
||||
{ CLOUSEAU_OBJ_TYPE_TEXT, "CLOUSEAU_OBJ_TYPE_TEXT" },
|
||||
{ CLOUSEAU_OBJ_TYPE_IMAGE, "CLOUSEAU_OBJ_TYPE_IMAGE" },
|
||||
{ CLOUSEAU_OBJ_TYPE_EDJE, "CLOUSEAU_OBJ_TYPE_EDJE" },
|
||||
{ CLOUSEAU_OBJ_TYPE_TEXTBLOCK, "CLOUSEAU_OBJ_TYPE_TEXTBLOCK" },
|
||||
{ CLOUSEAU_OBJ_TYPE_UNKNOWN, NULL }
|
||||
};
|
||||
|
||||
static const char *
|
||||
_clouseau_props_union_type_get(const void *data, Eina_Bool *unknow)
|
||||
{ /* _union_type_get */
|
||||
const Clouseau_Object_Type *u = data;
|
||||
int i;
|
||||
|
||||
if (unknow)
|
||||
*unknow = EINA_FALSE;
|
||||
|
||||
for (i = 0; eet_props_mapping[i].name != NULL; ++i)
|
||||
if (*u == eet_props_mapping[i].u)
|
||||
return eet_props_mapping[i].name;
|
||||
|
||||
if (unknow)
|
||||
*unknow = EINA_TRUE;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_clouseau_props_union_type_set(const char *type, void *data, Eina_Bool unknow)
|
||||
{ /* same as _union_type_set */
|
||||
Clouseau_Object_Type *u = data;
|
||||
int i;
|
||||
|
||||
if (unknow)
|
||||
return EINA_FALSE;
|
||||
|
||||
for (i = 0; eet_props_mapping[i].name != NULL; ++i)
|
||||
if (strcmp(eet_props_mapping[i].name, type) == 0)
|
||||
{
|
||||
*u = eet_props_mapping[i].u;
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_elm_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Elm_Props);
|
||||
clouseau_elm_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"type", type, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"style", style, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"scale", scale, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"has_focus", has_focus, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"is_disabled", is_disabled, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"is_mirrored", is_mirrored, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_elm_edd, Clouseau_Elm_Props,
|
||||
"is_mirrored_automatic", is_mirrored_automatic, EET_T_UCHAR);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_text_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Evas_Text_Props);
|
||||
clouseau_text_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"font", font, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"size", size, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"source", source, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_text_edd, Clouseau_Evas_Text_Props,
|
||||
"text", text, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_image_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Evas_Image_Props);
|
||||
clouseau_image_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"file", file, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"key", key, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"source", source, EET_T_UINT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_image_edd, Clouseau_Evas_Image_Props,
|
||||
"load_err", load_err, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_edje_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Edje_Props);
|
||||
clouseau_edje_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_edje_edd, Clouseau_Edje_Props,
|
||||
"file", file, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_edje_edd, Clouseau_Edje_Props,
|
||||
"group", group, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_edje_edd, Clouseau_Edje_Props,
|
||||
"load_err", load_err, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_textblock_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Evas_Textblock_Props);
|
||||
clouseau_textblock_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_textblock_edd, Clouseau_Evas_Textblock_Props,
|
||||
"style", style, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_textblock_edd, Clouseau_Evas_Textblock_Props,
|
||||
"text", text, EET_T_STRING);
|
||||
}
|
||||
|
||||
static void
|
||||
_clouseau_map_point_props_desc_make(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc,
|
||||
Clouseau_Evas_Map_Point_Props);
|
||||
|
||||
clouseau_map_point_props_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_map_point_props_edd,
|
||||
Clouseau_Evas_Map_Point_Props, "x", x, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_map_point_props_edd,
|
||||
Clouseau_Evas_Map_Point_Props, "y", y, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_map_point_props_edd,
|
||||
Clouseau_Evas_Map_Point_Props, "z", z, EET_T_INT);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
clouseau_data_descriptors_legacy_init(void)
|
||||
{
|
||||
Eet_Data_Descriptor_Class eddc;
|
||||
|
||||
EET_EINA_STREAM_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Object);
|
||||
clouseau_object_edd = eet_data_descriptor_stream_new(&eddc);
|
||||
|
||||
/* START - evas_props Struct desc */
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.name", evas_props.name, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.bt", evas_props.bt, EET_T_STRING);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.layer", evas_props.layer, EET_T_SHORT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.x", evas_props.x, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.y", evas_props.y, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.w", evas_props.w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.h", evas_props.h, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.scale", evas_props.scale, EET_T_DOUBLE);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.min_w", evas_props.min_w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.min_h", evas_props.min_h, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.max_w", evas_props.max_w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.max_h", evas_props.max_h, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.req_w", evas_props.req_w, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.req_h", evas_props.req_h, EET_T_INT);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.align_x", evas_props.align_x, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.align_y", evas_props.align_y, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.weight_x", evas_props.weight_x, EET_T_DOUBLE);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.weight_y", evas_props.weight_y, EET_T_DOUBLE);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.r", evas_props.r, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.g", evas_props.g, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.b", evas_props.b, EET_T_INT);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.a", evas_props.a, EET_T_INT);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.pass_events", evas_props.pass_events, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.repeat_events", evas_props.repeat_events, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.propagate_events", evas_props.propagate_events, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.has_focus", evas_props.has_focus, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.is_clipper", evas_props.is_clipper, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.is_visible", evas_props.is_visible, EET_T_UCHAR);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.clipper", evas_props.clipper, EET_T_ULONG_LONG);
|
||||
EET_DATA_DESCRIPTOR_ADD_BASIC(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.mode", evas_props.mode, EET_T_INT);
|
||||
|
||||
_clouseau_elm_desc_make();
|
||||
_clouseau_text_desc_make();
|
||||
_clouseau_image_desc_make();
|
||||
_clouseau_edje_desc_make();
|
||||
_clouseau_textblock_desc_make();
|
||||
|
||||
_clouseau_map_point_props_desc_make();
|
||||
EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY(clouseau_object_edd, Clouseau_Object,
|
||||
"evas_props.points", evas_props.points,
|
||||
clouseau_map_point_props_edd);
|
||||
|
||||
/* for union */
|
||||
EET_EINA_FILE_DATA_DESCRIPTOR_CLASS_SET(&eddc, Clouseau_Extra_Props);
|
||||
eddc.func.type_get = _clouseau_props_union_type_get;
|
||||
eddc.func.type_set = _clouseau_props_union_type_set;
|
||||
clouseau_union_edd = eet_data_descriptor_file_new(&eddc);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_ELM", clouseau_elm_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_TEXT",
|
||||
clouseau_text_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_IMAGE",
|
||||
clouseau_image_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_EDJE",
|
||||
clouseau_edje_edd);
|
||||
EET_DATA_DESCRIPTOR_ADD_MAPPING(clouseau_union_edd,
|
||||
"CLOUSEAU_OBJ_TYPE_TEXTBLOCK",
|
||||
clouseau_textblock_edd);
|
||||
|
||||
EET_DATA_DESCRIPTOR_ADD_UNION(clouseau_object_edd, Clouseau_Object,
|
||||
"u", extra_props.u,
|
||||
extra_props.type, clouseau_union_edd);
|
||||
}
|
||||
|
||||
void
|
||||
clouseau_data_descriptors_legacy_shutdown(void)
|
||||
{
|
||||
eet_data_descriptor_free(clouseau_object_edd);
|
||||
eet_data_descriptor_free(clouseau_elm_edd);
|
||||
eet_data_descriptor_free(clouseau_text_edd);
|
||||
eet_data_descriptor_free(clouseau_image_edd);
|
||||
eet_data_descriptor_free(clouseau_edje_edd);
|
||||
eet_data_descriptor_free(clouseau_textblock_edd);
|
||||
eet_data_descriptor_free(clouseau_union_edd);
|
||||
eet_data_descriptor_free(clouseau_map_point_props_edd);
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
#ifndef _CLOUSEAU_DATA_LEGACY_H
|
||||
#define _CLOUSEAU_DATA_LEGACY_H
|
||||
|
||||
#include "clouseau_private.h"
|
||||
|
||||
extern Eet_Data_Descriptor *clouseau_object_edd;
|
||||
extern Eet_Data_Descriptor *clouseau_union_edd;
|
||||
void clouseau_data_descriptors_legacy_init(void);
|
||||
void clouseau_data_descriptors_legacy_shutdown(void);
|
||||
|
||||
#endif
|
|
@ -155,7 +155,6 @@ struct _Clouseau_Tree_Item
|
|||
Eina_Bool is_visible;
|
||||
};
|
||||
|
||||
Eet_Data_Descriptor *clouseau_object_desc_make(void);
|
||||
void clouseau_object_desc_shutdown(void);
|
||||
|
||||
/* Public */
|
||||
|
|
Loading…
Reference in New Issue