1 | /* Pango |
2 | * pango-script-private.h: Script tag handling, private definitions |
3 | * |
4 | * Copyright (C) 2002 Red Hat Software |
5 | * |
6 | * This library is free software; you can redistribute it and/or |
7 | * modify it under the terms of the GNU Library General Public |
8 | * License as published by the Free Software Foundation; either |
9 | * version 2 of the License, or (at your option) any later version. |
10 | * |
11 | * This library is distributed in the hope that it will be useful, |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
14 | * Library General Public License for more details. |
15 | * |
16 | * You should have received a copy of the GNU Library General Public |
17 | * License along with this library; if not, write to the |
18 | * Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
19 | * Boston, MA 02111-1307, USA. |
20 | */ |
21 | |
22 | #ifndef __PANGO_SCRIPT_PRIVATE_H__ |
23 | #define __PANGO_SCRIPT_PRIVATE_H__ |
24 | |
25 | #define PAREN_STACK_DEPTH 128 |
26 | |
27 | typedef struct _ParenStackEntry ParenStackEntry; |
28 | |
29 | struct _ParenStackEntry |
30 | { |
31 | int pair_index; |
32 | PangoScript script_code; |
33 | }; |
34 | |
35 | struct _PangoScriptIter |
36 | { |
37 | const gchar *text_start; |
38 | const gchar *text_end; |
39 | |
40 | const gchar *script_start; |
41 | const gchar *script_end; |
42 | PangoScript script_code; |
43 | |
44 | ParenStackEntry paren_stack[PAREN_STACK_DEPTH]; |
45 | int paren_sp; |
46 | }; |
47 | |
48 | PangoScriptIter * |
49 | _pango_script_iter_init (PangoScriptIter *iter, |
50 | const char *text, |
51 | int length); |
52 | |
53 | void |
54 | _pango_script_iter_fini (PangoScriptIter *iter); |
55 | |
56 | #endif /* __PANGO_SCRIPT_PRIVATE_H__ */ |
57 | |