davemds pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=3ebc6f21e9f206a079f874bc8183f23d84c03c35

commit 3ebc6f21e9f206a079f874bc8183f23d84c03c35
Author: Dave Andreoli <[email protected]>
Date:   Sun Jan 4 22:02:09 2015 +0100

    New style enums for edje
---
 efl/edje/efl.edje.pyx          | 100 -----------------------------
 efl/edje/efl.edje_external.pxi |  20 +++---
 efl/edje/efl.edje_message.pxi  |  24 +++----
 efl/edje/efl.edje_object.pxi   |  12 ++--
 include/efl.edje.pxd           | 140 +++++++++++++++++++++++++++++++++++++++--
 5 files changed, 163 insertions(+), 133 deletions(-)

diff --git a/efl/edje/efl.edje.pyx b/efl/edje/efl.edje.pyx
index 28de858..3a79c06 100644
--- a/efl/edje/efl.edje.pyx
+++ b/efl/edje/efl.edje.pyx
@@ -30,106 +30,6 @@ from efl.utils.conversions cimport _ctouni, _touni, \
     eina_list_strings_to_python_list
 
 
-# Edje_Message_Type:
-EDJE_MESSAGE_NONE             = 0
-EDJE_MESSAGE_SIGNAL           = 1
-EDJE_MESSAGE_STRING           = 2
-EDJE_MESSAGE_INT              = 3
-EDJE_MESSAGE_FLOAT            = 4
-EDJE_MESSAGE_STRING_SET       = 5
-EDJE_MESSAGE_INT_SET          = 6
-EDJE_MESSAGE_FLOAT_SET        = 7
-EDJE_MESSAGE_STRING_INT       = 8
-EDJE_MESSAGE_STRING_FLOAT     = 9
-EDJE_MESSAGE_STRING_INT_SET   = 10
-EDJE_MESSAGE_STRING_FLOAT_SET = 11
-
-# Edje_Aspect_Control:
-EDJE_ASPECT_CONTROL_NONE       = 0
-EDJE_ASPECT_CONTROL_NEITHER    = 1
-EDJE_ASPECT_CONTROL_HORIZONTAL = 2
-EDJE_ASPECT_CONTROL_VERTICAL   = 3
-EDJE_ASPECT_CONTROL_BOTH       = 4
-
-# Edje_Drag_Dir:
-EDJE_DRAG_DIR_NONE = 0
-EDJE_DRAG_DIR_X    = 1
-EDJE_DRAG_DIR_Y    = 2
-EDJE_DRAG_DIR_XY   = 3
-
-# Edje_Load_Error:
-EDJE_LOAD_ERROR_NONE                       = 0
-EDJE_LOAD_ERROR_GENERIC                    = 1
-EDJE_LOAD_ERROR_DOES_NOT_EXIST             = 2
-EDJE_LOAD_ERROR_PERMISSION_DENIED          = 3
-EDJE_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED = 4
-EDJE_LOAD_ERROR_CORRUPT_FILE               = 5
-EDJE_LOAD_ERROR_UNKNOWN_FORMAT             = 6
-EDJE_LOAD_ERROR_INCOMPATIBLE_FILE          = 7
-EDJE_LOAD_ERROR_UNKNOWN_COLLECTION         = 8
-
-# Edje_Part_Type:
-EDJE_PART_TYPE_NONE      = 0
-EDJE_PART_TYPE_RECTANGLE = 1
-EDJE_PART_TYPE_TEXT      = 2
-EDJE_PART_TYPE_IMAGE     = 3
-EDJE_PART_TYPE_SWALLOW   = 4
-EDJE_PART_TYPE_TEXTBLOCK = 5
-EDJE_PART_TYPE_GRADIENT  = 6
-EDJE_PART_TYPE_GROUP     = 7
-EDJE_PART_TYPE_BOX       = 8
-EDJE_PART_TYPE_TABLE     = 9
-EDJE_PART_TYPE_EXTERNAL  = 10
-EDJE_PART_TYPE_LAST      = 11
-
-# Edje_Text_Effect:
-EDJE_TEXT_EFFECT_NONE                = 0
-EDJE_TEXT_EFFECT_PLAIN               = 1
-EDJE_TEXT_EFFECT_OUTLINE             = 2
-EDJE_TEXT_EFFECT_SOFT_OUTLINE        = 3
-EDJE_TEXT_EFFECT_SHADOW              = 4
-EDJE_TEXT_EFFECT_SOFT_SHADOW         = 5
-EDJE_TEXT_EFFECT_OUTLINE_SHADOW      = 6
-EDJE_TEXT_EFFECT_OUTLINE_SOFT_SHADOW = 7
-EDJE_TEXT_EFFECT_FAR_SHADOW          = 8
-EDJE_TEXT_EFFECT_FAR_SOFT_SHADOW     = 9
-EDJE_TEXT_EFFECT_GLOW                = 10
-EDJE_TEXT_EFFECT_LAST                = 11
-
-# Edje_Action_Type:
-EDJE_ACTION_TYPE_NONE          = 0
-EDJE_ACTION_TYPE_STATE_SET     = 1
-EDJE_ACTION_TYPE_ACTION_STOP   = 2
-EDJE_ACTION_TYPE_SIGNAL_EMIT   = 3
-EDJE_ACTION_TYPE_DRAG_VAL_SET  = 4
-EDJE_ACTION_TYPE_DRAG_VAL_STEP = 5
-EDJE_ACTION_TYPE_DRAG_VAL_PAGE = 6
-EDJE_ACTION_TYPE_SCRIPT        = 7
-EDJE_ACTION_TYPE_FOCUS_SET     = 8
-EDJE_ACTION_TYPE_LUA_SCRIPT    = 9
-EDJE_ACTION_TYPE_LAST          = 10
-
-# Edje_Tween_Mode:
-EDJE_TWEEN_MODE_NONE       = 0
-EDJE_TWEEN_MODE_LINEAR     = 1
-EDJE_TWEEN_MODE_SINUSOIDAL = 2
-EDJE_TWEEN_MODE_ACCELERATE = 3
-EDJE_TWEEN_MODE_DECELERATE = 4
-EDJE_TWEEN_MODE_LAST       = 5
-
-# Edje_External_Param_Type:
-EDJE_EXTERNAL_PARAM_TYPE_INT    = 0
-EDJE_EXTERNAL_PARAM_TYPE_DOUBLE = 1
-EDJE_EXTERNAL_PARAM_TYPE_STRING = 2
-EDJE_EXTERNAL_PARAM_TYPE_BOOL   = 3
-EDJE_EXTERNAL_PARAM_TYPE_CHOICE = 4
-EDJE_EXTERNAL_PARAM_TYPE_MAX    = 5
-
-# Edje_Input_Hints
-EDJE_INPUT_HINT_NONE = 0
-EDJE_INPUT_HINT_AUTO_COMPLETE = 1
-EDJE_INPUT_HINT_SENSITIVE_DATA = 2
-
 
 def init():
     cdef int r = edje_init()
