rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=a8c51055e385d174dfeb267c177b96e40c086015
commit a8c51055e385d174dfeb267c177b96e40c086015 Author: Andrii Kroitor <an.kroi...@samsung.com> Date: Wed Nov 4 17:09:42 2015 +0200 diff: add FUNCTION_TYPE_STRING_STRING_DOUBLE_STRING_DOUBLE type --- src/bin/editor/diff.c | 18 ++++++++++++++++++ src/bin/editor/diff.h | 8 ++++++++ 2 files changed, 26 insertions(+) diff --git a/src/bin/editor/diff.c b/src/bin/editor/diff.c index 6686c43..a84289d 100644 --- a/src/bin/editor/diff.c +++ b/src/bin/editor/diff.c @@ -29,6 +29,8 @@ typedef Eina_Bool (* function_type_string_string_double_bool) (Evas_Object *, Ch const char *, const char *, double, Eina_Bool); typedef Eina_Bool (* function_type_string_string_double_string) (Evas_Object *, Change*, Eina_Bool, const char *, const char *, double, const char *); +typedef Eina_Bool (* function_type_string_string_double_string_double) (Evas_Object *, Change*, Eina_Bool, + const char *, const char *, double, const char *, double); typedef Eina_Bool (* function_type_string_string_double_int_int_int_int) (Evas_Object *, Change*, Eina_Bool, const char *, const char *, double, int, int, int, int); typedef Eina_Bool (* function_type_string_string_double_uchar) (Evas_Object *, Change*, Eina_Bool, @@ -87,6 +89,9 @@ _apply(Evas_Object *obj, Function_Info *fi) case FUNCTION_TYPE_STRING_STRING_DOUBLE_STRING: return ((function_type_string_string_double_string)fi->function)(obj, NULL, false, fi->args.type_ssds.s1, fi->args.type_ssds.s2, fi->args.type_ssds.d3, fi->args.type_ssds.s4); + case FUNCTION_TYPE_STRING_STRING_DOUBLE_STRING_DOUBLE: + return ((function_type_string_string_double_string_double)fi->function)(obj, NULL, false, + fi->args.type_ssdsd.s1, fi->args.type_ssdsd.s2, fi->args.type_ssdsd.d3, fi->args.type_ssdsd.s4, fi->args.type_ssdsd.d5); case FUNCTION_TYPE_STRING_STRING_DOUBLE_INT_INT_INT_INT: return ((function_type_string_string_double_int_int_int_int)fi->function)(obj, NULL, false, fi->args.type_ssdiiii.s1, fi->args.type_ssdiiii.s2, fi->args.type_ssdiiii.d3, fi->args.type_ssdiiii.i4, fi->args.type_ssdiiii.i5, fi->args.type_ssdiiii.i6, fi->args.type_ssdiiii.i7); @@ -204,6 +209,14 @@ diff_update(Diff *diff, Diff *new_diff) eina_stringshare_ref(new_diff->redo.args.type_ssds.s2); eina_stringshare_ref(new_diff->redo.args.type_ssds.s4); break; + case FUNCTION_TYPE_STRING_STRING_DOUBLE_STRING_DOUBLE: + eina_stringshare_del(diff->redo.args.type_ssdsd.s1); + eina_stringshare_del(diff->redo.args.type_ssdsd.s2); + eina_stringshare_del(diff->redo.args.type_ssdsd.s4); + eina_stringshare_ref(new_diff->redo.args.type_ssdsd.s1); + eina_stringshare_ref(new_diff->redo.args.type_ssdsd.s2); + eina_stringshare_ref(new_diff->redo.args.type_ssdsd.s4); + break; case FUNCTION_TYPE_STRING_STRING_DOUBLE_INT_INT_INT_INT: eina_stringshare_del(diff->redo.args.type_ssdiiii.s1); eina_stringshare_del(diff->redo.args.type_ssdiiii.s2); @@ -332,6 +345,11 @@ diff_free(Diff *diff) eina_stringshare_del(diff->redo.args.type_ssds.s2); eina_stringshare_del(diff->redo.args.type_ssds.s4); break; + case FUNCTION_TYPE_STRING_STRING_DOUBLE_STRING_DOUBLE: + eina_stringshare_del(diff->redo.args.type_ssdsd.s1); + eina_stringshare_del(diff->redo.args.type_ssdsd.s2); + eina_stringshare_del(diff->redo.args.type_ssdsd.s4); + break; case FUNCTION_TYPE_STRING_STRING_DOUBLE_INT_INT_INT_INT: eina_stringshare_del(diff->redo.args.type_ssdiiii.s1); eina_stringshare_del(diff->redo.args.type_ssdiiii.s2); diff --git a/src/bin/editor/diff.h b/src/bin/editor/diff.h index 0678712..57ea271 100644 --- a/src/bin/editor/diff.h +++ b/src/bin/editor/diff.h @@ -28,6 +28,7 @@ typedef enum { FUNCTION_TYPE_STRING_STRING_DOUBLE_INT, FUNCTION_TYPE_STRING_STRING_DOUBLE_BOOL, FUNCTION_TYPE_STRING_STRING_DOUBLE_STRING, + FUNCTION_TYPE_STRING_STRING_DOUBLE_STRING_DOUBLE, FUNCTION_TYPE_STRING_STRING_DOUBLE_INT_INT_INT_INT, FUNCTION_TYPE_STRING_STRING_DOUBLE_UCHAR, FUNCTION_TYPE_STRING_EDJETEXTEFFECT, @@ -84,6 +85,13 @@ struct _Function_Info { Eina_Stringshare *s1; Eina_Stringshare *s2; double d3; + Eina_Stringshare *s4; + double d5; + } type_ssdsd; + struct { + Eina_Stringshare *s1; + Eina_Stringshare *s2; + double d3; int i4; int i5; int i6; --