Enlightenment CVS committal Author : pfritz Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/lib Modified Files: ewl_callback.h ewl_container.c ewl_container.h ewl_embed.c Log Message: - add ewl_container_callback_nonotify() - remove in embed_init() the notify flags set by the cell =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_callback.h,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- ewl_callback.h 4 Mar 2007 00:52:01 -0000 1.16 +++ ewl_callback.h 8 Dec 2007 22:07:41 -0000 1.17 @@ -123,6 +123,13 @@ w->callbacks[EWL_CALLBACK_INDEX(t)].mask |= EWL_CALLBACK_NOTIFY_NOTIFY /** + * @def EWL_CALLBACK_FLAG_NONOTIFY(w, t) + * Remove the callback notify flag from a widget for a certain event type. + */ +#define EWL_CALLBACK_FLAG_NONOTIFY(w, t) \ + w->callbacks[EWL_CALLBACK_INDEX(t)].mask &= ~EWL_CALLBACK_NOTIFY_NOTIFY + +/** * @def EWL_CALLBACK_SET_DIRECT(w, t) * Sets the callback direct flag for a centain event type */ =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_container.c,v retrieving revision 1.67 retrieving revision 1.68 diff -u -3 -r1.67 -r1.68 --- ewl_container.c 12 Nov 2007 22:42:22 -0000 1.67 +++ ewl_container.c 8 Dec 2007 22:07:41 -0000 1.68 @@ -980,6 +980,26 @@ } /** + * @param c: the container to not notify the callback + * @param t: the type of callback to not notify + * @return Returns no value. + * @brief receive a callback of a child + * + * Removes the notification flag set with ewl_container_callback_notify() + */ +void +ewl_container_callback_nonotify(Ewl_Container *c, unsigned int t) +{ + DENTER_FUNCTION(DLEVEL_STABLE); + DCHECK_PARAM_PTR(c); + DCHECK_TYPE(c, EWL_CONTAINER_TYPE); + + EWL_CALLBACK_FLAG_NONOTIFY(EWL_WIDGET(c), t); + + DLEAVE_FUNCTION(DLEVEL_STABLE); +} + +/** * @param c: the container to change preferred size * @param o: the orientation/direction to prefer the largest widget * @return Returns no value. =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_container.h,v retrieving revision 1.34 retrieving revision 1.35 diff -u -3 -r1.34 -r1.35 --- ewl_container.h 11 Nov 2007 06:07:46 -0000 1.34 +++ ewl_container.h 8 Dec 2007 22:07:41 -0000 1.35 @@ -150,6 +150,8 @@ void ewl_container_reset(Ewl_Container *c); void ewl_container_callback_notify(Ewl_Container *c, unsigned int t); +void ewl_container_callback_nonotify(Ewl_Container *c, + unsigned int t); void ewl_container_callback_intercept(Ewl_Container *c, unsigned int t); void ewl_container_callback_nointercept(Ewl_Container *c, =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_embed.c,v retrieving revision 1.133 retrieving revision 1.134 diff -u -3 -r1.133 -r1.134 --- ewl_embed.c 6 Dec 2007 07:07:12 -0000 1.133 +++ ewl_embed.c 8 Dec 2007 22:07:41 -0000 1.134 @@ -100,6 +100,12 @@ ewl_object_fill_policy_set(EWL_OBJECT(w), EWL_FLAG_FILL_NONE); ewl_object_toplevel_set(EWL_OBJECT(w), EWL_FLAG_PROPERTY_TOPLEVEL); + + /* remove the notify flags set by the cell */ + ewl_container_callback_nonotify(EWL_CONTAINER(w), + EWL_CALLBACK_FOCUS_IN); + ewl_container_callback_nonotify(EWL_CONTAINER(w), + EWL_CALLBACK_FOCUS_OUT); ewl_callback_append(EWL_WIDGET(w), EWL_CALLBACK_REALIZE, ewl_embed_cb_realize, NULL); ------------------------------------------------------------------------- SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs