Index: Evas.h =================================================================== RCS file: /cvs/e/e17/libs/evas/src/lib/Evas.h,v retrieving revision 1.105 diff -u -r1.105 Evas.h --- Evas.h 3 Oct 2007 04:09:36 -0000 1.105 +++ Evas.h 5 Dec 2007 22:29:34 -0000 @@ -574,6 +574,7 @@ /* textblock objects */ typedef struct _Evas_Textblock_Style Evas_Textblock_Style; + typedef struct _Evas_Textblock_Obstacle Evas_Textblock_Obstacle; typedef struct _Evas_Textblock_Cursor Evas_Textblock_Cursor; typedef struct _Evas_Textblock_Rectangle Evas_Textblock_Rectangle; @@ -600,10 +601,18 @@ EAPI void evas_object_textblock_text_markup_set(Evas_Object *obj, const char *text); EAPI const char *evas_object_textblock_text_markup_get(Evas_Object *obj); - + + EAPI Evas_Textblock_Obstacle *evas_textblock_obstacle_new(void); + EAPI void evas_textblock_obstacle_free(Evas_Textblock_Obstacle *to); + EAPI void evas_textblock_obstacle_object_set(Evas_Textblock_Obstacle *to, Evas_Object *obj); + + EAPI void evas_textblock_cursor_obstacle_prepend(Evas_Textblock_Cursor *cur, Evas_Textblock_Obstacle *to); + EAPI void evas_textblock_cursor_obstacle_append(Evas_Textblock_Cursor *cur, Evas_Textblock_Obstacle *to); + EAPI Evas_Textblock_Obstacle *evas_textblock_cursor_node_obstacle_get(Evas_Textblock_Cursor *cur); + EAPI const Evas_Textblock_Cursor *evas_object_textblock_cursor_get(Evas_Object *obj); EAPI Evas_Textblock_Cursor *evas_object_textblock_cursor_new(Evas_Object *obj); - + EAPI void evas_textblock_cursor_free(Evas_Textblock_Cursor *cur); EAPI void evas_textblock_cursor_node_first(Evas_Textblock_Cursor *cur); Index: canvas/evas_object_textblock.c =================================================================== RCS file: /cvs/e/e17/libs/evas/src/lib/canvas/evas_object_textblock.c,v retrieving revision 1.143 diff -u -r1.143 evas_object_textblock.c --- canvas/evas_object_textblock.c 13 Sep 2007 23:16:11 -0000 1.143 +++ canvas/evas_object_textblock.c 5 Dec 2007 22:29:34 -0000 @@ -106,6 +106,12 @@ unsigned char delete_me : 1; }; +struct _Evas_Textblock_Obstacle +{ + Evas_Object *obj; + unsigned char at_cursor : 1; +}; + struct _Evas_Textblock_Cursor { Evas_Object *obj;