On Fri, May 27, 2011 at 21:31, Enlightenment SVN <[email protected]> wrote: > Log: > Ecore_Evas: introduce ecore_evas_screen_geometry_get() > > This common interface allows engines to provide whole screen > information to users. > > Right now just X is implemented and it queries the size of the default > screen. I hope this is fine. > > > > Author: barbieri > Date: 2011-05-27 12:31:11 -0700 (Fri, 27 May 2011) > New Revision: 59761 > Trac: http://trac.enlightenment.org/e/changeset/59761 > > Modified: > trunk/ecore/ChangeLog trunk/ecore/src/lib/ecore_evas/Ecore_Evas.h > trunk/ecore/src/lib/ecore_evas/ecore_evas.c > trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c > trunk/ecore/src/lib/ecore_evas/ecore_evas_directfb.c > trunk/ecore/src/lib/ecore_evas/ecore_evas_fb.c > trunk/ecore/src/lib/ecore_evas/ecore_evas_private.h > trunk/ecore/src/lib/ecore_evas/ecore_evas_sdl.c > trunk/ecore/src/lib/ecore_evas/ecore_evas_win32.c > trunk/ecore/src/lib/ecore_evas/ecore_evas_wince.c > trunk/ecore/src/lib/ecore_evas/ecore_evas_x.c > > Modified: trunk/ecore/ChangeLog > =================================================================== > --- trunk/ecore/ChangeLog 2011-05-27 19:17:04 UTC (rev 59760) > +++ trunk/ecore/ChangeLog 2011-05-27 19:31:11 UTC (rev 59761) > @@ -198,3 +198,7 @@ > (_ecore_main_loop_iterate_internal). This fixes fd handler pending > issue when ecore_idler callback adds ecore_job/event. > * Ecore ecore_main.c: Refactoring _ecore_main_loop_iterate_internal(). > + > +2011-05-27 Gustavo Sverzut Barbieri (k-s) > + > + * Ecore_Evas: introduce ecore_evas_screen_geometry_get() > > Modified: trunk/ecore/src/lib/ecore_evas/Ecore_Evas.h > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/Ecore_Evas.h 2011-05-27 19:17:04 UTC (rev > 59760) > +++ trunk/ecore/src/lib/ecore_evas/Ecore_Evas.h 2011-05-27 19:31:11 UTC (rev > 59761) > @@ -350,6 +350,8 @@ > > EAPI Ecore_Window ecore_evas_window_get(const Ecore_Evas *ee); > > +EAPI void ecore_evas_screen_geometry_get(const Ecore_Evas *ee, int > *x, int *y, int *w, int *h); > + > EAPI Eina_Bool ecore_evas_object_associate(Ecore_Evas *ee, Evas_Object > *obj, Ecore_Evas_Object_Associate_Flags flags); > EAPI Eina_Bool ecore_evas_object_dissociate(Ecore_Evas *ee, Evas_Object > *obj); > EAPI Evas_Object *ecore_evas_object_associate_get(const Ecore_Evas *ee); > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas.c 2011-05-27 19:17:04 UTC (rev > 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas.c 2011-05-27 19:31:11 UTC (rev > 59761) > @@ -2675,6 +2675,35 @@ > return ee->prop.window; > } > > +/** > + * Get whole screen geometry associated with this Ecore_Evas. > + * > + * @param ee The Ecore_Evas whose window's to query container screen > geometry. > + * @param x where to return the horizontal offset value. May be NULL. > + * @param y where to return the vertical offset value. May be NULL. > + * @param w where to return the width value. May be NULL. > + * @param h where to return the height value. May be NULL. > + * > + * @since 1.1 > + */ > +EAPI void > +ecore_evas_screen_geometry_get(const Ecore_Evas *ee, int *x, int *y, int *w, > int *h) > +{ > + if (x) *x = 0; > + if (y) *y = 0; > + if (w) *w = 0; > + if (h) *h = 0; > + if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS)) > + { > + ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS, > + "ecore_evas_screen_geometry_get"); > + return; > + } > + > + IFC(ee, fn_screen_geometry_get) (ee, x, y, w, h); > + IFE; > +} > + > /* fps debug calls - for debugging how much time your app actually spends */ > /* rendering graphics... :) */ > > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c 2011-05-27 19:17:04 > UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c 2011-05-27 19:31:11 > UTC (rev 59761) > @@ -491,7 +491,8 @@ > NULL, > NULL, //transparent > > - NULL // render > + NULL, // render > + NULL // screen_geometry_get > }; > #endif > > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_directfb.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_directfb.c 2011-05-27 > 19:17:04 UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_directfb.c 2011-05-27 > 19:31:11 UTC (rev 59761) > @@ -486,7 +486,8 @@ > NULL, /* alpha */ > NULL, //transparent > > - NULL // render > + NULL, // render > + NULL // screen_geometry_get > }; > #endif > > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_fb.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_fb.c 2011-05-27 19:17:04 > UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_fb.c 2011-05-27 19:31:11 > UTC (rev 59761) > @@ -572,7 +572,8 @@ > NULL, > NULL, //transparent > > - NULL // render > + NULL, // render > + NULL // screen_geometry_get > }; > #endif > > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_private.h > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_private.h 2011-05-27 19:17:04 > UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_private.h 2011-05-27 19:31:11 > UTC (rev 59761) > @@ -186,6 +186,7 @@ > void (*fn_transparent_set) (Ecore_Evas *ee, int transparent); > > int (*fn_render) (Ecore_Evas *ee); > + void (*fn_screen_geometry_get) (const Ecore_Evas *ee, int *x, int > *y, int *w, int *h); > }; > > struct _Ecore_Evas_Engine > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_sdl.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_sdl.c 2011-05-27 19:17:04 > UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_sdl.c 2011-05-27 19:31:11 > UTC (rev 59761) > @@ -333,7 +333,8 @@ > NULL, > NULL, //transparent > > - NULL // render > + NULL, // render > + NULL screen_geometry_get > }; > > static Ecore_Evas* > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_win32.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_win32.c 2011-05-27 19:17:04 > UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_win32.c 2011-05-27 19:31:11 > UTC (rev 59761) > @@ -925,7 +925,8 @@ > NULL, /* _ecore_evas_x_alpha_set */ > NULL, //transparent > > - NULL // render > + NULL, // render > + NULL //screen_geometry_get > }; > > #endif /* BUILD_ECORE_EVAS_WIN32 */ > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_wince.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_wince.c 2011-05-27 19:17:04 > UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_wince.c 2011-05-27 19:31:11 > UTC (rev 59761) > @@ -721,7 +721,8 @@ > NULL, /* _ecore_evas_x_alpha_set */ > NULL, //transparent > > - NULL // render > + NULL, // render > + NULL // screen_geometry_get > }; > > /* API */ > > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_x.c > =================================================================== > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_x.c 2011-05-27 19:17:04 > UTC (rev 59760) > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_x.c 2011-05-27 19:31:11 > UTC (rev 59761) > @@ -2912,6 +2912,14 @@ > } > } > > +static void > +_ecore_evas_x_screen_geometry_get(const Ecore_Evas *ee __UNUSED__, int *x, > int *y, int *w, int *h) > +{ > + if (x) *x = 0; > + if (y) *y = 0; > + ecore_x_screen_size_get(ecore_x_default_screen_get(), w, h); > +} > + > int > _ecore_evas_x_shutdown(void) > { > @@ -2980,7 +2988,8 @@ > _ecore_evas_x_alpha_set, > _ecore_evas_x_transparent_set, > > - NULL // render > + NULL, // render > + _ecore_evas_x_screen_geometry_get > }; > #endif /* BUILD_ECORE_EVAS_X11 */
This commit breaks ecore build with ecore_evas_sdl enabled due to a typo. Attached patch fixes it. Patch is on ecore root, not trunk.
fix_ecore_evas_sdl-typo.patch
Description: Binary data
------------------------------------------------------------------------------ Simplify data backup and recovery for your virtual environment with vRanger. Installation's a snap, and flexible recovery options mean your data is safe, secure and there when you need it. Data protection magic? Nope - It's vRanger. Get your free trial download today. http://p.sf.net/sfu/quest-sfdev2dev
_______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
