Enlightenment CVS committal Author : codewarrior Project : e17 Module : proto
Dir : e17/proto/enterminus/src/bin Modified Files: enterm.c handlers.c smart.c term.h Log Message: 1) added TERM_EVENT_TITLE_CHANGE 2) propagated ecore event from term_smart to enterm =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/enterminus/src/bin/enterm.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- enterm.c 8 Feb 2005 11:45:58 -0000 1.1 +++ enterm.c 18 Feb 2005 23:19:06 -0000 1.2 @@ -1,4 +1,5 @@ #include "term.h" +#include "enterm.h" void enterm_init(Ecore_Evas *ee, Evas_Object *term) { @@ -9,6 +10,8 @@ ecore_evas_callback_resize_set(ee, enterm_cb_resize); ecore_x_window_prop_step_size_set(ecore_evas_software_x11_window_get(ee), t->font.width, t->font.height); + ecore_event_handler_add(TERM_EVENT_TITLE_CHANGE, + enterm_cb_title_change, ee); ecore_evas_resize(ee, t->w, t->h); } @@ -22,3 +25,13 @@ term_smart_resize(term , w, h); } + +void enterm_cb_title_change(void *data, int type, void *ev) { + Term_Event_Title_Change *e; + Ecore_Evas *ee; + + e = ev; + ee = data; + ecore_x_window_prop_title_set(ecore_evas_software_x11_window_get(ee), + e->title); +} =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/enterminus/src/bin/handlers.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- handlers.c 8 Feb 2005 11:45:58 -0000 1.5 +++ handlers.c 18 Feb 2005 23:19:06 -0000 1.6 @@ -5,6 +5,8 @@ int len; int buflen; unsigned char c; + Term_Event_Title_Change *e; + Ecore_Event *event; c = term_tcanvas_data_pop(term); for(len = 0; c != '\007'; len++) { @@ -22,9 +24,12 @@ if(term->title) free(term->title); term->title = malloc(sizeof(buf)); snprintf(term->title, sizeof(buf), "%s", buf); + e = malloc(sizeof(Term_Event_Title_Change)); + e->title = strdup(term->title); + event = ecore_event_add(TERM_EVENT_TITLE_CHANGE, e, + term_event_title_change_free, NULL); /* TODO: MOVE THIS TO FRONTEND CODE */ - //ecore_x_window_prop_title_set(ecore_evas_software_x11_window_get(term->ee), - // buf); +//ecore_x_window_prop_title_set(ecore_evas_software_x11_window_get(term->ee),buf); break; } } @@ -454,3 +459,12 @@ } } + +void term_event_title_change_free(void *data, void *ev) { + + Term_Event_Title_Change *e; + e = ev; + free(e->title); + free(e); +} + =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/enterminus/src/bin/smart.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- smart.c 18 Feb 2005 21:59:04 -0000 1.4 +++ smart.c 18 Feb 2005 23:19:06 -0000 1.5 @@ -8,6 +8,7 @@ Evas_Object *term_new(Evas *evas) { Evas_Object *term; term = evas_object_smart_add(evas, term_smart_get()); + TERM_EVENT_TITLE_CHANGE = ecore_event_type_new(); return term; } =================================================================== RCS file: /cvsroot/enlightenment/e17/proto/enterminus/src/bin/term.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- term.h 18 Feb 2005 21:59:04 -0000 1.5 +++ term.h 18 Feb 2005 23:19:06 -0000 1.6 @@ -30,9 +30,9 @@ #define DPRINT(stuff) #endif +int TERM_EVENT_TITLE_CHANGE; -enum Term_Key_Modifiers -{ +enum Term_Key_Modifiers { TERM_KEY_MODIFIER_SHIFT = 0x1, TERM_KEY_MODIFIER_CTRL = 0x2, TERM_KEY_MODIFIER_ALT = 0x4, @@ -41,7 +41,12 @@ }; typedef enum Term_Key_Modifiers Term_Key_Modifiers; +struct _Term_Event_Title_Change { + char *title; +}; +typedef struct _Term_Event_Title_Change Term_Event_Title_Change; +/* are those still global vars? if so, remove them */ char *ptydev, *ttydev; pid_t pid; @@ -184,3 +189,6 @@ void enterm_init(Ecore_Evas *ee, Evas_Object *term); void enterm_cb_resize(Ecore_Evas *ee); + +void term_event_title_change_free(void *data, void *ev); + ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs