From 8c1933c388db6a7ddbb0915a8a92dd9455ab0b5b Mon Sep 17 00:00:00 2001 From: Tom Hacohen Date: Wed, 17 Feb 2016 12:11:46 +0000 Subject: [PATCH] Evas image: Migrate all the remaining types to Eolian. --- src/lib/evas/Evas_Common.h | 33 ------------------------------ src/lib/evas/canvas/evas_image.eo | 28 ++++++++++++++------------ src/lib/evas/canvas/evas_types.eot | 41 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 56 insertions(+), 46 deletions(-) diff --git a/src/lib/evas/Evas_Common.h b/src/lib/evas/Evas_Common.h index 5da6437..9713e0e 100644 --- a/src/lib/evas/Evas_Common.h +++ b/src/lib/evas/Evas_Common.h @@ -172,7 +172,6 @@ typedef Eo Efl_VG; typedef void Evas_Performance; /**< An Evas Performance handle */ typedef struct _Evas_Smart Evas_Smart; /**< An Evas Smart Object handle */ -typedef struct _Evas_Native_Surface Evas_Native_Surface; /**< A generic datatype for engine specific native surface information */ /** * @typedef Evas_Video_Surface @@ -427,44 +426,12 @@ typedef enum _Evas_Video_Surface_Caps #define evas_object_size_hint_expand_set evas_object_size_hint_weight_set /**< Convenience macro to make it easier to understand that weight is also used for expand properties */ #define evas_object_size_hint_expand_get evas_object_size_hint_weight_get /**< Convenience macro to make it easier to understand that weight is also used for expand properties */ -typedef enum _Evas_Border_Fill_Mode -{ - EVAS_BORDER_FILL_NONE = 0, /**< Image's center region is @b not to be rendered */ - EVAS_BORDER_FILL_DEFAULT = 1, /**< Image's center region is to be @b blended with objects underneath it, if it has transparency. This is the default behavior for image objects */ - EVAS_BORDER_FILL_SOLID = 2 /**< Image's center region is to be made solid, even if it has transparency on it */ -} Evas_Border_Fill_Mode; /**< How an image's center region (the complement to the border region) should be rendered by Evas */ - typedef enum _Evas_Engine_Render_Mode { EVAS_RENDER_MODE_BLOCKING = 0, /**< The rendering is blocking mode*/ EVAS_RENDER_MODE_NONBLOCKING = 1, /**< The rendering is non blocking mode*/ } Evas_Engine_Render_Mode; /**< behaviour of the renderer*/ -typedef enum _Evas_Image_Content_Hint -{ - EVAS_IMAGE_CONTENT_HINT_NONE = 0, /**< No hint at all */ - EVAS_IMAGE_CONTENT_HINT_DYNAMIC = 1, /**< The contents will change over time */ - EVAS_IMAGE_CONTENT_HINT_STATIC = 2 /**< The contents won't change over time */ -} Evas_Image_Content_Hint; /**< How an image's data is to be treated by Evas, for optimization */ - -/** - * Possible orientation options for evas_object_image_orient_set(). - * @brief Types of orientation available - * @since 1.14 - */ -typedef enum _Evas_Image_Orient -{ - EVAS_IMAGE_ORIENT_NONE = 0, /**< no orientation change */ - EVAS_IMAGE_ORIENT_0 = 0, /**< no orientation change */ - EVAS_IMAGE_ORIENT_90 = 1, /**< orient 90 degrees clockwise*/ - EVAS_IMAGE_ORIENT_180 = 2, /**< orient 180 degrees clockwise */ - EVAS_IMAGE_ORIENT_270 = 3, /**< rotate 90 degrees counter-clockwise (i.e. 270 degrees clockwise)*/ - EVAS_IMAGE_FLIP_HORIZONTAL = 4, /**< flip image horizontally */ - EVAS_IMAGE_FLIP_VERTICAL = 5, /**< flip image vertically */ - EVAS_IMAGE_FLIP_TRANSPOSE = 6, /**< flip image along the y = (width - x) line (bottom-left to top-right) */ - EVAS_IMAGE_FLIP_TRANSVERSE = 7 /**< flip image along the y = x line (top-left to bottom-right) */ -} Evas_Image_Orient; - typedef enum _Evas_Device_Class { EVAS_DEVICE_CLASS_NONE, /**< Not a device @since 1.8 */ diff --git a/src/lib/evas/canvas/evas_image.eo b/src/lib/evas/canvas/evas_image.eo index cb5da1a..a14f183 100644 --- a/src/lib/evas/canvas/evas_image.eo +++ b/src/lib/evas/canvas/evas_image.eo @@ -1,3 +1,5 @@ +type @extern Evas_Object_Image_Pixels_Get_Cb: __undefined_type; /* FIXME: func pointers are not supported. */ + class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, Evas.Filter) { legacy_prefix: evas_object_image; @@ -113,8 +115,8 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, ]] } values { - hint: Evas_Image_Content_Hint; [[The content hint value, one of - the #Evas_Image_Content_Hint ones.]] + hint: Evas.Image_Content_Hint; [[The content hint value, one of + the @Evas.Image_Content_Hint ones.]] } } @property load_region { @@ -264,7 +266,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, @since 1.1 ]] values { - surf: Evas_Video_Surface*; [[The new video surface.]] + surf: Evas.Video_Surface*; [[The new video surface.]] } } get { @@ -273,7 +275,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, @since 1.1 ]] values { - surf: const(Evas_Video_Surface)*; [[The new video surface.]] + surf: const(Evas.Video_Surface)*; [[The new video surface.]] } } } @@ -315,7 +317,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, This function sets how the center part of the image object's source image is to be drawn, which must be one of the values - in #Evas_Border_Fill_Mode. By center we mean the complementary + in @Evas.Border_Fill_Mode. By center we mean the complementary part of that defined by @.border.set. This one is very useful for making frames and decorations. You would most probably also be using a filled image (as in @.filled.set) to use as @@ -328,7 +330,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, ]] } values { - fill: Evas_Border_Fill_Mode; [[Fill mode of the center region + fill: Evas.Border_Fill_Mode; [[Fill mode of the center region of $obj (a value in #Evas_Border_Fill_Mode).]] } } @@ -380,7 +382,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, ]] } values { - surf: Evas_Native_Surface* @nonull; [[The native surface.]] + surf: Evas.Native_Surface* @nonull; [[The native surface.]] } } @property load_scale_down { @@ -418,8 +420,8 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, ]] } values { - hint: Evas_Image_Scale_Hint; [[The scale hint, a value in - #Evas_Image_Scale_Hint.]] + hint: Evas.Image_Scale_Hint; [[The scale hint, a value in + @Evas.Image_Scale_Hint.]] } } @property source_events { @@ -536,9 +538,9 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, [[Retrieves a number representing any error that occurred during the last loading of the given image object's source image. ]] - return: Evas_Load_Error @warn_unused; [[ + return: Evas.Load_Error @warn_unused; [[ A value giving the last error that occurred. It should be - one of the #Evas_Load_Error values. #EVAS_LOAD_ERROR_NONE + one of the @Evas.Load_Error values. #EVAS_LOAD_ERROR_NONE is returned if there was no error. ]] } @@ -589,7 +591,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, @since 1.1 ]] - return: Evas_Image_Animated_Loop_Hint; [[Loop type of the image object.]] + return: Evas.Image_Animated_Loop_Hint; [[Loop type of the image object.]] } } @property animated_loop_count { @@ -652,7 +654,7 @@ class Evas.Image (Evas.Object, Efl.File, Efl.Image, Efl.Gfx.Fill, Efl.Gfx.View, ]] } values { - orient: Evas_Image_Orient; [[The image orientation \@ref Evas_Image_Orient. + orient: Evas.Image_Orient; [[The image orientation \@ref Evas_Image_Orient. Default is #EVAS_IMAGE_ORIENT_NONE.]] } } diff --git a/src/lib/evas/canvas/evas_types.eot b/src/lib/evas/canvas/evas_types.eot index 9f7075f..bbd376f 100644 --- a/src/lib/evas/canvas/evas_types.eot +++ b/src/lib/evas/canvas/evas_types.eot @@ -1,3 +1,11 @@ +type @extern Evas.Load_Error: int; /* FIXME: Need to migrate emile. */ +type @extern Evas.Image_Scale_Hint: int; /* FIXME: Need to migrate emile. */ +type @extern Evas.Image_Animated_Loop_Hint: int; /* FIXME: Need to migrate emile. */ +struct @extern Evas.Video_Surface; /* FIXME: The structure is full of the unsupported func pointers. */ + +/* FIXME: Unsupported annonymous structures inside */ +struct Evas.Native_Surface; [[A generic datatype for engine specific native surface information]] + type Evas.Modifier_Mask: ullong; [[An Evas modifier mask type]] type Evas.Coord: int; [[A type for coordinates]] enum Evas.Aspect_Control { @@ -224,6 +232,39 @@ enum Evas.Callback_Type last [[kept as last element/sentinel -- not really an event]] } +enum Evas.Image_Content_Hint +{ + [[How an image's data is to be treated by Evas, for optimization]] + none = 0, [[No hint at all]] + dynamic = 1, [[The contents will change over time]] + static = 2 [[The contents won't change over time]] +} + +enum Evas.Image_Orient +{ + [[Possible orientation options for evas_object_image_orient_set(). + @since 1.14]] + legacy: evas_image; + orient_none = 0, [[no orientation change]] + orient_0 = 0, [[no orientation change]] + orient_90 = 1, [[orient 90 degrees clockwise]] + orient_180 = 2, [[orient 180 degrees clockwise]] + orient_270 = 3, [[rotate 90 degrees counter-clockwise (i.e. 270 degrees clockwise)]] + flip_horizontal = 4, [[flip image horizontally]] + flip_vertical = 5, [[flip image vertically]] + flip_transpose = 6, [[flip image along the y = (width - x) line (bottom-left to top-right)]] + flip_transverse = 7 [[flip image along the y = x line (top-left to bottom-right)]] +} + +enum Evas.Border_Fill_Mode +{ + [[How an image's center region (the complement to the border region) should be rendered by Evas]] + legacy: evas_border_fill; + none = 0, [[Image's center region is $b not to be rendered]] + default = 1, [[Image's center region is to be $b blended with objects underneath it, if it has transparency. This is the default behavior for image objects]] + solid = 2 [[Image's center region is to be made solid, even if it has transparency on it]] +} + struct Evas.Modifier; [[An opaque type containing information on which modifier keys are registered in an Evas canvas]] struct Evas.Lock; [[An opaque type containing information on which lock keys are registered in an Evas canvas]] struct Evas.Engine_Info; [[A generic Evas Engine information structure]] -- 2.7.4