diff --git a/efl/edje/efl.edje_external.pxi b/efl/edje/efl.edje_external.pxi
index c09532e..021c509 100644
--- a/efl/edje/efl.edje_external.pxi
+++ b/efl/edje/efl.edje_external.pxi
@@ -60,15 +60,15 @@ cdef class ExternalParam:
         def __get__(self):
             if self.obj == NULL:
                 raise ValueError("Object uninitialized")
-            if self.obj.type == EDJE_EXTERNAL_PARAM_TYPE_INT:
+            if self.obj.type == <int>EDJE_EXTERNAL_PARAM_TYPE_INT:
                 return self.obj.i
-            elif self.obj.type == EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
+            elif self.obj.type == <int>EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
                 return self.obj.d
-            elif self.obj.type == EDJE_EXTERNAL_PARAM_TYPE_STRING or \
-                    self.obj.type == EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
+            elif self.obj.type == <int>EDJE_EXTERNAL_PARAM_TYPE_STRING or \
+                    self.obj.type == <int>EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
                 if self.obj.s != NULL:
                     return self.obj.s
-            elif self.obj.type == EDJE_EXTERNAL_PARAM_TYPE_BOOL:
+            elif self.obj.type == <int>EDJE_EXTERNAL_PARAM_TYPE_BOOL:
                 return bool(self.obj.i)
 
 
