rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=337468671190b27f3a9dab7049f1f3dad0f22cbc
commit 337468671190b27f3a9dab7049f1f3dad0f22cbc Author: Andrii Kroitor <an.kroi...@samsung.com> Date: Tue Jan 5 16:10:37 2016 +0200 diff: add FUNCTION_TYPE_STRING_EDJEACTIONTYPE --- src/bin/editor/diff.c | 12 ++++++++++++ src/bin/editor/diff.h | 5 +++++ 2 files changed, 17 insertions(+) diff --git a/src/bin/editor/diff.c b/src/bin/editor/diff.c index 58e56b0..804429c 100644 --- a/src/bin/editor/diff.c +++ b/src/bin/editor/diff.c @@ -70,6 +70,8 @@ typedef Eina_Bool (* function_type_string_evasobjectpointermode) (Evas_Object *, const char *, Evas_Object_Pointer_Mode); typedef Eina_Bool (* function_type_string_uchar) (Evas_Object *, Change*, Eina_Bool, const char *, unsigned char); +typedef Eina_Bool (* function_type_string_edjeactiontype) (Evas_Object *, Change*, Eina_Bool, + const char *, Edje_Action_Type); static Eina_Bool _apply(Evas_Object *obj, Function_Info *fi) @@ -154,6 +156,9 @@ _apply(Evas_Object *obj, Function_Info *fi) case FUNCTION_TYPE_STRING_UCHAR: return ((function_type_string_uchar)fi->function)(obj, NULL, false, fi->args.type_suc.s1, fi->args.type_suc.uc2); + case FUNCTION_TYPE_STRING_EDJEACTIONTYPE: + return ((function_type_string_edjeactiontype)fi->function)(obj, NULL, false, + fi->args.type_seat.s1, fi->args.type_seat.eat2); /* Don't add 'case default:'. Compiler should warn about new values in enum */ } @@ -326,6 +331,10 @@ diff_update(Diff *diff, Diff *new_diff) eina_stringshare_del(diff->redo.args.type_suc.s1); eina_stringshare_ref(new_diff->redo.args.type_suc.s1); break; + case FUNCTION_TYPE_STRING_EDJEACTIONTYPE: + eina_stringshare_del(diff->redo.args.type_seat.s1); + eina_stringshare_ref(new_diff->redo.args.type_seat.s1); + break; /* Do not forget to replace previous stringshares in existing_diff.redo if needed. */ /* Don't add 'case default:'. Compiler should warn about new values in enum */ @@ -435,6 +444,9 @@ diff_free(Diff *diff) case FUNCTION_TYPE_STRING_UCHAR: eina_stringshare_del(diff->redo.args.type_suc.s1); break; + case FUNCTION_TYPE_STRING_EDJEACTIONTYPE: + eina_stringshare_del(diff->redo.args.type_seat.s1); + break; /* Do not forget to clean stringshares */ /* Don't add 'case default:'. Compiler should warn about new values in enum */ } diff --git a/src/bin/editor/diff.h b/src/bin/editor/diff.h index 5ee2dca..396bc88 100644 --- a/src/bin/editor/diff.h +++ b/src/bin/editor/diff.h @@ -49,6 +49,7 @@ typedef enum { FUNCTION_TYPE_STRING_EDJEEDITENTRYMODE, FUNCTION_TYPE_STRING_EVASOBJECTPOINTERMODE, FUNCTION_TYPE_STRING_UCHAR, + FUNCTION_TYPE_STRING_EDJEACTIONTYPE, } Function_Type; struct _Function_Info { @@ -181,6 +182,10 @@ struct _Function_Info { Eina_Stringshare *s1; unsigned char uc2; } type_suc; + struct { + Eina_Stringshare *s1; + Edje_Action_Type eat2; + } type_seat; } args; /**< function args not including Evas_Object * */ }; --