Enlightenment CVS committal
Author : rbdpngn
Project : e17
Module : libs/ewl
Dir : e17/libs/ewl/src/lib
Modified Files:
ewl_enums.h ewl_widget.c ewl_widget.h
Log Message:
Beginning to merge an object cache, beginning with the basic callbacks. These
are not used yet.
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_enums.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -3 -r1.8 -r1.9
--- ewl_enums.h 25 Sep 2005 05:02:19 -0000 1.8
+++ ewl_enums.h 27 Sep 2005 03:26:32 -0000 1.9
@@ -21,6 +21,8 @@
EWL_CALLBACK_UNREALIZE, /**< When a widget is no longer drawn */
EWL_CALLBACK_SHOW, /**< A widget has been marked visible */
EWL_CALLBACK_HIDE, /**< A widget is marked hidden */
+ EWL_CALLBACK_OBSCURE, /**< Widget is offscreen */
+ EWL_CALLBACK_REVEAL, /**< Widget returned to screen */
EWL_CALLBACK_DESTROY, /**< The widget is freed */
EWL_CALLBACK_DELETE_WINDOW, /**< The window is being closed */
EWL_CALLBACK_CONFIGURE, /**< The object is being resized */
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_widget.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -3 -r1.15 -r1.16
--- ewl_widget.c 16 Sep 2005 19:00:24 -0000 1.15
+++ ewl_widget.c 27 Sep 2005 03:26:32 -0000 1.16
@@ -222,6 +222,49 @@
}
/**
+ * @param w: the widget to mark as revealed
+ * @return Returns no value.
+ * @brief Indicate a widget is revealed.
+ */
+void ewl_widget_reveal(Ewl_Widget *w)
+{
+ Ewl_Embed *emb;
+
+ DENTER_FUNCTION(DLEVEL_STABLE);
+ DCHECK_PARAM_PTR("w", w);
+
+ ewl_object_visible_remove(EWL_OBJECT(w), EWL_FLAG_VISIBLE_OBSCURED);
+
+ emb = ewl_embed_widget_find(w);
+ if (emb && emb->evas) {
+ ewl_callback_call(w, EWL_CALLBACK_REVEAL);
+ }
+
+ ewl_widget_configure(w);
+
+ DLEAVE_FUNCTION(DLEVEL_STABLE);
+}
+
+/**
+ * @param w: the widget to mark as obscured
+ * @return Returns no value.
+ * @brief Indicate a widget is obscured.
+ */
+void ewl_widget_obscure(Ewl_Widget *w)
+{
+ DENTER_FUNCTION(DLEVEL_STABLE);
+ DCHECK_PARAM_PTR("w", w);
+
+ ewl_object_visible_add(EWL_OBJECT(w), EWL_FLAG_VISIBLE_OBSCURED);
+
+ if (REALIZED(w) || ewl_object_queued_has(EWL_OBJECT(w),
+ EWL_FLAG_QUEUED_RSCHEDULED))
+ ewl_callback_call(w, EWL_CALLBACK_OBSCURE);
+
+ DLEAVE_FUNCTION(DLEVEL_STABLE);
+}
+
+/**
* @param w: the widget to be marked as visible
* @return Returns no value.
* @brief mark a widget as visible
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_widget.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- ewl_widget.h 25 Sep 2005 05:02:19 -0000 1.12
+++ ewl_widget.h 27 Sep 2005 03:26:32 -0000 1.13
@@ -117,6 +117,16 @@
void ewl_widget_unrealize(Ewl_Widget * w);
/*
+ * * Mark the widget to be revealed.
+ * */
+void ewl_widget_reveal(Ewl_Widget *w);
+
+/*
+ * * Mark the widget to be obscured.
+ * */
+void ewl_widget_obscure(Ewl_Widget *w);
+
+/*
* Mark the widget to be displayed.
*/
void ewl_widget_show(Ewl_Widget * widget);
-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs