Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/lib Modified Files: ewl_engines.c ewl_engines.h ewl_window.c Log Message: Abstracted canvas output size setup to the engines. Changed some fb engine copy and paste errors. Add initial evas buffer engine. =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_engines.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- ewl_engines.c 8 Sep 2006 01:05:17 -0000 1.12 +++ ewl_engines.c 30 Sep 2006 20:53:30 -0000 1.13 @@ -853,6 +853,28 @@ } /** + * @param win: the window to work with + * @return Returns no value + * @brief Sets up the canvas + */ +void +ewl_engine_canvas_output_set(Ewl_Embed *emb, int x, int y, int width, int height) +{ + Ewl_Engine_Cb_Canvas_Output_Set canvas_output_set; + + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR("emb", emb); + DCHECK_TYPE("emb", emb, EWL_EMBED_TYPE); + + canvas_output_set = ewl_engine_hook_get(emb, + EWL_ENGINE_CANVAS_OUTPUT_SET); + if (canvas_output_set) + canvas_output_set(emb, x, y, width, height); + + DLEAVE_FUNCTION(DLEVEL_STABLE); +} + +/** * @param win: the embed to work with * @return Returns no value * @brief Renders the canvas =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_engines.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- ewl_engines.h 8 Sep 2006 01:05:17 -0000 1.10 +++ ewl_engines.h 30 Sep 2006 20:53:30 -0000 1.11 @@ -43,6 +43,7 @@ EWL_ENGINE_EMBED_DND_AWARE_SET, /**< Set the window dnd aware */ EWL_ENGINE_CANVAS_SETUP, /**< Setup the render canvas */ + EWL_ENGINE_CANVAS_OUTPUT_SET, /**< Set the canvas size */ EWL_ENGINE_CANVAS_RENDER, EWL_ENGINE_CANVAS_FREEZE, @@ -150,6 +151,8 @@ void ewl_engine_embed_dnd_aware_set(Ewl_Embed *embed); void ewl_engine_canvas_setup(Ewl_Window *win, int debug); +void ewl_engine_canvas_output_set(Ewl_Embed *emb, int x, int y, + int width, int height); void ewl_engine_canvas_render(Ewl_Embed *embed); void ewl_engine_canvas_freeze(Ewl_Embed *embed); void ewl_engine_canvas_thaw(Ewl_Embed *embed); @@ -199,6 +202,8 @@ dnd aware */ typedef void (*Ewl_Engine_Cb_Canvas_Setup)(Ewl_Window *win, int debug); /**< Setup the render canvas */ +typedef void (*Ewl_Engine_Cb_Canvas_Output_Set)(Ewl_Embed *emb, int x, int y, + int width, int height); typedef void (*Ewl_Engine_Cb_Canvas_Render)(Ewl_Embed *embed); typedef void (*Ewl_Engine_Cb_Canvas_Freeze)(Ewl_Embed *embed); typedef void (*Ewl_Engine_Cb_Canvas_Thaw)(Ewl_Embed *embed); =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_window.c,v retrieving revision 1.60 retrieving revision 1.61 diff -u -3 -r1.60 -r1.61 --- ewl_window.c 30 Sep 2006 18:41:02 -0000 1.60 +++ ewl_window.c 30 Sep 2006 20:53:30 -0000 1.61 @@ -924,11 +924,11 @@ else ewl_engine_window_resize(win); - evas_output_size_set(EWL_EMBED(win)->evas, width, height); - evas_output_viewport_set(EWL_EMBED(win)->evas, - ewl_object_current_x_get(EWL_OBJECT(w)), - ewl_object_current_y_get(EWL_OBJECT(w)), - width, height); + ewl_engine_canvas_output_set(EWL_EMBED(win), + ewl_object_current_x_get(EWL_OBJECT(win)), + ewl_object_current_y_get(EWL_OBJECT(win)), + ewl_object_current_w_get(EWL_OBJECT(win)), + ewl_object_current_h_get(EWL_OBJECT(win))); /* * Adjust the minimum and maximum window bounds to match the widget. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs