diff --git a/legacy/evas/src/lib/Evas.h b/legacy/evas/src/lib/Evas.h index 8c1e8f27c4..92800a0e4a 100644 --- a/legacy/evas/src/lib/Evas.h +++ b/legacy/evas/src/lib/Evas.h @@ -8000,7 +8000,9 @@ EAPI Eina_List *evas_object_table_children_get (cons EAPI int evas_object_filter_param_int_get (Evas_Object *o, const char *param); EAPI Eina_Bool evas_object_filter_param_str_set (Evas_Object *o, const char *param, const char *val); - EAPI Eina_Bool evas_object_filter_param_obj_set (Evas_Object *o, const char *param, Evas_Object *); + EAPI const char *evas_object_filter_param_str_get (Evas_Object *o, const char *param); + EAPI Eina_Bool evas_object_filter_param_obj_set (Evas_Object *o, const char *param, Evas_Object *val); + EAPI Evas_Object *evas_object_filter_param_obj_get (Evas_Object *o, const char *param); /** * Set a float parameter of a filter. * @@ -8012,7 +8014,8 @@ EAPI Eina_List *evas_object_table_children_get (cons * @param EINA_TRUE if at least one parameter was set, EINA_FALSE otherwise. */ EAPI Eina_Bool evas_object_filter_param_float_set(Evas_Object *o, const char *param, double val); - + EAPI double evas_object_filter_param_float_get(Evas_Object *o, const char *param); + /** * @defgroup Evas_Cserve Shared Image Cache Server * diff --git a/legacy/evas/src/lib/canvas/evas_filter.c b/legacy/evas/src/lib/canvas/evas_filter.c index 5eddb417f4..cd084cf9c0 100644 --- a/legacy/evas/src/lib/canvas/evas_filter.c +++ b/legacy/evas/src/lib/canvas/evas_filter.c @@ -297,6 +297,13 @@ evas_object_filter_param_str_set(Evas_Object *o __UNUSED__, return EINA_FALSE; } +EAPI const char * +evas_object_filter_param_str_get(Evas_Object *o __UNUSED__, + const char *param __UNUSED__) +{ + return NULL; +} + EAPI Eina_Bool evas_object_filter_param_obj_set(Evas_Object *o __UNUSED__, const char *param __UNUSED__, @@ -305,6 +312,13 @@ evas_object_filter_param_obj_set(Evas_Object *o __UNUSED__, return EINA_FALSE; } +EAPI Evas_Object * +evas_object_filter_param_obj_fet(Evas_Object *o __UNUSED__, + const char *param __UNUSED__) +{ + return NULL; +} + EAPI Eina_Bool evas_object_filter_param_float_set(Evas_Object *o, const char *param, double val) @@ -339,6 +353,35 @@ evas_object_filter_param_float_set(Evas_Object *o, const char *param, return rv; } +EAPI double +evas_object_filter_param_float_get(Evas_Object *o, const char *param) +{ + char *data; + const struct fieldinfo *fields; + double val; + int i; + + MAGIC_CHECK(o, Evas_Object, MAGIC_OBJ); + return EINA_FALSE; + MAGIC_CHECK_END(); + + if ((!o->filter) || (!o->filter->data)) return -1; + + fields = blurfields; + data = o->filter->data; + + for (i = 0; fields[i].field; i++) + { + if (!strcmp(fields[i].field, param)) + { + if (fields[i].type != TYPE_FLOAT) continue; + val = *(double *)(data + fields[i].offset); + return val; + } + } + return -1; +} +