sohyun pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=fa0384ed2c0f784d26f0bfbd4ff40940921768c4

commit fa0384ed2c0f784d26f0bfbd4ff40940921768c4
Author: Sohyun Kim <anna1014....@samsung.com>
Date:   Fri Apr 17 17:22:31 2015 +0900

    edje: refactor styles_del() logic like styles_add()
---
 src/lib/edje/edje_textblock_styles.c | 63 ++++++++++++------------------------
 1 file changed, 20 insertions(+), 43 deletions(-)

diff --git a/src/lib/edje/edje_textblock_styles.c 
b/src/lib/edje/edje_textblock_styles.c
index c496ce2..b294731 100644
--- a/src/lib/edje/edje_textblock_styles.c
+++ b/src/lib/edje/edje_textblock_styles.c
@@ -291,7 +291,7 @@ _edje_textblock_style_member_add(Edje *ed, Edje_Style *stl)
    Edje_Style_Tag *tag;
    Eina_List *l;
 
-   if (!stl) return ;
+   if (!stl) return;
 
    EINA_LIST_FOREACH(stl->tags, l, tag)
      {
@@ -300,6 +300,21 @@ _edje_textblock_style_member_add(Edje *ed, Edje_Style *stl)
      }
 }
 
+static inline void
+_edje_textblock_style_member_del(Edje *ed, Edje_Style *stl)
+{
+   Edje_Style_Tag *tag;
+   Eina_List *l;
+
+   if (!stl) return;
+
+   EINA_LIST_FOREACH(stl->tags, l, tag)
+     {
+        if (tag->text_class)
+          _edje_text_class_member_del(ed, tag->text_class);
+     }
+}
+
 void
 _edje_textblock_styles_add(Edje *ed, Edje_Real_Part *ep)
 {
@@ -340,53 +355,15 @@ _edje_textblock_styles_del(Edje *ed, Edje_Part *pt)
 
    desc = (Edje_Part_Description_Text *)pt->default_desc;
    style = edje_string_get(&desc->text.style);
-   if (style)
-     {
-        Eina_List *l;
-
-        EINA_LIST_FOREACH(ed->file->styles, l, stl)
-          {
-             if ((stl->name) && (!strcmp(stl->name, style))) break;
-             stl = NULL;
-          }
-     }
-   if (stl)
-     {
-        Edje_Style_Tag *tag;
-        Eina_List *l;
-
-        EINA_LIST_FOREACH(stl->tags, l, tag)
-          {
-             if (tag->text_class)
-               _edje_text_class_member_del(ed, tag->text_class);
-          }
-     }
+   stl = _edje_textblock_style_search(ed, style);
+   _edje_textblock_style_member_del(ed, stl);
 
    for (i = 0; i < pt->other.desc_count; ++i)
      {
         desc = (Edje_Part_Description_Text *)pt->other.desc[i];
         style = edje_string_get(&desc->text.style);
-        if (style)
-          {
-             Eina_List *l;
-
-             EINA_LIST_FOREACH(ed->file->styles, l, stl)
-               {
-                  if ((stl->name) && (!strcmp(stl->name, style))) break;
-                  stl = NULL;
-               }
-          }
-        if (stl)
-          {
-             Edje_Style_Tag *tag;
-             Eina_List *l;
-
-             EINA_LIST_FOREACH(stl->tags, l, tag)
-               {
-                  if (tag->text_class)
-                    _edje_text_class_member_del(ed, tag->text_class);
-               }
-          }
+        stl = _edje_textblock_style_search(ed, style);
+        _edje_textblock_style_member_del(ed, stl);
      }
 }
 

-- 


Reply via email to