---
 .../elementary/elementary.c_elementary_radio.pxi   |   44 +++++++++++++-------
 .../include/elementary/c_elementary.pxd            |   12 +++---
 2 files changed, 36 insertions(+), 20 deletions(-)

diff --git a/python-elementary/elementary/elementary.c_elementary_radio.pxi b/python-elementary/elementary/elementary.c_elementary_radio.pxi
index 1cef7b5..93bab1a 100644
--- a/python-elementary/elementary/elementary.c_elementary_radio.pxi
+++ b/python-elementary/elementary/elementary.c_elementary_radio.pxi
@@ -17,20 +17,12 @@
 #
 
 cdef class Radio(Object):
-    def __init__(self, c_evas.Object parent):
-        Object.__init__(self, parent.evas)
-        self._set_obj(elm_radio_add(parent.obj))
-
-    def label_set(self, label):
-        _METHOD_DEPRECATED(self, "text_set")
-        self.text_set(label)
-
-    def label_get(self):
-        _METHOD_DEPRECATED(self, "text_get")
-        return self.text_get()
-
-    def icon_set(self, c_evas.Object icon):
-        elm_object_part_content_set(self.obj, "icon", icon.obj)
+    def __init__(self, c_evas.Object parent, obj=None):
+        if obj is None:
+            Object.__init__(self, parent.evas)
+            self._set_obj(elm_radio_add(parent.obj))
+        else:
+            self._set_obj(<c_evas.Evas_Object*>obj)
 
     def group_add(self, c_evas.Object group):
         elm_radio_group_add(self.obj, group.obj)
@@ -38,17 +30,39 @@ cdef class Radio(Object):
     def state_value_set(self, value):
         elm_radio_state_value_set(self.obj, value)
 
+    def state_value_get(self):
+        return elm_radio_state_value_get(self.obj)
+
+    property state_value:
+        def __get__(self):
+            return self.state_value_get()
+        def __set__(self, value):
+            self.state_value_set(value)
+
     def value_set(self, value):
         elm_radio_value_set(self.obj, value)
 
     def value_get(self):
         return elm_radio_value_get(self.obj)
 
+    property value:
+        def __get__(self):
+            return self.value_get()
+        def __set__(self, value):
+            self.value_set(value)
+
+    def selected_object_get(self):
+        cdef c_evas.Evas_Object *selected
+        selected = elm_radio_selected_object_get(self.obj)
+        if selected == NULL:
+            return None
+        else:
+            return Radio(None, <object>selected)
+
     def callback_changed_add(self, func, *args, **kwargs):
         self._callback_add("changed", func, *args, **kwargs)
 
     def callback_changed_del(self, func):
         self._callback_del("changed", func)
 
-
 _elm_widget_type_register("radio", Radio)
diff --git a/python-elementary/include/elementary/c_elementary.pxd b/python-elementary/include/elementary/c_elementary.pxd
index e583992..cbaaa9a 100644
--- a/python-elementary/include/elementary/c_elementary.pxd
+++ b/python-elementary/include/elementary/c_elementary.pxd
@@ -1095,11 +1095,13 @@ cdef extern from "Elementary.h":
 
     # Radio widget
     evas.c_evas.Evas_Object *elm_radio_add(evas.c_evas.Evas_Object *parent)
-    void         elm_radio_group_add(evas.c_evas.Evas_Object *obj, evas.c_evas.Evas_Object *group)
-    void         elm_radio_state_value_set(evas.c_evas.Evas_Object *obj, int value)
-    void         elm_radio_value_set(evas.c_evas.Evas_Object *obj, int value)
-    int          elm_radio_value_get(evas.c_evas.Evas_Object *obj)
-    void         elm_radio_value_pointer_set(evas.c_evas.Evas_Object *obj, int *valuep)
+    void                    elm_radio_group_add(evas.c_evas.Evas_Object *obj, evas.c_evas.Evas_Object *group)
+    void                    elm_radio_state_value_set(evas.c_evas.Evas_Object *obj, int value)
+    int                     elm_radio_state_value_get(evas.c_evas.Evas_Object *obj)
+    void                    elm_radio_value_set(evas.c_evas.Evas_Object *obj, int value)
+    int                     elm_radio_value_get(evas.c_evas.Evas_Object *obj)
+    #void                   elm_radio_value_pointer_set(evas.c_evas.Evas_Object *obj, int *valuep)
+    evas.c_evas.Evas_Object *elm_radio_selected_object_get(evas.c_evas.Evas_Object *obj)
 
     # Naviframe widget
     evas.c_evas.Evas_Object *elm_naviframe_add(evas.c_evas.Evas_Object *parent)
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to