ryuan pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=388829387e4fccbb8187abbd5c14220ef9496a8e

commit 388829387e4fccbb8187abbd5c14220ef9496a8e
Author: Ryuan Choi <[email protected]>
Date:   Fri Feb 7 01:11:58 2014 +0900

    datetime: Simplify the nested loop in _datetime_items_get()
---
 src/lib/elm_datetime.c | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index d0f9618..9beadf7 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -389,26 +389,22 @@ _datetime_items_get(const Evas_Object *obj)
 {
    Eina_List *items = NULL;
    Datetime_Field *field;
-   int loc = 0;
    unsigned int idx;
-   Eina_Bool visible[ELM_DATETIME_TYPE_COUNT];
+   Datetime_Field *sorted_fields[ELM_DATETIME_TYPE_COUNT];
 
    ELM_DATETIME_DATA_GET(obj, sd);
 
    for (idx = 0; idx < ELM_DATETIME_TYPE_COUNT; idx++)
      {
         field = sd->field_list + idx;
-        if (field->fmt_exist && field->visible) visible[idx] = EINA_TRUE;
-        else visible[idx] = EINA_FALSE;
+        sorted_fields[field->location] = field;
      }
-   for (loc = 0; loc < ELM_DATETIME_TYPE_COUNT; loc++)
+
+   for (idx = 0; idx < ELM_DATETIME_TYPE_COUNT; idx++)
      {
-        for (idx = 0; idx < ELM_DATETIME_TYPE_COUNT; idx++)
-          {
-             field = sd->field_list + idx;
-             if ((field->location == loc) && (visible[idx]))
-               items = eina_list_append(items, field->item_obj);
-          }
+        field = sorted_fields + idx;
+        if (field->fmt_exist && field->visible)
+          items = eina_list_append(items, field->item_obj);
      }
 
    // ACCESS

-- 


Reply via email to