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;

-- 


Reply via email to