r4681 - in trunk/src/host/pye17: . codegen ecore_evas edje
marek at docs.openmoko.org
marek at docs.openmoko.org
Mon Sep 29 13:10:28 CEST 2008
Author: marek
Date: 2008-09-29 13:10:27 +0200 (Mon, 29 Sep 2008)
New Revision: 4681
Modified:
trunk/src/host/pye17/Makefile
trunk/src/host/pye17/codegen/argtypes.py
trunk/src/host/pye17/codegen/h2def.py
trunk/src/host/pye17/ecore_evas/ecore_evas.override
trunk/src/host/pye17/edje/Makefile
trunk/src/host/pye17/edje/edje.override
Log:
edje support added
Modified: trunk/src/host/pye17/Makefile
===================================================================
--- trunk/src/host/pye17/Makefile 2008-09-29 06:07:38 UTC (rev 4680)
+++ trunk/src/host/pye17/Makefile 2008-09-29 11:10:27 UTC (rev 4681)
@@ -19,7 +19,7 @@
PYTHON = $(shell which python)
-e_bindings = evas ecore ecore_evas
+e_bindings = evas ecore ecore_evas edje
### ToDo ###
# ecore
Modified: trunk/src/host/pye17/codegen/argtypes.py
===================================================================
--- trunk/src/host/pye17/codegen/argtypes.py 2008-09-29 06:07:38 UTC (rev 4680)
+++ trunk/src/host/pye17/codegen/argtypes.py 2008-09-29 11:10:27 UTC (rev 4681)
@@ -1148,5 +1148,11 @@
matcher.register_pointer('Ecore_Win32_Window', 'G_TYPE_OBJECT')
matcher.register_pointer('Ecore_WinCE_Window', 'G_TYPE_OBJECT')
+# edje
+matcher.register_pointer('Evas_List', 'G_TYPE_OBJECT')
+matcher.register_pointer('Evas_Coord', 'G_TYPE_OBJECT')
+matcher.register('Evas_Event_Flags', UIntArg()) # how to handle enum ?
+
+
# matcher.register_pointer('', 'G_TYPE_OBJECT')
Modified: trunk/src/host/pye17/codegen/h2def.py
===================================================================
--- trunk/src/host/pye17/codegen/h2def.py 2008-09-29 06:07:38 UTC (rev 4680)
+++ trunk/src/host/pye17/codegen/h2def.py 2008-09-29 11:10:27 UTC (rev 4681)
@@ -221,6 +221,8 @@
#print "name: " + m.group(1)
#print "alt. name: >" + m.group(3) + "<"
+ pos = m.end()
+
name = m.group(3)
if not name:
@@ -229,6 +231,10 @@
if name in enum_typedef:
name = enum_typedef[name]
+ # enums without names act like defines (e.g. #define bla 1)
+ if not name:
+ continue
+
vals = m.group(2)
isflags = string.find(vals, '<<') >= 0
@@ -239,8 +245,6 @@
if name != 'GdkCursorType':
enums.append((name, isflags, entries))
- pos = m.end()
-
# ------------------ Find function definitions -----------------
def clean_func(buf):
@@ -252,6 +256,11 @@
# bulk comments
buf = strip_comments(buf)
+ # e stuff - "//(/) <comments> \n"
+ pat = re.compile(r'/[/]+.*\n', re.VERBOSE)
+ buf = pat.sub('', buf)
+ #print "functions 0: >>" + buf + "<<"
+
# compact continued lines
pat = re.compile(r"""\\\n""", re.MULTILINE)
buf = pat.sub('', buf)
@@ -456,8 +465,10 @@
argument = args[begin_copy:i]
else:
argument = args[begin_copy:i + 1]
+
begin_copy = i + 1
- argument = argument.lstrip(", ")
+ argument = argument.lstrip(", ").rstrip(" ")
+
#print "argument: " + argument
callback = argument.find('(')
if callback > -1:
@@ -466,6 +477,7 @@
spaces = string.count(argument, ' ')
if spaces > 1:
argument = string.replace(argument, ' ', '-', spaces - 1)
+ #print "argument: " + argument + "; num spaces: " + str(spaces)
arguments.append(argument)
# look for callback parameters
Modified: trunk/src/host/pye17/ecore_evas/ecore_evas.override
===================================================================
--- trunk/src/host/pye17/ecore_evas/ecore_evas.override 2008-09-29 06:07:38 UTC (rev 4680)
+++ trunk/src/host/pye17/ecore_evas/ecore_evas.override 2008-09-29 11:10:27 UTC (rev 4681)
@@ -7,3 +7,4 @@
%%
ignore-glob
*_get_type
+%%
\ No newline at end of file
Modified: trunk/src/host/pye17/edje/Makefile
===================================================================
--- trunk/src/host/pye17/edje/Makefile 2008-09-29 06:07:38 UTC (rev 4680)
+++ trunk/src/host/pye17/edje/Makefile 2008-09-29 11:10:27 UTC (rev 4681)
@@ -1,8 +1,8 @@
-EVAS_PATH=$(E_PATH)/evas/src/lib
EDJE_PATH=$(E_PATH)/edje/src/lib
-CFLAGS = -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include/ -I/usr/include/python2.5 -I/usr/include/pygtk-2.0/ -I$(EVAS_PATH) -I$(EDJE_PATH) -I.
+CFLAGS = -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include/ -I/usr/include/python2.5 -I/usr/include/pygtk-2.0/ -I$(EDJE_PATH) -I.
+LDFLAGS = -ledje -L/usr/local/lib -lglib-2.0
.PHONY: all clean edje.so
@@ -12,10 +12,11 @@
$(CC) $(LDFLAGS) -shared $^ -o $@
edje.c: edje.defs edje.override
- $(PYTHON) $(CODEGEN_PATH)/codegen.py --prefix edje --override edje.override --register ../evas/evas.defs edje.defs > $@
+ $(PYTHON) $(CODEGEN_PATH)/codegen.py --prefix edje --override edje.override edje.defs > $@
-edje.defs: $(CODEGEN_PATH)/h2def.py $(EDJE_PATH)/Edje.h
+edje.defs: $(CODEGEN_PATH)/h2def.py $(EDJE_PATH)/Edje.h $(EDJE_PATH)/Edje_Edit.h
$(CODEGEN_PATH)/h2def.py $(EDJE_PATH)/Edje.h > edje.defs
+ $(CODEGEN_PATH)/h2def.py $(EDJE_PATH)/Edje_Edit.h >> edje.defs
clean:
- rm -f *.o edje.defs edje.c
+ rm -f *.o *~ edje.defs edje.c edje.so
Modified: trunk/src/host/pye17/edje/edje.override
===================================================================
--- trunk/src/host/pye17/edje/edje.override 2008-09-29 06:07:38 UTC (rev 4680)
+++ trunk/src/host/pye17/edje/edje.override 2008-09-29 11:10:27 UTC (rev 4681)
@@ -1,14 +1,11 @@
%%
headers
-#include <Python.h>
#include "pygobject.h"
-#include "Evas.h"
#include "Edje.h"
+#include "Edje_Edit.h"
%%
-modulename edje
+modulename edje
%%
-import gtk.Plug as PyGtkPlug_Type
-%%
ignore-glob
- *_get_type
-%%
+ *_get_type
+%%
\ No newline at end of file
More information about the commitlog
mailing list