@@ -313,15 +313,15 @@ cdef class ExternalParamInfoChoice(ExternalParamInfo):
 
 cdef ExternalParamInfo ExternalParamInfo_from_ptr(type, 
Edje_External_Param_Info *ptr):
     cdef ExternalParamInfo p
-    if ptr.type == EDJE_EXTERNAL_PARAM_TYPE_INT:
+    if ptr.type == <int>EDJE_EXTERNAL_PARAM_TYPE_INT:
         p = ExternalParamInfoInt()
-    elif ptr.type == EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
+    elif ptr.type == <int>EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
         p = ExternalParamInfoDouble()
-    elif ptr.type == EDJE_EXTERNAL_PARAM_TYPE_STRING:
+    elif ptr.type == <int>EDJE_EXTERNAL_PARAM_TYPE_STRING:
         p = ExternalParamInfoString()
-    elif ptr.type == EDJE_EXTERNAL_PARAM_TYPE_BOOL:
+    elif ptr.type == <int>EDJE_EXTERNAL_PARAM_TYPE_BOOL:
         p = ExternalParamInfoBool()
-    elif ptr.type == EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
+    elif ptr.type == <int>EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
         p = ExternalParamInfoChoice()
     else:
         msg = "Don't know how to convert parameter %s of type %s" % \
diff --git a/efl/edje/efl.edje_message.pxi b/efl/edje/efl.edje_message.pxi
index 6191c56..106297f 100644
--- a/efl/edje/efl.edje_message.pxi
+++ b/efl/edje/efl.edje_message.pxi
@@ -345,29 +345,29 @@ cdef Message MessageStringFloatSet_from_ptr(void *msg):
 
 cdef Message Message_from_type(Edje_Message_Type type, int id, void *msg):
     cdef Message m
-    if type == EDJE_MESSAGE_NONE:
+    if type == <int>EDJE_MESSAGE_NONE:
         return None
-    elif type == EDJE_MESSAGE_SIGNAL:
+    elif type == <int>EDJE_MESSAGE_SIGNAL:
         m = MessageSignal()
-    elif type == EDJE_MESSAGE_STRING:
+    elif type == <int>EDJE_MESSAGE_STRING:
         m = MessageString_from_ptr(msg)
-    elif type == EDJE_MESSAGE_INT:
+    elif type == <int>EDJE_MESSAGE_INT:
         m = MessageInt_from_ptr(msg)
-    elif type == EDJE_MESSAGE_FLOAT:
+    elif type == <int>EDJE_MESSAGE_FLOAT:
         m = MessageFloat_from_ptr(msg)
-    elif type == EDJE_MESSAGE_STRING_SET:
+    elif type == <int>EDJE_MESSAGE_STRING_SET:
         m = MessageStringSet_from_ptr(msg)
-    elif type == EDJE_MESSAGE_INT_SET:
+    elif type == <int>EDJE_MESSAGE_INT_SET:
         m = MessageIntSet_from_ptr(msg)
-    elif type == EDJE_MESSAGE_FLOAT_SET:
+    elif type == <int>EDJE_MESSAGE_FLOAT_SET:
         m = MessageFloatSet_from_ptr(msg)
-    elif type == EDJE_MESSAGE_STRING_INT:
+    elif type == <int>EDJE_MESSAGE_STRING_INT:
         m = MessageStringInt_from_ptr(msg)
