224 lines
8.0 KiB
C
224 lines
8.0 KiB
C
#ifndef EDJE_CONVERT_H__
|
|
# define EDJE_CONVERT_H__
|
|
|
|
typedef struct _Old_Edje_Image_Directory Old_Edje_Image_Directory; /**< An old Edje image directory */
|
|
typedef struct _Old_Edje_Font_Directory Old_Edje_Font_Directory; /**< An old Edje font directory */
|
|
typedef struct _Old_Edje_External_Directory Old_Edje_External_Directory; /**< An old Edje external directory */
|
|
typedef struct _Old_Edje_Part Old_Edje_Part; /**< An old Edje part */
|
|
typedef struct _Old_Edje_Part_Collection Old_Edje_Part_Collection; /**< An old Edje part collection */
|
|
typedef struct _Old_Edje_Part_Description Old_Edje_Part_Description; /**< An old Edje part description */
|
|
typedef struct _Old_Edje_Part_Description_Spec_Image Old_Edje_Part_Description_Spec_Image; /**< An old Edje part description image */
|
|
typedef struct _Edje_Data Edje_Data; /**< A key/value tuple */
|
|
|
|
|
|
/**
|
|
* @struct _Edje_Data
|
|
* @brief A structure that stores a key/value tuple.
|
|
*/
|
|
struct _Edje_Data
|
|
{
|
|
const char *key; /**< key name */
|
|
char *value; /**< contents value */
|
|
};
|
|
|
|
/*----------*/
|
|
|
|
/**
|
|
* @struct _Old_Edje_Font_Directory
|
|
* @brief A structure that stores old font directory entries.
|
|
*/
|
|
struct _Old_Edje_Font_Directory
|
|
{
|
|
Eina_List *entries; /**< a list of Edje_Font_Directory_Entry */
|
|
};
|
|
|
|
/**
|
|
* @struct _Old_Edje_Image_Directory
|
|
* @brief A structure that stores old image directory entries.
|
|
*/
|
|
struct _Old_Edje_Image_Directory
|
|
{
|
|
Eina_List *entries; /**< a list of Edje_Image_Directory_Entry */
|
|
Eina_List *sets; /**< a list of Edje_Image_Directory_Set */
|
|
};
|
|
|
|
/**
|
|
* @struct _Old_Edje_External_Directory
|
|
* @brief A structure that stores old external directory entries.
|
|
*/
|
|
struct _Old_Edje_External_Directory
|
|
{
|
|
Eina_List *entries; /**< a list of Edje_External_Directory_Entry */
|
|
};
|
|
|
|
/**
|
|
* @struct _Old_Edje_File
|
|
* @brief A structure that stores old Edje files information.
|
|
*/
|
|
struct _Old_Edje_File
|
|
{
|
|
const char *path; /**< path */
|
|
time_t mtime; /**< modification time */
|
|
|
|
Old_Edje_External_Directory *external_dir; /**< external directory */
|
|
Old_Edje_Font_Directory *font_dir; /**< fonts directory */
|
|
Old_Edje_Image_Directory *image_dir; /**< images directory */
|
|
Edje_Part_Collection_Directory *collection_dir; /**< collection directory */
|
|
Eina_List *data; /**< list of Edje_Data */
|
|
Eina_List *styles; /**< list of Edje_Style */
|
|
Eina_List *color_classes; /**< list of Edje_Color_Class */
|
|
Eina_List *text_classes; /**< list of Edje_Text_Class */
|
|
Eina_List *size_classes; /**< list of Edje_Size_Class */
|
|
|
|
const char *compiler; /**< compiler name */
|
|
int version; /**< Edje version */
|
|
int feature_ver; /**< features version */
|
|
};
|
|
|
|
/**
|
|
* @struct _Old_Edje_Part_Collection
|
|
* @brief A structure that stores old Edje part collection information.
|
|
*/
|
|
struct _Old_Edje_Part_Collection
|
|
{
|
|
Eina_List *programs; /**< a list of Edje_Program */
|
|
Eina_List *parts; /**< a list of Edje_Part */
|
|
Eina_List *data; /**< a list of Edje_Data */
|
|
|
|
int id; /**< the collection id */
|
|
|
|
Eina_Hash *alias; /**< aliasing part*/
|
|
|
|
struct {
|
|
Edje_Size min; /**< minimum size */
|
|
Edje_Size max; /**< maximum size */
|
|
} prop;
|
|
|
|
int references; /**< references count */
|
|
#ifdef EDJE_PROGRAM_CACHE
|
|
struct {
|
|
Eina_Hash *no_matches;
|
|
Eina_Hash *matches;
|
|
} prog_cache;
|
|
#endif
|
|
|
|
Embryo_Program *script; /**< all the embryo script code for this group */
|
|
const char *part; /**< part name */
|
|
|
|
unsigned char lua_script_only; /** LUA script only */
|
|
|
|
unsigned char checked : 1; /**< contents checked and registered */
|
|
};
|
|
|
|
/**
|
|
* @struct _Old_Edje_Part
|
|
* @brief A structure that stores old Edje part information.
|
|
*/
|
|
struct _Old_Edje_Part
|
|
{
|
|
const char *name; /**< the name if any of the part */
|
|
Old_Edje_Part_Description *default_desc; /**< the part descriptor for default */
|
|
Eina_List *other_desc; /**< other possible descriptors */
|
|
const char *source, *source2, *source3, *source4, *source5, *source6;
|
|
int id; /**< its id number */
|
|
int clip_to_id; /**< the part id to clip this one to */
|
|
Edje_Part_Dragable dragable; /**< dragable part */
|
|
Eina_List *items; /**< packed items for box and table */
|
|
unsigned char type; /**< what type (image, rect, text) */
|
|
unsigned char effect; /**< 0 = plain... */
|
|
unsigned char mouse_events; /**< it will affect/respond to mouse events */
|
|
unsigned char repeat_events; /**< it will repeat events to objects below */
|
|
Evas_Event_Flags ignore_flags; /**< ignore flags */
|
|
Evas_Event_Flags mask_flags; /**< mask flags */
|
|
unsigned char scale; /**< should certain properties scale with edje scale factor? */
|
|
unsigned char precise_is_inside; /**< whether is precisely inside */
|
|
unsigned char use_alternate_font_metrics; /**< use alternate font metrics */
|
|
unsigned char pointer_mode; /**< pointer mode */
|
|
unsigned char entry_mode; /**< entry mode */
|
|
unsigned char select_mode; /**< entry selection mode */
|
|
unsigned char multiline; /**< multiline enabled */
|
|
Edje_Part_Api api; /**< part API */
|
|
unsigned char required; /**< required */
|
|
};
|
|
|
|
/**
|
|
* @struct _Old_Edje_Part_Description_Spec_Image
|
|
* @brief A structure that stores old Edje part description image information.
|
|
*/
|
|
struct _Old_Edje_Part_Description_Spec_Image
|
|
{
|
|
Eina_List *tween_list; /**< list of Edje_Part_Image_Id */
|
|
int id; /**< the image id to use */
|
|
int scale_hint; /**< evas scale hint */
|
|
Eina_Bool set; /**< if image condition it's content */
|
|
|
|
Edje_Part_Description_Spec_Border border; /**< border settings */
|
|
Edje_Part_Description_Spec_Fill fill; /**< fill settings */
|
|
};
|
|
|
|
/**
|
|
* @struct _Old_Edje_Part_Description
|
|
* @brief A structure that stores old Edje part description information.
|
|
*/
|
|
struct _Old_Edje_Part_Description
|
|
{
|
|
Edje_Part_Description_Common common; /**< common part description */
|
|
Old_Edje_Part_Description_Spec_Image image; /**< image part description */
|
|
Edje_Part_Description_Spec_Text text; /**< text part description */
|
|
Edje_Part_Description_Spec_Box box; /**< box part description */
|
|
Edje_Part_Description_Spec_Table table; /**< table part description */
|
|
|
|
Eina_List *external_params; /**< list of Edje_External_Param */
|
|
};
|
|
|
|
/**
|
|
* Convert old Edje files into new Edje files.
|
|
*
|
|
* @param file an Eet_File to write the new Edje file to
|
|
* @param oedf the old Edje file
|
|
*
|
|
* @return an Edje_File pointer to the converted file
|
|
*/
|
|
Edje_File *_edje_file_convert(Eet_File *file, Old_Edje_File *oedf);
|
|
|
|
/**
|
|
* Convert old edje part collection into the new Edje file.
|
|
*
|
|
* @param file an Eet_File to write the new Edje file to
|
|
* @param oedc The Old edje part collection
|
|
*
|
|
* @return a new Edje part collection
|
|
*/
|
|
Edje_Part_Collection *_edje_collection_convert(Edje_File *file,
|
|
Old_Edje_Part_Collection *oedc);
|
|
|
|
/**
|
|
* Convert old Edje part description into new format.
|
|
*
|
|
* @param type The edje par description common type
|
|
* @param ce an edje collection directory entry
|
|
* @param the old edje part description
|
|
*
|
|
* @return a new edje part description common
|
|
*/
|
|
Edje_Part_Description_Common *_edje_description_convert(int type,
|
|
Edje_Part_Collection_Directory_Entry *ce,
|
|
Old_Edje_Part_Description *oed);
|
|
|
|
/**
|
|
* Get the current Edje file.
|
|
*
|
|
* @return the current Edje file
|
|
*/
|
|
const Edje_File *_edje_file_get(void);
|
|
|
|
/**
|
|
* Set the current Edje file.
|
|
*
|
|
* @param edf the Edje file to set
|
|
*
|
|
*/
|
|
void _edje_file_set(const Edje_File *edf);
|
|
|
|
#endif
|