rimmed pushed a commit to branch eflete-1.18.

http://git.enlightenment.org/tools/eflete.git/commit/?id=7bae3bec6c83b625099158284cb3a843fd159de8

commit 7bae3bec6c83b625099158284cb3a843fd159de8
Author: Andrii Kroitor <an.kroi...@samsung.com>
Date:   Thu Sep 8 16:42:55 2016 +0300

    popup: finish migration to async version
    
    remove old popup_buttons_disabled_set method
    add popup object as argument to Popup_Content_Cb
    
     Conflicts:
            src/bin/ui/colorclass_manager.c
            src/bin/ui/project_navigator.c
            src/bin/ui/sound_manager.c
            src/bin/ui/style_manager.c
---
 src/bin/ui/colorclass_manager.c        | 24 ++++++++++++++----------
 src/bin/ui/main_window.c               |  6 +++---
 src/bin/ui/main_window.h               |  4 +---
 src/bin/ui/popup.c                     | 15 +--------------
 src/bin/ui/project_navigator.c         | 16 +++++++++-------
 src/bin/ui/sound_manager.c             | 19 +++++++++++--------
 src/bin/ui/style_manager.c             | 24 +++++++++++++-----------
 src/bin/ui/workspace/group_navigator.c | 10 +++++-----
 8 files changed, 57 insertions(+), 61 deletions(-)

diff --git a/src/bin/ui/colorclass_manager.c b/src/bin/ui/colorclass_manager.c
index 21be2dd..41e30e9 100644
--- a/src/bin/ui/colorclass_manager.c
+++ b/src/bin/ui/colorclass_manager.c
@@ -59,36 +59,40 @@ struct _Colorclasses_Manager
 static Colorclasses_Manager mng;
 
 static void
-_validation(void *data __UNUSED__,
+_validation(void *data,
             Evas_Object *obj __UNUSED__,
             void *event_info __UNUSED__)
 {
-  if (ELM_REG_NOERROR != 
resource_name_validator_status_get(mng.name_validator))
+   Evas_Object *popup = data;
+
+   assert(popup != NULL);
+
+   if (ELM_REG_NOERROR != 
resource_name_validator_status_get(mng.name_validator))
      {
-       popup_buttons_disabled_set(BTN_OK, true);
-       elm_object_signal_emit(obj, "validation,default,fail", "elm");
+        popup_button_disabled_set(popup, BTN_OK, true);
+        elm_object_signal_emit(obj, "validation,default,fail", "elm");
      }
    else
      {
-       popup_buttons_disabled_set(BTN_OK, false);
-       elm_object_signal_emit(obj, "validation,default,pass", "elm");
+        popup_button_disabled_set(popup, BTN_OK, false);
+        elm_object_signal_emit(obj, "validation,default,pass", "elm");
      }
 }
 
-Evas_Object *
-_add_colorclass_content_get(void *data __UNUSED__, Evas_Object **to_focus)
+static Evas_Object *
+_add_colorclass_content_get(void *data __UNUSED__, Evas_Object *popup, 
Evas_Object **to_focus)
 {
    Evas_Object *item = NULL;
 
    LAYOUT_PROP_ADD(ap.win, _("Color class name: "), "property", "1swallow")
    ENTRY_ADD(item, mng.entry, true);
    eo_event_callback_add(mng.entry, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, mng.name_validator);
-   evas_object_smart_callback_add(mng.entry, "changed", _validation, NULL);
+   evas_object_smart_callback_add(mng.entry, "changed", _validation, popup);
    elm_object_part_text_set(mng.entry, "guide", _("Type new color class name 
here"));
    elm_object_part_content_set(item, "elm.swallow.content", mng.entry);
    mng.item = item;
    if (to_focus) *to_focus = mng.entry;
-   popup_buttons_disabled_set(BTN_OK, true);
+   popup_button_disabled_set(popup, BTN_OK, true);
 
    return mng.item;
 }
diff --git a/src/bin/ui/main_window.c b/src/bin/ui/main_window.c
index c96c090..771faeb 100644
--- a/src/bin/ui/main_window.c
+++ b/src/bin/ui/main_window.c
@@ -177,7 +177,7 @@ ui_main_window_add(void)
 
 #if !HAVE_TIZEN
 Evas_Object *
-_about_window_content_get(void *data, Evas_Object **to_focus __UNUSED__)
+_about_window_content_get(void *data, Evas_Object *popup __UNUSED__, 
Evas_Object **to_focus __UNUSED__)
 {
    Evas_Object *label = (Evas_Object *) data;
    elm_object_text_set(label,
@@ -220,7 +220,7 @@ about_window_add(void)
 
 #else
 Evas_Object *
-_about_window_content_get(void *data, Evas_Object **to_focus __UNUSED__)
+_about_window_content_get(void *data, Evas_Object *popup __UNUSED__, 
Evas_Object **to_focus __UNUSED__)
 {
   Evas_Object *layout = (Evas_Object *)data;
   elm_layout_theme_set(layout, "layout", "about", "default");
@@ -240,7 +240,7 @@ about_window_add(void)
 
 #endif
 static Evas_Object *
-_shortcuts_window_content_get(void *data, Evas_Object **to_focus __UNUSED__)
+_shortcuts_window_content_get(void *data, Evas_Object *popup __UNUSED__, 
Evas_Object **to_focus __UNUSED__)
 {
    Evas_Object *box = data;
    Evas_Object *scroller = elm_scroller_add(ap.win);
diff --git a/src/bin/ui/main_window.h b/src/bin/ui/main_window.h
index c0166f1..19cd2d5 100644
--- a/src/bin/ui/main_window.h
+++ b/src/bin/ui/main_window.h
@@ -121,7 +121,7 @@ typedef Eina_Bool(* Popup_Validator_Func)(void *data);
  *
  * @ingroup Window
  */
-typedef Evas_Object *(* Popup_Content_Get_Func)(void *data, Evas_Object 
**to_focus);
+typedef Evas_Object *(* Popup_Content_Get_Func)(void *data, Evas_Object 
*popup, Evas_Object **to_focus);
 
 #define POPUP_CLOSE_CB "POPUP_CLOSE_CB"
 /**
@@ -364,8 +364,6 @@ popup_active_helper_close(void *data,
  * @ingroup Window
  */
 void
-popup_buttons_disabled_set(Popup_Button p_btns, Eina_Bool disabled);
-void
 popup_button_disabled_set(Evas_Object *popup, Popup_Button btn, Eina_Bool 
disabled);
 
 void
diff --git a/src/bin/ui/popup.c b/src/bin/ui/popup.c
index 1c0feef..4ac3e7e 100644
--- a/src/bin/ui/popup.c
+++ b/src/bin/ui/popup.c
@@ -62,19 +62,6 @@ _delete_object_job(void *data)
    current = POPUP_NONE;
 }
 
-void
-popup_buttons_disabled_set(Popup_Button popup_btns, Eina_Bool disabled)
-{
-   if ((popup_btns & BTN_OK) || (popup_btns & BTN_SAVE) || (popup_btns & 
BTN_REPLACE))
-     elm_object_disabled_set(elm_object_part_content_get(ap.popup, "button1"), 
disabled);
-   if (popup_btns & BTN_DONT_SAVE)
-     elm_object_disabled_set(elm_object_part_content_get(ap.popup, "button2"), 
disabled);
-   if ((popup_btns & BTN_CANCEL) && (popup_btns & BTN_DONT_SAVE))
-     elm_object_disabled_set(elm_object_part_content_get(ap.popup, "button3"), 
disabled);
-   if (popup_btns & BTN_CANCEL)
-     elm_object_disabled_set(elm_object_part_content_get(ap.popup, "button2"), 
disabled);
-}
-
 /* async popup */
 #define POPUP_DATA "POPUP_DATA"
 typedef struct {
@@ -169,7 +156,7 @@ popup_add(const char *title,
    else /* content_get != NULL */
      {
         Evas_Object *to_focus = NULL;
-        Evas_Object *content = content_get(data, &to_focus);
+        Evas_Object *content = content_get(data, pd->popup, &to_focus);
         elm_object_content_set(pd->popup, content);
         if (to_focus)
           elm_object_focus_set(to_focus, true);
diff --git a/src/bin/ui/project_navigator.c b/src/bin/ui/project_navigator.c
index fda1e7d..212f28c 100644
--- a/src/bin/ui/project_navigator.c
+++ b/src/bin/ui/project_navigator.c
@@ -368,24 +368,26 @@ _group_sel(void *data __UNUSED__,
 }
 
 static void
-_group_validate(void *data __UNUSED__,
+_group_validate(void *data,
                 Evas_Object *obj __UNUSED__,
                 void *event_info __UNUSED__)
 {
+   Evas_Object *popup = data;
+   assert(popup != NULL);
    if (resource_name_validator_status_get(validator) != ELM_REG_NOERROR)
      {
-       popup_buttons_disabled_set(BTN_OK, true);
+       popup_button_disabled_set(popup, BTN_OK, true);
        elm_object_signal_emit(obj, "validation,default,fail", "elm");
      }
    else
      {
-       popup_buttons_disabled_set(BTN_OK, false);
+       popup_button_disabled_set(popup, BTN_OK, false);
        elm_object_signal_emit(obj, "validation,default,pass", "elm");
      }
 }
 
-Evas_Object *
-_add_group_content_get(void *data __UNUSED__, Evas_Object **to_focus)
+static Evas_Object *
+_add_group_content_get(void *data __UNUSED__, Evas_Object *popup, Evas_Object 
**to_focus)
 {
    Evas_Object *item;
    Group *group;
@@ -399,7 +401,7 @@ _add_group_content_get(void *data __UNUSED__, Evas_Object 
**to_focus)
    /* name: entry */
    LAYOUT_PROP_ADD(layout_p.box, _("Name"), "popup", "1swallow")
    ENTRY_ADD(layout_p.box, layout_p.entry, true)
-   evas_object_smart_callback_add(layout_p.entry, "changed", _group_validate, 
NULL);
+   evas_object_smart_callback_add(layout_p.entry, "changed", _group_validate, 
popup);
    eo_event_callback_add(layout_p.entry, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, validator);
    elm_layout_content_set(item, NULL, layout_p.entry);
    elm_box_pack_end(layout_p.box, item);
@@ -440,7 +442,6 @@ _add_group_content_get(void *data __UNUSED__, Evas_Object 
**to_focus)
    elm_object_text_set(layout_p.combobox, _("None"));
 
    if (to_focus) *to_focus = layout_p.entry;
-   popup_buttons_disabled_set(BTN_OK, true);
 
    return layout_p.box;
 }
@@ -487,6 +488,7 @@ _btn_add_group_cb(void *data __UNUSED__,
    validator = resource_name_validator_new(LAYOUT_NAME_REGEX, NULL);
    resource_name_validator_list_set(validator, &ap.project->groups, false);
    popup = popup_add(_("Create a new layout"), NULL, BTN_OK|BTN_CANCEL, 
_add_group_content_get, layout_p.entry);
+   popup_button_disabled_set(popup, BTN_OK, true);
    evas_object_smart_callback_add(popup, POPUP_CLOSE_CB, 
_add_group_popup_close_cb, NULL);
 }
 
diff --git a/src/bin/ui/sound_manager.c b/src/bin/ui/sound_manager.c
index bbded0c..ea8f630 100644
--- a/src/bin/ui/sound_manager.c
+++ b/src/bin/ui/sound_manager.c
@@ -322,11 +322,15 @@ _sample_add_cb(void *data,
 }
 
 static void
-_validation(void *data __UNUSED__,
+_validation(void *data,
             Evas_Object *obj __UNUSED__,
             void *event_info __UNUSED__)
 {
+   Evas_Object *popup = data;
    Eina_Bool validate = EINA_FALSE;
+
+   assert(popup != NULL);
+
    if (resource_name_validator_status_get(mng.tone_validator) != 
ELM_REG_NOERROR)
      {
         validate = EINA_FALSE;
@@ -351,13 +355,13 @@ _validation(void *data __UNUSED__,
 
 
    if (!validate)
-       popup_buttons_disabled_set(BTN_OK, true);
+       popup_button_disabled_set(popup, BTN_OK, true);
    else
-       popup_buttons_disabled_set(BTN_OK, false);
+       popup_button_disabled_set(popup, BTN_OK, false);
 }
 
 Evas_Object *
-_add_tone_content_get(void *data __UNUSED__, Evas_Object **to_focus)
+_add_tone_content_get(void *data __UNUSED__, Evas_Object *popup, Evas_Object 
**to_focus)
 {
    Evas_Object *item, *box;
 
@@ -366,7 +370,7 @@ _add_tone_content_get(void *data __UNUSED__, Evas_Object 
**to_focus)
    LAYOUT_PROP_ADD(box, _("Tone name:"), "popup", "1swallow")
    ENTRY_ADD(item, mng.tone_entry, true);
    eo_event_callback_add(mng.tone_entry, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, mng.tone_validator);
-   evas_object_smart_callback_add(mng.tone_entry, "changed", _validation, 
NULL);
+   evas_object_smart_callback_add(mng.tone_entry, "changed", _validation, 
popup);
    elm_object_part_text_set(mng.tone_entry, "guide", _("Type a new tone 
name"));
    elm_object_part_content_set(item, "elm.swallow.content", mng.tone_entry);
    /* need to manualy set not valid string for triggered validator */
@@ -376,7 +380,7 @@ _add_tone_content_get(void *data __UNUSED__, Evas_Object 
**to_focus)
    LAYOUT_PROP_ADD(box, _("Frequency:"), "popup", "1swallow")
    ENTRY_ADD(item, mng.frq_entry, true);
    eo_event_callback_add(mng.frq_entry, ELM_ENTRY_EVENT_VALIDATE, 
elm_validator_regexp_helper, mng.frq_validator);
-   evas_object_smart_callback_add(mng.frq_entry, "changed", _validation, NULL);
+   evas_object_smart_callback_add(mng.frq_entry, "changed", _validation, 
popup);
    elm_object_part_text_set(mng.frq_entry, "guide", _("Type a frequency (20 - 
20000)"));
    elm_object_part_content_set(item, "elm.swallow.content", mng.frq_entry);
    /* need to manualy set not valid string for triggered validator */
@@ -385,7 +389,6 @@ _add_tone_content_get(void *data __UNUSED__, Evas_Object 
**to_focus)
    mng.box = box;
 
    if (to_focus) *to_focus = mng.tone_entry;
-   popup_buttons_disabled_set(BTN_OK, true);
 
    return box;
 }
@@ -415,8 +418,8 @@ _tone_add_cb(void *data __UNUSED__,
    resource_name_validator_list_set(mng.tone_validator, &ap.project->tones, 
true);
    mng.frq_validator = elm_validator_regexp_new(FREQUENCY_REGEX, NULL);
 
-   popup_buttons_disabled_set(BTN_OK, true);
    popup = popup_add(_("Create a new layout"), NULL, BTN_OK|BTN_CANCEL, 
_add_tone_content_get, mng.tone_entry);
+   popup_button_disabled_set(popup, BTN_OK, true);
    evas_object_smart_callback_add(popup, POPUP_CLOSE_CB, 
_tone_add_popup_close_cb, NULL);
 }
 
diff --git a/src/bin/ui/style_manager.c b/src/bin/ui/style_manager.c
index da687ab..0bc9977 100644
--- a/src/bin/ui/style_manager.c
+++ b/src/bin/ui/style_manager.c
@@ -138,24 +138,26 @@ _on_glit_selected(void *data __UNUSED__,
 }
 
 static void
-_validate(void *data __UNUSED__,
+_validate(void *data,
           Evas_Object *obj __UNUSED__,
           void *event_info __UNUSED__)
 {
+   Evas_Object *popup = data;
+   assert(popup != NULL);
    if (ELM_REG_NOERROR != 
resource_name_validator_status_get(mng.popup.validator))
      {
-       popup_buttons_disabled_set(BTN_OK, true);
+       popup_button_disabled_set(popup, BTN_OK, true);
        elm_object_signal_emit(obj, "validation,default,fail", "elm");
      }
    else
      {
-       popup_buttons_disabled_set(BTN_OK, false);
+       popup_button_disabled_set(popup, BTN_OK, false);
        elm_object_signal_emit(obj, "validation,default,pass", "elm");
      }
 }
 
-Evas_Object *
-_add_style_content_get(void *data __UNUSED__, Evas_Object **to_focus)
+static Evas_Object *
+_add_style_content_get(void *data __UNUSED__, Evas_Object *popup, Evas_Object 
**to_focus)
 {
    Evas_Object *item;
 
@@ -163,12 +165,12 @@ _add_style_content_get(void *data __UNUSED__, Evas_Object 
**to_focus)
    mng.popup.item = item;
    ENTRY_ADD(mng.popup.item, mng.popup.name, true);
    eo_event_callback_add(mng.popup.name, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, mng.popup.validator);
-   evas_object_smart_callback_add(mng.popup.name, "changed", _validate, NULL);
+   evas_object_smart_callback_add(mng.popup.name, "changed", _validate, popup);
    elm_object_part_text_set(mng.popup.name, "guide", _("Type a new style 
name"));
    elm_object_part_content_set(mng.popup.item, "elm.swallow.content", 
mng.popup.name);
 
    if (to_focus) *to_focus = mng.popup.name;
-   popup_buttons_disabled_set(BTN_OK, true);
+   popup_button_disabled_set(popup, BTN_OK, true);
 
    return mng.popup.item;
 }
@@ -231,21 +233,21 @@ _style_add_cb(void *data __UNUSED__,
    evas_object_smart_callback_add(popup, POPUP_CLOSE_CB, 
_style_add_popup_close_cb_cb, NULL);
 }
 
-Evas_Object *
-_add_tag_content_get(void *data __UNUSED__, Evas_Object **to_focus)
+static Evas_Object *
+_add_tag_content_get(void *data __UNUSED__, Evas_Object *popup, Evas_Object 
**to_focus)
 {
    Evas_Object *item;
 
    LAYOUT_PROP_ADD(mng.win, "Tag name:", "popup", "1swallow");
    ENTRY_ADD(item, mng.popup.name, true);
    eo_event_callback_add(mng.popup.name, ELM_ENTRY_EVENT_VALIDATE, 
resource_name_validator_helper, mng.popup.validator);
-   evas_object_smart_callback_add(mng.popup.name, "changed", _validate, NULL);
+   evas_object_smart_callback_add(mng.popup.name, "changed", _validate, popup);
    elm_object_part_text_set(mng.popup.name, "guide", _("Type a new tag 
name."));
    elm_object_part_content_set(item, "elm.swallow.content", mng.popup.name);
    mng.popup.item = item;
 
    if (to_focus) *to_focus = mng.popup.name;
-   popup_buttons_disabled_set(BTN_OK, true);
+   popup_button_disabled_set(popup, BTN_OK, true);
    return item;
 }
 
diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index 3317c89..6666950 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -1081,7 +1081,7 @@ _combobox_item_pressed_cb(void *data __UNUSED__, 
Evas_Object *obj,
 }
 
 static Evas_Object *
-_add_part_content_get(void *data, Evas_Object **to_focus)
+_add_part_content_get(void *data, Evas_Object *popup __UNUSED__, Evas_Object 
**to_focus)
 {
    Combobox_Item *combobox_item;
    unsigned int i = 0;
@@ -1220,7 +1220,7 @@ _popup_add_group_data_close_cb(void *data,
 }
 
 static Evas_Object *
-_add_group_data_content_get(void *data, Evas_Object **to_focus)
+_add_group_data_content_get(void *data, Evas_Object *popup __UNUSED__, 
Evas_Object **to_focus)
 {
    Part_List *pl = (Part_List *) data;
    Evas_Object *box, *item;
@@ -1353,7 +1353,7 @@ group_navigator_part_state_add(Evas_Object *obj, Part 
*part, State *state)
 }
 
 static Evas_Object *
-_add_state_content_get(void *data, Evas_Object **to_focus)
+_add_state_content_get(void *data, Evas_Object *popup __UNUSED__, Evas_Object 
**to_focus)
 {
    Part_List *pl = (Part_List *)data;
    Evas_Object *box, *item;
@@ -1503,7 +1503,7 @@ group_navigator_part_item_add(Evas_Object *obj, Part 
*part, Eina_Stringshare * i
 }
 
 static Evas_Object *
-_add_item_content_get(void *data, Evas_Object **to_focus)
+_add_item_content_get(void *data, Evas_Object *popup __UNUSED__, Evas_Object 
**to_focus)
 {
    Part_List *pl = (Part_List *)data;
    Combobox_Item *combobox_item;
@@ -1636,7 +1636,7 @@ _popup_add_program_close_cb(void *data,
 }
 
 static Evas_Object *
-_add_program_content_get(void *data, Evas_Object **to_focus)
+_add_program_content_get(void *data, Evas_Object *popup __UNUSED__, 
Evas_Object **to_focus)
 {
    Part_List *pl = (Part_List *) data;
    Evas_Object *box, *item;

-- 


Reply via email to