cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=178fad6d1c0435dfc724a7eea95423e362a7789d

commit 178fad6d1c0435dfc724a7eea95423e362a7789d
Author: godly.talias <godly.tal...@samsung.com>
Date:   Tue Nov 10 15:15:29 2015 -0800

    hoversel: add item disabling support.
    
    Summary:
    Hoversel items can be disabled using elm_object_item_disabled_set
    @feature
    
    Test Plan: elementary_test
    
    Reviewers: prince.dubey, shilpasingh, raster, Hermet, conr2d, cedric
    
    Subscribers: poornima.srinivasan, rajeshps
    
    Differential Revision: https://phab.enlightenment.org/D3122
    
    Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 data/themes/edc/elm/button.edc |  5 +++++
 src/bin/test_hoversel.c        |  2 ++
 src/lib/elc_hoversel.c         | 11 +++++++++++
 src/lib/elm_hoversel_item.eo   |  1 +
 4 files changed, 19 insertions(+)

diff --git a/data/themes/edc/elm/button.edc b/data/themes/edc/elm/button.edc
index f560a2a..92b026b 100644
--- a/data/themes/edc/elm/button.edc
+++ b/data/themes/edc/elm/button.edc
@@ -1197,6 +1197,11 @@ group { name: 
"elm/button/base/hoversel_vertical_entry/default";
             visible: 1;
          }
       }
+      rect { name: "block_events";
+         desc { "default";
+            color: 0 0 0 0;
+         }
+      }
       rect { name: "event";
          desc { "default";
             color: 0 0 0 0;
diff --git a/src/bin/test_hoversel.c b/src/bin/test_hoversel.c
index 3e39ad0..15d4203 100644
--- a/src/bin/test_hoversel.c
+++ b/src/bin/test_hoversel.c
@@ -171,6 +171,8 @@ test_hoversel(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_
    elm_hoversel_item_add(hoversel, "Item 2", NULL, ELM_ICON_NONE, NULL, NULL);
    elm_hoversel_item_add(hoversel, "Item 3", NULL, ELM_ICON_NONE, NULL, NULL);
    elm_hoversel_item_add(hoversel, "Item 4 - Long Label Here", "close", 
ELM_ICON_STANDARD, NULL, NULL);
+   it = elm_hoversel_item_add(hoversel, "Item 5 - Disabled", NULL, 
ELM_ICON_NONE, NULL, NULL);
+   elm_object_item_disabled_set(it, EINA_TRUE);
    evas_object_smart_callback_add(hoversel, "clicked",
                                   _hoversel_clicked_cb, NULL);
    evas_object_smart_callback_add(hoversel, "selected",
diff --git a/src/lib/elc_hoversel.c b/src/lib/elc_hoversel.c
index 9f8ef4f..d45b687 100644
--- a/src/lib/elc_hoversel.c
+++ b/src/lib/elc_hoversel.c
@@ -96,6 +96,8 @@ _elm_hoversel_elm_widget_theme_apply(Eo *obj, 
Elm_Hoversel_Data *sd)
         ELM_HOVERSEL_ITEM_DATA_GET(eo_item, item);
         elm_object_style_set(VIEW(item), buf);
         elm_object_text_set(VIEW(item), item->label);
+        elm_widget_disabled_set
+          (VIEW(item), eo_do_ret(eo_item, int_ret, 
elm_wdg_item_disabled_get()));
      }
 
    eina_stringshare_del(style);
@@ -457,6 +459,15 @@ _on_parent_del(void *data,
    elm_hoversel_hover_parent_set(data, NULL);
 }
 
+EOLIAN static void
+_elm_hoversel_item_elm_widget_item_disable(Eo *eo_hoversel_it,
+                                           Elm_Hoversel_Item_Data *hoversel_it 
EINA_UNUSED)
+{
+   Eina_Bool tmp;
+   elm_widget_disabled_set
+     (VIEW(hoversel_it), eo_do_ret(eo_hoversel_it, tmp, 
elm_wdg_item_disabled_get()));
+}
+
 static void
 _elm_hoversel_item_elm_widget_item_part_text_set(Eo *eo_it EINA_UNUSED,
                                             Elm_Hoversel_Item_Data *it,
diff --git a/src/lib/elm_hoversel_item.eo b/src/lib/elm_hoversel_item.eo
index 39d0765..04efc85 100644
--- a/src/lib/elm_hoversel_item.eo
+++ b/src/lib/elm_hoversel_item.eo
@@ -20,6 +20,7 @@ class Elm.Hoversel_Item(Elm.Widget_Item)
    implements {
         Eo.Base.constructor;
         Eo.Base.destructor;
+        Elm.Widget_Item.disable;
         Elm.Widget_Item.signal_emit;
         Elm.Widget_Item.part_text.set;
         Elm.Widget_Item.part_text.get;

-- 


Reply via email to