-    elif type == EDJE_MESSAGE_STRING_FLOAT:
+    elif type == <int>EDJE_MESSAGE_STRING_FLOAT:
         m = MessageStringFloat_from_ptr(msg)
-    elif type == EDJE_MESSAGE_STRING_INT_SET :
+    elif type == <int>EDJE_MESSAGE_STRING_INT_SET :
         m = MessageStringIntSet_from_ptr(msg)
-    elif type == EDJE_MESSAGE_STRING_FLOAT_SET :
+    elif type == <int>EDJE_MESSAGE_STRING_FLOAT_SET :
         m = MessageStringFloatSet_from_ptr(msg)
 
     m._type = type
diff --git a/efl/edje/efl.edje_object.pxi b/efl/edje/efl.edje_object.pxi
index 1f8fdb7..b8ff7b2 100644
--- a/efl/edje/efl.edje_object.pxi
+++ b/efl/edje/efl.edje_object.pxi
@@ -810,19 +810,19 @@ cdef class Edje(Object):
 
         p.name = c_param
         p.type = edje_object_part_external_param_type_get(self.obj, c_part, 
c_param)
-        if p.type >= EDJE_EXTERNAL_PARAM_TYPE_MAX:
+        if p.type >= <int>EDJE_EXTERNAL_PARAM_TYPE_MAX:
             return None
 
         if not edje_object_part_external_param_get(self.obj, c_part, &p):
             return None
-        if p.type == EDJE_EXTERNAL_PARAM_TYPE_BOOL:
+        if p.type == <int>EDJE_EXTERNAL_PARAM_TYPE_BOOL:
             return bool(p.i)
-        elif p.type == EDJE_EXTERNAL_PARAM_TYPE_INT:
+        elif p.type == <int>EDJE_EXTERNAL_PARAM_TYPE_INT:
             return p.i
-        elif p.type == EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
+        elif p.type == <int>EDJE_EXTERNAL_PARAM_TYPE_DOUBLE:
             return p.d
-        elif p.type == EDJE_EXTERNAL_PARAM_TYPE_STRING or \
-             p.type == EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
+        elif p.type == <int>EDJE_EXTERNAL_PARAM_TYPE_STRING or \
+             p.type == <int>EDJE_EXTERNAL_PARAM_TYPE_CHOICE:
             return _ctouni(p.s)
 
     def part_box_append(self, part, Object obj):
diff --git a/include/efl.edje.pxd b/include/efl.edje.pxd
index b18ff4a..ba1309f 100644
--- a/include/efl.edje.pxd
+++ b/include/efl.edje.pxd
@@ -21,42 +21,172 @@ from efl.evas cimport Object, Evas_Object, Evas, 
Evas_Font_Size, Evas_Coord
 
 cdef extern from "Edje.h":
     ####################################################################
-    # Enumerations
+    # Define (these are not accessible from python atm)
     #
+    cdef int EDJE_EXTERNAL_INT_UNSET
+    cdef double EDJE_EXTERNAL_DOUBLE_UNSET
+    cdef unsigned int EDJE_EXTERNAL_TYPE_ABI_VERSION
+    
+    ####################################################################
+    # Enums
+    #
+    cpdef enum Edje_Message_Type:
+        EDJE_MESSAGE_NONE
+        EDJE_MESSAGE_SIGNAL
+        EDJE_MESSAGE_STRING
+        EDJE_MESSAGE_INT
+        EDJE_MESSAGE_FLOAT
+        EDJE_MESSAGE_STRING_SET
+        EDJE_MESSAGE_INT_SET
+        EDJE_MESSAGE_FLOAT_SET
+        EDJE_MESSAGE_STRING_INT
+        EDJE_MESSAGE_STRING_FLOAT
+        EDJE_MESSAGE_STRING_INT_SET
+        EDJE_MESSAGE_STRING_FLOAT_SET
     ctypedef enum Edje_Message_Type:
         pass
 
+    cpdef enum Edje_Aspect_Control:
+        EDJE_ASPECT_CONTROL_NONE
+        EDJE_ASPECT_CONTROL_NEITHER
+        EDJE_ASPECT_CONTROL_HORIZONTAL
+        EDJE_ASPECT_CONTROL_VERTICAL
+        EDJE_ASPECT_CONTROL_BOTH
     ctypedef enum Edje_Aspect_Control:
         pass
 
+    cpdef enum Edje_Drag_Dir:
+        EDJE_DRAG_DIR_NONE
+        EDJE_DRAG_DIR_X
+        EDJE_DRAG_DIR_Y
+        EDJE_DRAG_DIR_XY
     ctypedef enum Edje_Drag_Dir:
         pass
 
+    cpdef enum Edje_Load_Error:
+        EDJE_LOAD_ERROR_NONE
+        EDJE_LOAD_ERROR_GENERIC
+        EDJE_LOAD_ERROR_DOES_NOT_EXIST
+        EDJE_LOAD_ERROR_PERMISSION_DENIED
+        EDJE_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED
+        EDJE_LOAD_ERROR_CORRUPT_FILE
+        EDJE_LOAD_ERROR_UNKNOWN_FORMAT
+        EDJE_LOAD_ERROR_INCOMPATIBLE_FILE
+        EDJE_LOAD_ERROR_UNKNOWN_COLLECTION
+        EDJE_LOAD_ERROR_RECURSIVE_REFERENCE
     ctypedef enum Edje_Load_Error:
         pass
 
+    cpdef enum Edje_Part_Type:
+        EDJE_PART_TYPE_NONE
+        EDJE_PART_TYPE_RECTANGLE
+        EDJE_PART_TYPE_TEXT
+        EDJE_PART_TYPE_IMAGE
+        EDJE_PART_TYPE_SWALLOW
+        EDJE_PART_TYPE_TEXTBLOCK
+        EDJE_PART_TYPE_GRADIENT
+        EDJE_PART_TYPE_GROUP
+        EDJE_PART_TYPE_BOX
+        EDJE_PART_TYPE_TABLE
+        EDJE_PART_TYPE_EXTERNAL
+        EDJE_PART_TYPE_SPACER
+        EDJE_PART_TYPE_MESH_NODE
+        EDJE_PART_TYPE_LIGHT
+        EDJE_PART_TYPE_CAMERA
+        EDJE_PART_TYPE_LAST
     ctypedef enum Edje_Part_Type:
         pass
 
+    cpdef enum Edje_Text_Effect:
+        EDJE_TEXT_EFFECT_NONE
+        EDJE_TEXT_EFFECT_PLAIN
+        EDJE_TEXT_EFFECT_OUTLINE
+        EDJE_TEXT_EFFECT_SOFT_OUTLINE
+        EDJE_TEXT_EFFECT_SHADOW
+        EDJE_TEXT_EFFECT_SOFT_SHADOW
+        EDJE_TEXT_EFFECT_OUTLINE_SHADOW
+        EDJE_TEXT_EFFECT_OUTLINE_SOFT_SHADOW
+        EDJE_TEXT_EFFECT_FAR_SHADOW
+        EDJE_TEXT_EFFECT_FAR_SOFT_SHADOW
+        EDJE_TEXT_EFFECT_GLOW
+        EDJE_TEXT_EFFECT_LAST
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_BOTTOM_RIGHT
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_BOTTOM
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_BOTTOM_LEFT
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_LEFT
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_TOP_LEFT
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_TOP
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_TOP_RIGHT
+        EDJE_TEXT_EFFECT_SHADOW_DIRECTION_RIGHT
     ctypedef enum Edje_Text_Effect:
        pass
 
