Enlightenment CVS committal
Author : rbdpngn
Project : e17
Module : libs/ewl
Dir : e17/libs/ewl/src
Modified Files:
ewl_entry.c ewl_text.c
Log Message:
Fixed the event passing on the entry's value change callback. Added a value
change callback for the text widget.
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_entry.c,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -3 -r1.76 -r1.77
--- ewl_entry.c 5 Jan 2004 22:29:55 -0000 1.76
+++ ewl_entry.c 21 Feb 2004 18:11:11 -0000 1.77
@@ -265,6 +265,7 @@
void ewl_entry_key_down_cb(Ewl_Widget * w, void *ev_data, void *user_data)
{
Ewl_Entry *e;
+ char *evd = NULL;
Ecore_X_Event_Key_Down *ev;
DENTER_FUNCTION(DLEVEL_STABLE);
@@ -286,13 +287,13 @@
else if (!strcmp(ev->keyname, "Delete"))
ewl_entry_delete_to_right(e);
else if (!strcmp(ev->keyname, "Return") || !strcmp(ev->keyname,
- "KP_Return"))
- ewl_callback_call_with_event_data(w, EWL_CALLBACK_VALUE_CHANGED,
- EWL_TEXT(w)->text);
- else if (!strcmp(ev->keyname, "Enter") || !strcmp(ev->keyname,
- "KP_Enter"))
+ "KP_Return") || !strcmp(ev->keyname, "Enter")
+ || !strcmp(ev->keyname, "KP_Enter")) {
+ evd = ewl_text_get_text(EWL_TEXT(e->text));
ewl_callback_call_with_event_data(w, EWL_CALLBACK_VALUE_CHANGED,
EWL_TEXT(w)->text);
+ FREE(evd);
+ }
else if (ev->key_compose) {
ewl_entry_insert_text(e, ev->key_compose);
}
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/ewl_text.c,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -3 -r1.57 -r1.58
--- ewl_text.c 22 Nov 2003 20:01:02 -0000 1.57
+++ ewl_text.c 21 Feb 2004 18:11:11 -0000 1.58
@@ -78,13 +78,17 @@
void
ewl_text_set_text(Ewl_Text * t, char *text)
{
- Ewl_Widget *w;
+ Ewl_Widget *w;
+ char *evdata = NULL;
DENTER_FUNCTION(DLEVEL_STABLE);
DCHECK_PARAM_PTR("t", t);
w = EWL_WIDGET(t);
+ if ((text == t->text) || (text && t->text && !strcmp(t->text, text)))
+ DRETURN(DLEVEL_STABLE);
+
IF_FREE(t->text);
/*
@@ -111,6 +115,11 @@
else
t->length = strlen(t->text);
+ evdata = strdup(t->text);
+ ewl_callback_call_with_event_data(w, EWL_CALLBACK_VALUE_CHANGED,
+ evdata);
+ FREE(evdata);
+
DLEAVE_FUNCTION(DLEVEL_STABLE);
}
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs