add support for visible-data-changed event in colorselector widget
authorPatryk Kaczmarek <patryk.k@samsung.com>
Tue, 5 Nov 2013 09:12:27 +0000 (10:12 +0100)
committerPatryk Kaczmarek <patryk.k@samsung.com>
Tue, 5 Nov 2013 09:12:27 +0000 (10:12 +0100)
eail/eail/eail_colorselector.c

index 517d315..abec015 100644 (file)
@@ -25,6 +25,7 @@
 #include <Elementary.h>
 
 #include "eail_colorselector.h"
+#include "eail_utils.h"
 
 static void atk_value_interface_init(AtkValueIface *iface);
 
@@ -38,6 +39,23 @@ G_DEFINE_TYPE_WITH_CODE(EailColorselector,
                                               atk_value_interface_init));
 
 /**
+ * @brief handler for changed event
+ *
+ * @param data passed to callback
+ * @param obj object that raised event
+ * @param event_info additional event info
+ */
+
+void
+_eail_colorselector_handle_changed_event(void *data,
+                                             Evas_Object *obj,
+                                             void *event_info)
+{
+   eail_emit_atk_signal
+                  (ATK_OBJECT(data), "visible-data-changed", ATK_TYPE_OBJECT);
+}
+
+/**
  * @brief EailColorselector initializer
  *
  * @param obj AtkObject instance
@@ -46,8 +64,15 @@ G_DEFINE_TYPE_WITH_CODE(EailColorselector,
 static void
 eail_colorselector_initialize(AtkObject *obj, gpointer data)
 {
+   Evas_Object *nested_widget = NULL;
    ATK_OBJECT_CLASS(eail_colorselector_parent_class)->initialize(obj, data);
+
    obj->role = ATK_ROLE_COLOR_CHOOSER;
+   g_return_if_fail(EAIL_IS_WIDGET(obj));
+
+   nested_widget = eail_widget_get_widget(EAIL_WIDGET(obj));
+   evas_object_smart_callback_add(nested_widget, "changed",
+                                  _eail_colorselector_handle_changed_event, obj);
 }
 
 /**