+    cpdef enum Edje_Action_Type:
+        EDJE_ACTION_TYPE_NONE
+        EDJE_ACTION_TYPE_STATE_SET
+        EDJE_ACTION_TYPE_ACTION_STOP
+        EDJE_ACTION_TYPE_SIGNAL_EMIT
+        EDJE_ACTION_TYPE_DRAG_VAL_SET
+        EDJE_ACTION_TYPE_DRAG_VAL_STEP
+        EDJE_ACTION_TYPE_DRAG_VAL_PAGE
+        EDJE_ACTION_TYPE_SCRIPT
+        EDJE_ACTION_TYPE_FOCUS_SET
+        EDJE_ACTION_TYPE_RESERVED00
+        EDJE_ACTION_TYPE_FOCUS_OBJECT
+        EDJE_ACTION_TYPE_PARAM_COPY
+        EDJE_ACTION_TYPE_PARAM_SET
+        EDJE_ACTION_TYPE_SOUND_SAMPLE
+        EDJE_ACTION_TYPE_SOUND_TONE
+        EDJE_ACTION_TYPE_PHYSICS_IMPULSE
+        EDJE_ACTION_TYPE_PHYSICS_TORQUE_IMPULSE
+        EDJE_ACTION_TYPE_PHYSICS_FORCE
+        EDJE_ACTION_TYPE_PHYSICS_TORQUE
+        EDJE_ACTION_TYPE_PHYSICS_FORCES_CLEAR
+        EDJE_ACTION_TYPE_PHYSICS_VEL_SET
+        EDJE_ACTION_TYPE_PHYSICS_ANG_VEL_SET
+        EDJE_ACTION_TYPE_PHYSICS_STOP
+        EDJE_ACTION_TYPE_PHYSICS_ROT_SET
+        EDJE_ACTION_TYPE_VIBRATION_SAMPLE
+        EDJE_ACTION_TYPE_LAST
     ctypedef enum Edje_Action_Type:
        pass
 
+    cpdef enum Edje_Tween_Mode:
+        EDJE_TWEEN_MODE_NONE
+        EDJE_TWEEN_MODE_LINEAR
+        EDJE_TWEEN_MODE_SINUSOIDAL
+        EDJE_TWEEN_MODE_ACCELERATE
+        EDJE_TWEEN_MODE_DECELERATE
+        EDJE_TWEEN_MODE_ACCELERATE_FACTOR
+        EDJE_TWEEN_MODE_DECELERATE_FACTOR
+        EDJE_TWEEN_MODE_SINUSOIDAL_FACTOR
+        EDJE_TWEEN_MODE_DIVISOR_INTERP
+        EDJE_TWEEN_MODE_BOUNCE
+        EDJE_TWEEN_MODE_SPRING
+        EDJE_TWEEN_MODE_CUBIC_BEZIER
+        EDJE_TWEEN_MODE_LAST
+        EDJE_TWEEN_MODE_MASK
+        EDJE_TWEEN_MODE_OPT_FROM_CURRENT
     ctypedef enum Edje_Tween_Mode:
        pass
 
+    cpdef enum Edje_External_Param_Type:
+        EDJE_EXTERNAL_PARAM_TYPE_INT
+        EDJE_EXTERNAL_PARAM_TYPE_DOUBLE
+        EDJE_EXTERNAL_PARAM_TYPE_STRING
+        EDJE_EXTERNAL_PARAM_TYPE_BOOL
+        EDJE_EXTERNAL_PARAM_TYPE_CHOICE
+        EDJE_EXTERNAL_PARAM_TYPE_MAX
     ctypedef enum Edje_External_Param_Type:
        pass
 
+    cpdef enum Edje_Input_Hints:
+        EDJE_INPUT_HINT_NONE
+        EDJE_INPUT_HINT_AUTO_COMPLETE
+        EDJE_INPUT_HINT_SENSITIVE_DATA
     ctypedef enum Edje_Input_Hints:
        pass
 
-    cdef int EDJE_EXTERNAL_INT_UNSET
-    cdef double EDJE_EXTERNAL_DOUBLE_UNSET
-    cdef unsigned int EDJE_EXTERNAL_TYPE_ABI_VERSION
-
     ####################################################################
     # Structures
     #

-- 


Reply via email to