summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Hirt <daniel.hirt@samsung.com>2015-08-03 14:55:23 +0300
committerDaniel Hirt <daniel.hirt@samsung.com>2015-08-03 14:55:23 +0300
commit3b53505056ae9ba7be76d48e56eac586af288802 (patch)
treefafcea54eab0037d3c5eb51c52b620e40a752594
parent11aff4d04d88c374e48c009fc3e7a2fadf1f847a (diff)
Add more info for items, fix in/out behavior
-rw-r--r--src/lib/eo_preload.c165
-rw-r--r--src/lib/textblock_defs.h236
2 files changed, 348 insertions, 53 deletions
diff --git a/src/lib/eo_preload.c b/src/lib/eo_preload.c
index 1cd2c2c..444ca41 100644
--- a/src/lib/eo_preload.c
+++ b/src/lib/eo_preload.c
@@ -7,8 +7,68 @@
7 7
8#include <Eolian.h> 8#include <Eolian.h>
9 9
10#include "textblock_defs.h"
11
10static Eina_List *tracked = NULL; 12static Eina_List *tracked = NULL;
11 13
14typedef struct
15{
16 EINA_INLIST;
17 Evas_Object *obj;
18 void *data;
19 void (*func)(void *data);
20} In_Stack_Item;
21
22static In_Stack_Item *g_in_stack = NULL;
23
24static void
25_in_stack_pop(In_Stack_Item **_stack, Evas_Object *obj)
26{
27 In_Stack_Item *stack = *_stack;
28 In_Stack_Item *tmp;
29
30 if (obj)
31 {
32 EINA_INLIST_FOREACH(EINA_INLIST_GET(stack), tmp)
33 {
34 if (tmp->obj == obj)
35 {
36 break;
37 }
38 }
39 }
40 else
41 {
42 tmp = stack;
43 }
44
45 if (!tmp) return;
46
47 stack = (In_Stack_Item *) eina_inlist_remove(
48 EINA_INLIST_GET(stack),
49 EINA_INLIST_GET(tmp));
50 free(tmp);
51
52 *_stack = stack;
53}
54
55static void
56_in_stack_push(In_Stack_Item **_stack, Evas_Object *obj, void *data,
57 void (*func)(void *data))
58{
59 In_Stack_Item *stack = *_stack;
60 In_Stack_Item *it = malloc(sizeof(In_Stack_Item));
61 it->obj = obj;
62 it->data = data;
63 it->func = func;
64
65 stack =
66 (In_Stack_Item *) eina_inlist_prepend(
67 EINA_INLIST_GET(stack),
68 EINA_INLIST_GET(it));
69
70 *_stack = stack;
71}
12 72
13typedef struct 73typedef struct
14{ 74{
@@ -81,6 +141,7 @@ _textblock_item_content_cb(void *data,
81 sprintf(buf, "Item %p<ps>" 141 sprintf(buf, "Item %p<ps>"
82 "Need info here", 142 "Need info here",
83 obj); 143 obj);
144 buf[0] = '\0';
84 elm_object_part_text_set(text, "elm.text", buf); 145 elm_object_part_text_set(text, "elm.text", buf);
85 146
86 return text; 147 return text;
@@ -100,15 +161,16 @@ _elm_parent_get(Evas_Object *obj)
100 return p; 161 return p;
101} 162}
102 163
164/******** Tooltip *********/
103typedef struct 165typedef struct
104{ 166{
105 int idx; 167 int idx;
106 Evas_Coord x, y, w, h; 168 Evas_Coord x, y, w, h;
169 Evas_Textblock_Item_Type type;
170 Evas_Script_Type script;
107 Eina_Rectangle *rect; 171 Eina_Rectangle *rect;
108} Textblock_Item_Debug_Data; 172} Textblock_Item_Debug_Data;
109 173
110/******** Tooltip *********/
111
112int g_idx = 0; 174int g_idx = 0;
113 175
114static Evas_Object * 176static Evas_Object *
@@ -118,9 +180,10 @@ _entry_tooltip_content_cb(void *data,
118{ 180{
119 printf("Entry Tooltip cb\n"); 181 printf("Entry Tooltip cb\n");
120 char buf[1024]; 182 char buf[1024];
183 Debug_Decorate *dec = data;
121 Evas_Object *text = elm_label_add(tt); 184 Evas_Object *text = elm_label_add(tt);
122 185
123 Elm_Wrap_Type wrap = elm_entry_line_wrap_get(data); 186 Elm_Wrap_Type wrap = elm_entry_line_wrap_get(dec->obj);
124 187
125 evas_object_resize(text, 200, 50); 188 evas_object_resize(text, 200, 50);
126 189
@@ -134,8 +197,10 @@ _entry_tooltip_content_cb(void *data,
134 return text; 197 return text;
135} 198}
136 199
200#if 0
137static Evas_Object *g_tb_in = NULL; 201static Evas_Object *g_tb_in = NULL;
138static void *g_tb_in_data = NULL; 202static void *g_tb_in_data = NULL;
203#endif
139 204
140static void 205static void
141_handle_item_in(void *data) 206_handle_item_in(void *data)
@@ -145,12 +210,24 @@ _handle_item_in(void *data)
145 Textblock_Item_Debug_Data *d = r->src_data; 210 Textblock_Item_Debug_Data *d = r->src_data;
146 printf("Item %d in\n", d->idx); 211 printf("Item %d in\n", d->idx);
147 212
148 sprintf(buf, 213 if (d->type == EVAS_TEXTBLOCK_ITEM_TEXT)
149 "Item %d<ps>" 214 {
150 "Coords: (%d,%d) Size: %dx%d", 215 sprintf(buf,
151 d->idx, 216 "Text Item %d<ps>"
152 d->x, d->y, d->w, d->h); 217 "Coords: (%d,%d) Size: %dx%d<ps>"
153 218 "Script: %s",
219 d->idx,
220 d->x, d->y, d->w, d->h,
221 evas_scripts[d->script]);
222 }
223 else
224 {
225 sprintf(buf,
226 "Format Item (%d)<ps>"
227 "Coords: (%d,%d) Size: %dx%d<ps>",
228 d->idx,
229 d->x, d->y, d->w, d->h);
230 }
154 elm_object_tooltip_text_set(r->dec->obj, buf); 231 elm_object_tooltip_text_set(r->dec->obj, buf);
155} 232}
156 233
@@ -164,6 +241,7 @@ _textblock_handle_mouse_in(void *data)
164static Eina_Bool 241static Eina_Bool
165_item_mouse_in(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info) 242_item_mouse_in(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info)
166{ 243{
244 _in_stack_push(&g_in_stack, obj, data, _handle_item_in);
167 _handle_item_in(data); 245 _handle_item_in(data);
168 return EINA_TRUE; 246 return EINA_TRUE;
169} 247}
@@ -172,12 +250,16 @@ static Eina_Bool
172_item_mouse_out(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info) 250_item_mouse_out(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info)
173{ 251{
174 printf("Item out\n"); 252 printf("Item out\n");
175 253#if 0
176 if (g_tb_in) 254 if (g_tb_in)
177 { 255 {
178 _textblock_handle_mouse_in(g_tb_in_data); 256 _textblock_handle_mouse_in(g_tb_in_data);
179 } 257 }
258#else
259 _in_stack_pop(&g_in_stack, obj);
260 if (g_in_stack) g_in_stack->func(g_in_stack->data);
180 261
262#endif
181 return EINA_TRUE; 263 return EINA_TRUE;
182} 264}
183 265
@@ -215,59 +297,29 @@ _textblock_populate_items(Evas_Object *tb, Debug_Decorate *dec)
215} 297}
216 298
217static Eina_Bool 299static Eina_Bool
218_paragraph_mouse_in(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info) 300_textblock_mouse_in_cb(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info)
219{ 301{
220 printf("Paragraph in\n"); 302 printf("Textblock in\n");
221 Debug_Rect *r = data;
222 elm_object_tooltip_content_cb_set(r->dec->obj, _entry_tooltip_content_cb, r->dec, NULL);
223 303
304 _in_stack_push(&g_in_stack, obj, data, _textblock_handle_mouse_in);
305 _textblock_handle_mouse_in(data);
306#if 0
307 g_tb_in = obj;
308 g_tb_in_data = data;
309#endif
224 return EINA_TRUE; 310 return EINA_TRUE;
225} 311}
226 312
227static void
228_textblock_populate_paragraphs(Evas_Object *tb, Debug_Decorate *dec)
229{
230 Eina_List *rects;
231 Eina_Rectangle *rect;
232 Evas_Coord ox, oy;
233 evas_object_geometry_get(tb, &ox, &oy, NULL, NULL);
234
235 /* Decorate Paragraphs */
236 rects = _evas_textblock_par_rects_get(tb);
237 EINA_LIST_FREE(rects, rect)
238 {
239 Debug_Rect *r = calloc(1, sizeof(Debug_Rect));
240 Rect_Color c = colors[color_idx];
241 CYCLE_ARR(colors, color_idx);
242
243 r->obj = evas_object_rectangle_add(dec->obj);
244 r->dec = dec;
245 evas_object_repeat_events_set(r->obj, EINA_TRUE);
246 eo_do(r->obj, eo_event_callback_add(EVAS_OBJECT_EVENT_MOUSE_IN, _paragraph_mouse_in, r));
247 evas_object_resize(r->obj, rect->w, rect->h);
248 evas_object_color_set(r->obj, c.r, c.g, c.b, c.a);
249 evas_object_move(r->obj, ox + rect->x, oy + rect->y);
250 dec->rects = (Debug_Rect *)eina_inlist_append(
251 EINA_INLIST_GET(dec->rects),
252 EINA_INLIST_GET(r));
253 evas_object_show(r->obj);
254 eina_rectangle_free(rect);
255 }
256}
257
258static Eina_Bool 313static Eina_Bool
259_textblock_mouse_in_cb(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info) 314_textblock_mouse_out_cb(void *data, Eo *obj, const Eo_Event_Description *desc, void *event_info)
260{ 315{
261 printf("Textblock in\n"); 316 printf("Textblock in\n");
262 317
263 _textblock_handle_mouse_in(data); 318 _in_stack_pop(&g_in_stack, obj);
264 g_tb_in = obj; 319 if (g_in_stack) g_in_stack->func(g_in_stack->data);
265 g_tb_in_data = data;
266
267 return EINA_TRUE; 320 return EINA_TRUE;
268} 321}
269 322
270
271static void 323static void
272_textblock_bg_add(Evas_Object *tb, Debug_Decorate *dec) 324_textblock_bg_add(Evas_Object *tb, Debug_Decorate *dec)
273{ 325{
@@ -280,7 +332,6 @@ _textblock_bg_add(Evas_Object *tb, Debug_Decorate *dec)
280 r->dec = dec; 332 r->dec = dec;
281 evas_object_repeat_events_set(r->obj, EINA_TRUE); 333 evas_object_repeat_events_set(r->obj, EINA_TRUE);
282 eo_do(r->obj, eo_event_callback_add(EVAS_OBJECT_EVENT_MOUSE_IN, _textblock_mouse_in_cb, r)); 334 eo_do(r->obj, eo_event_callback_add(EVAS_OBJECT_EVENT_MOUSE_IN, _textblock_mouse_in_cb, r));
283 //evas_object_color_set(r->obj, 0, 0, 0, 0);
284 evas_object_color_set(r->obj, c.r, c.g, c.b, c.a); 335 evas_object_color_set(r->obj, c.r, c.g, c.b, c.a);
285 evas_object_resize(r->obj, ow, oh); 336 evas_object_resize(r->obj, ow, oh);
286 evas_object_move(r->obj, ox, oy); 337 evas_object_move(r->obj, ox, oy);
@@ -417,11 +468,19 @@ _eo_add_internal_start(const char *file, int line, const Eo_Class *klass_id, Eo
417 } 468 }
418 return ret; 469 return ret;
419} 470}
471EAPI int
472elm_init(int argc, char **argv)
473{
474 int ret;
475 int (*f)(int argc, char **argv) = dlsym(RTLD_NEXT, __func__);
476 _init_colors();
477 ret = f(argc, argv);
478 return ret;
479}
420 480
421EAPI void 481EAPI void
422elm_run() 482elm_run()
423{ 483{
424 void (*f)() = dlsym(RTLD_NEXT, __func__); 484 void (*f)() = dlsym(RTLD_NEXT, __func__);
425 _init_colors();
426 f(); 485 f();
427} 486}
diff --git a/src/lib/textblock_defs.h b/src/lib/textblock_defs.h
new file mode 100644
index 0000000..475ce06
--- /dev/null
+++ b/src/lib/textblock_defs.h
@@ -0,0 +1,236 @@
1#ifndef TEXTBLOCK_DEFS_H_
2#define TEXTBLOCK_DEFS_H_
3
4/* Unicode Script property */
5typedef enum
6{
7 EVAS_SCRIPT_COMMON = 0, /* Zyyy */
8 EVAS_SCRIPT_INHERITED, /* Qaai */
9 EVAS_SCRIPT_ARABIC, /* Arab */
10 EVAS_SCRIPT_ARMENIAN, /* Armn */
11 EVAS_SCRIPT_BENGALI, /* Beng */
12 EVAS_SCRIPT_BOPOMOFO, /* Bopo */
13 EVAS_SCRIPT_CHEROKEE, /* Cher */
14 EVAS_SCRIPT_COPTIC, /* Qaac */
15 EVAS_SCRIPT_CYRILLIC, /* Cyrl (Cyrs) */
16 EVAS_SCRIPT_DESERET, /* Dsrt */
17 EVAS_SCRIPT_DEVANAGARI, /* Deva */
18 EVAS_SCRIPT_ETHIOPIC, /* Ethi */
19 EVAS_SCRIPT_GEORGIAN, /* Geor (Geon, Geoa) */
20 EVAS_SCRIPT_GOTHIC, /* Goth */
21 EVAS_SCRIPT_GREEK, /* Grek */
22 EVAS_SCRIPT_GUJARATI, /* Gujr */
23 EVAS_SCRIPT_GURMUKHI, /* Guru */
24 EVAS_SCRIPT_HAN, /* Hani */
25 EVAS_SCRIPT_HANGUL, /* Hang */
26 EVAS_SCRIPT_HEBREW, /* Hebr */
27 EVAS_SCRIPT_HIRAGANA, /* Hira */
28 EVAS_SCRIPT_KANNADA, /* Knda */
29 EVAS_SCRIPT_KATAKANA, /* Kana */
30 EVAS_SCRIPT_KHMER, /* Khmr */
31 EVAS_SCRIPT_LAO, /* Laoo */
32 EVAS_SCRIPT_LATIN, /* Latn (Latf, Latg) */
33 EVAS_SCRIPT_MALAYALAM, /* Mlym */
34 EVAS_SCRIPT_MONGOLIAN, /* Mong */
35 EVAS_SCRIPT_MYANMAR, /* Mymr */
36 EVAS_SCRIPT_OGHAM, /* Ogam */
37 EVAS_SCRIPT_OLD_ITALIC, /* Ital */
38 EVAS_SCRIPT_ORIYA, /* Orya */
39 EVAS_SCRIPT_RUNIC, /* Runr */
40 EVAS_SCRIPT_SINHALA, /* Sinh */
41 EVAS_SCRIPT_SYRIAC, /* Syrc (Syrj, Syrn, Syre) */
42 EVAS_SCRIPT_TAMIL, /* Taml */
43 EVAS_SCRIPT_TELUGU, /* Telu */
44 EVAS_SCRIPT_THAANA, /* Thaa */
45 EVAS_SCRIPT_THAI, /* Thai */
46 EVAS_SCRIPT_TIBETAN, /* Tibt */
47 EVAS_SCRIPT_CANADIAN_ABORIGINAL, /* Cans */
48 EVAS_SCRIPT_YI, /* Yiii */
49 EVAS_SCRIPT_TAGALOG, /* Tglg */
50 EVAS_SCRIPT_HANUNOO, /* Hano */
51 EVAS_SCRIPT_BUHID, /* Buhd */
52 EVAS_SCRIPT_TAGBANWA, /* Tagb */
53
54 /* Unicode-4.0 additions */
55 EVAS_SCRIPT_BRAILLE, /* Brai */
56 EVAS_SCRIPT_CYPRIOT, /* Cprt */
57 EVAS_SCRIPT_LIMBU, /* Limb */
58 EVAS_SCRIPT_OSMANYA, /* Osma */
59 EVAS_SCRIPT_SHAVIAN, /* Shaw */
60 EVAS_SCRIPT_LINEAR_B, /* Linb */
61 EVAS_SCRIPT_TAI_LE, /* Tale */
62 EVAS_SCRIPT_UGARITIC, /* Ugar */
63
64 /* Unicode-4.1 additions */
65 EVAS_SCRIPT_NEW_TAI_LUE, /* Talu */
66 EVAS_SCRIPT_BUGINESE, /* Bugi */
67 EVAS_SCRIPT_GLAGOLITIC, /* Glag */
68 EVAS_SCRIPT_TIFINAGH, /* Tfng */
69 EVAS_SCRIPT_SYLOTI_NAGRI, /* Sylo */
70 EVAS_SCRIPT_OLD_PERSIAN, /* Xpeo */
71 EVAS_SCRIPT_KHAROSHTHI, /* Khar */
72
73 /* Unicode-5.0 additions */
74 EVAS_SCRIPT_UNKNOWN, /* Zzzz */
75 EVAS_SCRIPT_BALINESE, /* Bali */
76 EVAS_SCRIPT_CUNEIFORM, /* Xsux */
77 EVAS_SCRIPT_PHOENICIAN, /* Phnx */
78 EVAS_SCRIPT_PHAGS_PA, /* Phag */
79 EVAS_SCRIPT_NKO, /* Nkoo */
80
81 /* Unicode-5.1 additions */
82 EVAS_SCRIPT_KAYAH_LI, /* Kali */
83 EVAS_SCRIPT_LEPCHA, /* Lepc */
84 EVAS_SCRIPT_REJANG, /* Rjng */
85 EVAS_SCRIPT_SUNDANESE, /* Sund */
86 EVAS_SCRIPT_SAURASHTRA, /* Saur */
87 EVAS_SCRIPT_CHAM, /* Cham */
88 EVAS_SCRIPT_OL_CHIKI, /* Olck */
89 EVAS_SCRIPT_VAI, /* Vaii */
90 EVAS_SCRIPT_CARIAN, /* Cari */
91 EVAS_SCRIPT_LYCIAN, /* Lyci */
92 EVAS_SCRIPT_LYDIAN, /* Lydi */
93
94 /* Unicode-5.2 additions */
95 EVAS_SCRIPT_AVESTAN, /* Avst */
96 EVAS_SCRIPT_BAMUM, /* Bamu */
97 EVAS_SCRIPT_EGYPTIAN_HIEROGLYPHS, /* Egyp */
98 EVAS_SCRIPT_IMPERIAL_ARAMAIC, /* Armi */
99 EVAS_SCRIPT_INSCRIPTIONAL_PAHLAVI, /* Phli */
100 EVAS_SCRIPT_INSCRIPTIONAL_PARTHIAN, /* Prti */
101 EVAS_SCRIPT_JAVANESE, /* Java */
102 EVAS_SCRIPT_KAITHI, /* Kthi */
103 EVAS_SCRIPT_LISU, /* Lisu */
104 EVAS_SCRIPT_MEETEI_MAYEK, /* Mtei */
105 EVAS_SCRIPT_OLD_SOUTH_ARABIAN, /* Sarb */
106 EVAS_SCRIPT_OLD_TURKIC, /* Orkh */
107 EVAS_SCRIPT_SAMARITAN, /* Samr */
108 EVAS_SCRIPT_TAI_THAM, /* Lana */
109 EVAS_SCRIPT_TAI_VIET, /* Tavt */
110
111 /* Unicode-6.0 additions */
112 EVAS_SCRIPT_BATAK, /* Batk */
113 EVAS_SCRIPT_BRAHMI, /* Brah */
114 EVAS_SCRIPT_MANDAIC, /* Mand */
115} Evas_Script_Type;
116
117/* Unicode Script property */
118const char *evas_scripts[] =
119{
120 "EVAS_SCRIPT_COMMON", /* Zyyy */
121 "EVAS_SCRIPT_INHERITED", /* Qaai */
122 "EVAS_SCRIPT_ARABIC", /* Arab */
123 "EVAS_SCRIPT_ARMENIAN", /* Armn */
124 "EVAS_SCRIPT_BENGALI", /* Beng */
125 "EVAS_SCRIPT_BOPOMOFO", /* Bopo */
126 "EVAS_SCRIPT_CHEROKEE", /* Cher */
127 "EVAS_SCRIPT_COPTIC", /* Qaac */
128 "EVAS_SCRIPT_CYRILLIC", /* Cyrl (Cyrs) */
129 "EVAS_SCRIPT_DESERET", /* Dsrt */
130 "EVAS_SCRIPT_DEVANAGARI", /* Deva */
131 "EVAS_SCRIPT_ETHIOPIC", /* Ethi */
132 "EVAS_SCRIPT_GEORGIAN", /* Geor (Geon, Geoa) */
133 "EVAS_SCRIPT_GOTHIC", /* Goth */
134 "EVAS_SCRIPT_GREEK", /* Grek */
135 "EVAS_SCRIPT_GUJARATI", /* Gujr */
136 "EVAS_SCRIPT_GURMUKHI", /* Guru */
137 "EVAS_SCRIPT_HAN", /* Hani */
138 "EVAS_SCRIPT_HANGUL", /* Hang */
139 "EVAS_SCRIPT_HEBREW", /* Hebr */
140 "EVAS_SCRIPT_HIRAGANA", /* Hira */
141 "EVAS_SCRIPT_KANNADA", /* Knda */
142 "EVAS_SCRIPT_KATAKANA", /* Kana */
143 "EVAS_SCRIPT_KHMER", /* Khmr */
144 "EVAS_SCRIPT_LAO", /* Laoo */
145 "EVAS_SCRIPT_LATIN", /* Latn (Latf, Latg) */
146 "EVAS_SCRIPT_MALAYALAM", /* Mlym */
147 "EVAS_SCRIPT_MONGOLIAN", /* Mong */
148 "EVAS_SCRIPT_MYANMAR", /* Mymr */
149 "EVAS_SCRIPT_OGHAM", /* Ogam */
150 "EVAS_SCRIPT_OLD_ITALIC", /* Ital */
151 "EVAS_SCRIPT_ORIYA", /* Orya */
152 "EVAS_SCRIPT_RUNIC", /* Runr */
153 "EVAS_SCRIPT_SINHALA", /* Sinh */
154 "EVAS_SCRIPT_SYRIAC", /* Syrc (Syrj, Syrn, Syre) */
155 "EVAS_SCRIPT_TAMIL", /* Taml */
156 "EVAS_SCRIPT_TELUGU", /* Telu */
157 "EVAS_SCRIPT_THAANA", /* Thaa */
158 "EVAS_SCRIPT_THAI", /* Thai */
159 "EVAS_SCRIPT_TIBETAN", /* Tibt */
160 "EVAS_SCRIPT_CANADIAN_ABORIGINAL", /* Cans */
161 "EVAS_SCRIPT_YI", /* Yiii */
162 "EVAS_SCRIPT_TAGALOG", /* Tglg */
163 "EVAS_SCRIPT_HANUNOO", /* Hano */
164 "EVAS_SCRIPT_BUHID", /* Buhd */
165 "EVAS_SCRIPT_TAGBANWA", /* Tagb */
166
167 /* Unicode-4.0 additions */
168 "EVAS_SCRIPT_BRAILLE", /* Brai */
169 "EVAS_SCRIPT_CYPRIOT", /* Cprt */
170 "EVAS_SCRIPT_LIMBU", /* Limb */
171 "EVAS_SCRIPT_OSMANYA", /* Osma */
172 "EVAS_SCRIPT_SHAVIAN", /* Shaw */
173 "EVAS_SCRIPT_LINEAR_B", /* Linb */
174 "EVAS_SCRIPT_TAI_LE", /* Tale */
175 "EVAS_SCRIPT_UGARITIC", /* Ugar */
176
177 /* Unicode-4.1 additions */
178 "EVAS_SCRIPT_NEW_TAI_LUE", /* Talu */
179 "EVAS_SCRIPT_BUGINESE", /* Bugi */
180 "EVAS_SCRIPT_GLAGOLITIC", /* Glag */
181 "EVAS_SCRIPT_TIFINAGH", /* Tfng */
182 "EVAS_SCRIPT_SYLOTI_NAGRI", /* Sylo */
183 "EVAS_SCRIPT_OLD_PERSIAN", /* Xpeo */
184 "EVAS_SCRIPT_KHAROSHTHI", /* Khar */
185
186 /* Unicode-5.0 additions */
187 "EVAS_SCRIPT_UNKNOWN", /* Zzzz */
188 "EVAS_SCRIPT_BALINESE", /* Bali */
189 "EVAS_SCRIPT_CUNEIFORM", /* Xsux */
190 "EVAS_SCRIPT_PHOENICIAN", /* Phnx */
191 "EVAS_SCRIPT_PHAGS_PA", /* Phag */
192 "EVAS_SCRIPT_NKO", /* Nkoo */
193
194 /* Unicode-5.1 additions */
195 "EVAS_SCRIPT_KAYAH_LI", /* Kali */
196 "EVAS_SCRIPT_LEPCHA", /* Lepc */
197 "EVAS_SCRIPT_REJANG", /* Rjng */
198 "EVAS_SCRIPT_SUNDANESE", /* Sund */
199 "EVAS_SCRIPT_SAURASHTRA", /* Saur */
200 "EVAS_SCRIPT_CHAM", /* Cham */
201 "EVAS_SCRIPT_OL_CHIKI", /* Olck */
202 "EVAS_SCRIPT_VAI", /* Vaii */
203 "EVAS_SCRIPT_CARIAN", /* Cari */
204 "EVAS_SCRIPT_LYCIAN", /* Lyci */
205 "EVAS_SCRIPT_LYDIAN", /* Lydi */
206
207 /* Unicode-5.2 additions */
208 "EVAS_SCRIPT_AVESTAN", /* Avst */
209 "EVAS_SCRIPT_BAMUM", /* Bamu */
210 "EVAS_SCRIPT_EGYPTIAN_HIEROGLYPHS", /* Egyp */
211 "EVAS_SCRIPT_IMPERIAL_ARAMAIC", /* Armi */
212 "EVAS_SCRIPT_INSCRIPTIONAL_PAHLAVI", /* Phli */
213 "EVAS_SCRIPT_INSCRIPTIONAL_PARTHIAN", /* Prti */
214 "EVAS_SCRIPT_JAVANESE", /* Java */
215 "EVAS_SCRIPT_KAITHI", /* Kthi */
216 "EVAS_SCRIPT_LISU", /* Lisu */
217 "EVAS_SCRIPT_MEETEI_MAYEK", /* Mtei */
218 "EVAS_SCRIPT_OLD_SOUTH_ARABIAN", /* Sarb */
219 "EVAS_SCRIPT_OLD_TURKIC", /* Orkh */
220 "EVAS_SCRIPT_SAMARITAN", /* Samr */
221 "EVAS_SCRIPT_TAI_THAM", /* Lana */
222 "EVAS_SCRIPT_TAI_VIET", /* Tavt */
223
224 /* Unicode-6.0 additions */
225 "EVAS_SCRIPT_BATAK", /* Batk */
226 "EVAS_SCRIPT_BRAHMI", /* Brah */
227 "EVAS_SCRIPT_MANDAIC", /* Mand */
228};
229
230typedef enum _Evas_Textblock_Item_Type
231{
232 EVAS_TEXTBLOCK_ITEM_TEXT,
233 EVAS_TEXTBLOCK_ITEM_FORMAT,
234} Evas_Textblock_Item_Type;
235
236#endif