Enlightenment CVS committal
Author : dj2
Project : e17
Module : libs/ewl
Dir : e17/libs/ewl/src/engines/evas
Modified Files:
ewl_engine_evas.c
Log Message:
- Split the engine function array into three smaller arrays.
- One for window functions.
- One for canvas functions.
- One for theme functions.
- This should make it easier to implement engines as you can leave the
entire array NULL if you don't want to implement the given type of
functions.
===================================================================
RCS file: /cvs/e/e17/libs/ewl/src/engines/evas/ewl_engine_evas.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- ewl_engine_evas.c 30 Sep 2006 20:53:30 -0000 1.5
+++ ewl_engine_evas.c 12 Oct 2006 21:41:17 -0000 1.6
@@ -20,20 +20,17 @@
static Evas_Object *ewl_widget_layer_neighbor_find_above(Ewl_Widget *w);
static Evas_Object *ewl_widget_layer_neighbor_find_below(Ewl_Widget *w);
-static Ewl_Engine_Info engine_funcs = {
+static void *canvas_funcs[EWL_ENGINE_CANVAS_MAX] =
{
- ee_init,
- NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL,
- NULL, NULL, NULL,
+ NULL,
ee_canvas_output_set,
ee_canvas_render,
ee_canvas_freeze,
- ee_canvas_thaw,
+ ee_canvas_thaw
+ };
+
+static void *theme_funcs[EWL_ENGINE_THEME_MAX] =
+ {
NULL, NULL, NULL,
ee_canvas_smart_new,
NULL,
@@ -53,8 +50,7 @@
evas_object_color_set,
ee_canvas_stack_add,
ee_canvas_layer_update,
- }
-};
+ };
Ecore_DList *
ewl_engine_dependancies(void)
@@ -87,11 +83,18 @@
static int
ee_init(Ewl_Engine *engine)
{
+ Ewl_Engine_Info *info;
+
DENTER_FUNCTION(DLEVEL_STABLE);
DCHECK_PARAM_PTR_RET("engine", engine, FALSE);
+ info = NEW(Ewl_Engine_Info, 1);
+ info->init = ee_init;
+ info->hooks.canvas = canvas_funcs;
+ info->hooks.theme = theme_funcs;
+
engine->name = strdup("evas");
- engine->functions = &engine_funcs;
+ engine->functions = info;
DRETURN_INT(TRUE, DLEVEL_STABLE);
}
@@ -109,9 +112,8 @@
DENTER_FUNCTION(DLEVEL_STABLE);
DCHECK_PARAM_PTR("embed", embed);
- if (embed->evas) {
+ if (embed->evas)
evas_render(embed->evas);
- }
DRETURN(DLEVEL_STABLE);
}
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs