--- /home/otaylor/cvs/fribidi/fribidi.c Thu Oct 18 14:42:36 2001 +++ fribidi.c Thu Oct 18 14:35:42 2001 @@ -21,10 +21,10 @@ * . */ -#ifdef HAVE_CONFIG_H -#include -#endif -#include "fribidi.h" +#include +#include "pango/pango-utils.h" +#include "fribidi_types.h" + #ifdef DEBUG #include #endif @@ -80,40 +80,6 @@ static gboolean fribidi_debug = FALSE; #endif -gboolean -fribidi_set_debug (gboolean debug) -{ -#ifdef DEBUG - return fribidi_debug = debug; -#else - return 0; -#endif -} - -static void -bidi_string_reverse (FriBidiChar *str, gint len) -{ - gint i; - for (i = 0; i < len / 2; i++) - { - FriBidiChar tmp = str[i]; - str[i] = str[len - 1 - i]; - str[len - 1 - i] = tmp; - } -} - -static void -index_array_reverse (FriBidiStrIndex *arr, gint len) -{ - gint i; - for (i = 0; i < len / 2; i++) - { - FriBidiStrIndex tmp = arr[i]; - arr[i] = arr[len - 1 - i]; - arr[len - 1 - i] = tmp; - } -} - #ifndef USE_SIMPLE_MALLOC static TypeLink *free_type_links = NULL; #endif @@ -595,7 +561,7 @@ fprintf (stderr, " Org. types : "); for (i = 0; str[i]; i++) fprintf (stderr, "%c", - fribidi_char_from_type (fribidi_get_type (str[i]))); + fribidi_char_from_type (_pango_fribidi_get_type (str[i]))); fprintf (stderr, "\n"); } #endif @@ -620,9 +586,9 @@ /* Determinate character types */ DBG (" Determine character types\n"); { - FriBidiCharType char_type[len]; + FriBidiCharType* char_type = g_alloca (len*sizeof(FriBidiCharType)); for (i = 0; i < len; i++) - char_type[i] = fribidi_get_type (str[i]); + char_type[i] = _pango_fribidi_get_type (str[i]); /* Run length encode the character types */ type_rl_list = run_length_encode_types (char_type, len); @@ -1000,7 +966,7 @@ { /* if state is on at the very first of string, do this too. */ if (j >= 0) - k = fribidi_get_type (str[j]); + k = _pango_fribidi_get_type (str[j]); else k = FRIBIDI_TYPE_ON; if (!state && FRIBIDI_IS_SEPARATOR (k)) @@ -1081,228 +1047,36 @@ return; } -static gboolean mirroring = TRUE; - -gboolean -fribidi_mirroring_status (void) -{ - return mirroring; -} - -void -fribidi_set_mirroring (gboolean mirror) -{ - mirroring = mirror; -} - /*====================================================================== * Here starts the exposed front end functions. *----------------------------------------------------------------------*/ /*====================================================================== - * fribidi_remove_explicits() removes explicit marks, and returns the - * new length. - *----------------------------------------------------------------------*/ -gint -fribidi_remove_explicits (FriBidiChar *str, gint length) -{ - gint i, j; - - DBG ("Entering fribidi_remove_explicits()\n"); - j = 0; - for (i = 0; i < length; i++) - if (!FRIBIDI_IS_EXPLICIT (fribidi_get_type (str[i])) - && str[i] != UNI_LRM && str[i] != UNI_RLM) - str[j++] = str[i]; - - DBG ("Leaving fribidi_remove_explicits()\n"); - return j; -} - -/*====================================================================== - * fribidi_log2vis() calls the function_analyse_string() and then - * does reordering and fills in the output strings. - *----------------------------------------------------------------------*/ -gboolean -fribidi_log2vis ( /* input */ - FriBidiChar *str, gint len, FriBidiCharType *pbase_dir, - /* output */ - FriBidiChar *visual_str, - FriBidiStrIndex *position_L_to_V_list, - FriBidiStrIndex *position_V_to_L_list, - guint8 *embedding_level_list) -{ - TypeLink *type_rl_list, *pp = NULL; - gint max_level; - gboolean private_V_to_L = FALSE; - - DBG ("Entering fribidi_log2vis()\n"); - - if (len == 0) - { - DBG ("Leaving fribidi_log2vis()\n"); - return TRUE; - } - - /* If l2v is to be calculated we must have l2v as well. If it is not - given by the caller, we have to make a private instance of it. */ - if (position_L_to_V_list && !position_V_to_L_list) - { - private_V_to_L = TRUE; - position_V_to_L_list = g_new (FriBidiStrIndex, len + 1); - } - - if (len > FRIBIDI_MAX_STRING_LENGTH && position_V_to_L_list) - { -#ifdef DEBUG - fprintf (stderr, "%s: cannot handle strings > %d characters\n", - PACKAGE, FRIBIDI_MAX_STRING_LENGTH); -#endif - return FALSE; - } - fribidi_analyse_string (str, len, pbase_dir, - /* output */ - &type_rl_list, &max_level); - - /* 7. Reordering resolved levels */ - DBG ("Reordering resolved levels\n"); - { - gint level_idx; - gint i; - - /* TBD: L3 */ - - /* Set up the ordering array to sorted order */ - if (position_V_to_L_list) - { - DBG (" Initialize position_V_to_L_list\n"); - for (i = 0; i < len; i++) - position_V_to_L_list[i] = i; - DBG (" Initialize position_V_to_L_list, Done\n"); - } - /* Copy the logical string to the visual */ - if (visual_str) - { - DBG (" Initialize visual_str\n"); - for (i = 0; i <= len; i++) - visual_str[i] = str[i]; - visual_str[len] = 0; - DBG (" Initialize visual_str, Done\n"); - } - - /* Assign the embedding level array */ - if (embedding_level_list) - { - DBG (" Fill the embedding levels array\n"); - for (pp = type_rl_list->next; pp->next; pp = pp->next) - { - gint i, pos, len, level; - - pos = pp->pos; - len = pp->len; - level = pp->level; - for (i = 0; i < len; i++) - embedding_level_list[pos + i] = level; - } - DBG (" Fill the embedding levels array, Done\n"); - } - - /* Reorder both the outstring and the order array */ - if (visual_str || position_V_to_L_list) - { - if (mirroring && visual_str) - { - /* L4. Mirror all characters that are in odd levels and have mirrors. */ - DBG (" Mirroring\n"); - for (pp = type_rl_list->next; pp->next; pp = pp->next) - { - if (pp->level & 1) - { - gint i; - for (i = RL_POS (pp); i < RL_POS (pp) + RL_LEN (pp); i++) - { - FriBidiChar mirrored_ch; - if (fribidi_get_mirror_char - (visual_str[i], &mirrored_ch)) - visual_str[i] = mirrored_ch; - } - } - } - DBG (" Mirroring, Done\n"); - } - - /* L2. Reorder. */ - DBG (" Reordering\n"); - for (level_idx = max_level; level_idx > 0; level_idx--) - { - for (pp = type_rl_list->next; pp->next; pp = pp->next) - { - if (RL_LEVEL (pp) >= level_idx) - { - /* Find all stretches that are >= level_idx */ - gint len = RL_LEN (pp); - gint pos = RL_POS (pp); - TypeLink *pp1 = pp->next; - while (pp1->next && RL_LEVEL (pp1) >= level_idx) - { - len += RL_LEN (pp1); - pp1 = pp1->next; - } - pp = pp1->prev; - if (visual_str) - bidi_string_reverse (visual_str + pos, len); - if (position_V_to_L_list) - index_array_reverse (position_V_to_L_list + pos, len); - } - } - } - DBG (" Reordering, Done\n"); - } - - /* Convert the v2l list to l2v */ - if (position_L_to_V_list) - { - DBG (" Converting v2l list to l2v\n"); - for (i = 0; i <= len; i++) - position_L_to_V_list[position_V_to_L_list[i]] = i; - DBG (" Converting v2l list to l2v, Done\n"); - } - } - DBG ("Reordering resolved levels, Done\n"); - - if (private_V_to_L) - g_free (position_V_to_L_list); - - free_rl_list (type_rl_list); - - DBG ("Leaving fribidi_log2vis()\n"); - return TRUE; - -} - -/*====================================================================== * fribidi_log2vis_get_embedding_levels() is used in order to just get * the embedding levels. *----------------------------------------------------------------------*/ gboolean -fribidi_log2vis_get_embedding_levels ( /* input */ - FriBidiChar *str, - gint len, FriBidiCharType *pbase_dir, +pango_log2vis_get_embedding_levels ( /* input */ + gunichar *str, + int len, PangoDirection *pbase_dir, /* output */ guint8 *embedding_level_list) { TypeLink *type_rl_list, *pp; gint max_level; + FriBidiCharType fribidi_base_dir; DBG ("Entering fribidi_log2vis_get_embedding_levels()\n"); + fribidi_base_dir = (*pbase_dir == PANGO_DIRECTION_LTR) ? FRIBIDI_TYPE_L : FRIBIDI_TYPE_R; + if (len == 0) { DBG ("Leaving fribidi_log2vis_get_embedding_levels()\n"); return TRUE; } - fribidi_analyse_string (str, len, pbase_dir, + fribidi_analyse_string (str, len, &fribidi_base_dir, /* output */ &type_rl_list, &max_level); @@ -1317,31 +1091,9 @@ } free_rl_list (type_rl_list); + + *pbase_dir = (fribidi_base_dir == FRIBIDI_TYPE_L) ? PANGO_DIRECTION_LTR : PANGO_DIRECTION_RTL; DBG ("Leaving fribidi_log2vis_get_embedding_levels()\n"); return TRUE; } - -gchar *fribidi_version_info = - "Copyright (C) 2001 FriBidi Project.\n" - PACKAGE " comes with NO WARRANTY, to the extent permitted by law.\n" - "You may redistribute copies of " PACKAGE " under the terms of\n" - "the GNU General Public License.\n" - "For more information about these matters, see the files named COPYING.\n" -#if (defined(MEM_OPTIMIZED) || defined(DEBUG) || defined(USE_SIMPLE_MALLOC) \ - || defined(FRIBIDI_USE_MINI_GLIB)) - "This " PACKAGE " is compiled with following options:\n" -#if (defined(MEM_OPTIMIZED)) - "MEM_OPTIMIZED\n" -#endif -#if (defined(DEBUG)) - "DEBUG\n" -#endif -#if (defined(USE_SIMPLE_MALLOC)) - "USE_SIMPLE_MALLOC\n" -#endif -#if (defined(FRIBIDI_USE_MINI_GLIB)) - "FRIBIDI_USE_MINI_GLIB\n" -#endif -#endif - ; --- /home/otaylor/cvs/fribidi/fribidi_get_type.c Thu Oct 18 14:42:36 2001 +++ fribidi_get_type.c Mon Apr 16 18:42:34 2001 @@ -23,7 +23,9 @@ #include #include -#include "fribidi.h" +#include +#include "pango/pango-utils.h" +#include "fribidi_types.h" #include "fribidi_tables.i" #ifdef MEM_OPTIMIZED @@ -34,7 +36,7 @@ * fribidi_get_type() returns the bidi type of a character. *----------------------------------------------------------------------*/ FriBidiCharType -fribidi_get_type (FriBidiChar uch) +_pango_fribidi_get_type(FriBidiChar uch) { int i = uch % 256, j = uch / 256; FriBidiPropCharType *block = FriBidiPropertyBlocks[j]; @@ -81,10 +83,10 @@ } gboolean -fribidi_get_mirror_char ( /* Input */ - FriBidiChar ch, - /* Output */ - FriBidiChar *mirrored_ch) +pango_get_mirror_char ( /* Input */ + FriBidiChar ch, + /* Output */ + FriBidiChar * mirrored_ch) { int pos, step; gboolean found; --- /home/otaylor/cvs/fribidi/fribidi_tables.i Thu Oct 18 14:42:36 2001 +++ fribidi_tables.i Sun Sep 2 13:56:50 2001 @@ -4,8 +4,6 @@ *----------------------------------------------------------------------*/ /* *INDENT-OFF* */ -#include "fribidi.h" - #define WS FRIBIDI_PROP_TYPE_WS #define BS FRIBIDI_PROP_TYPE_BS #define EO FRIBIDI_PROP_TYPE_EO @@ -29,7 +27,7 @@ #define EN FRIBIDI_PROP_TYPE_EN -FriBidiPropCharType FriBidiPropertyBlock0000[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0000[256] = { BN ,BN ,BN ,BN ,BN ,BN ,BN ,BN ,BN ,SS ,BS ,SS ,WS ,BS ,BN ,BN , BN ,BN ,BN ,BN ,BN ,BN ,BN ,BN ,BN ,BN ,BN ,BN ,BS ,BS ,BS ,SS , WS ,ON ,ON ,ET ,ET ,ET ,ON ,ON ,ON ,ON ,ON ,ET ,CS ,ET ,CS ,ES , @@ -48,7 +46,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,ON ,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0100[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0100[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -67,7 +65,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0200[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0200[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -86,7 +84,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0300[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0300[256] = { NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, @@ -105,7 +103,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0400[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0400[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -124,7 +122,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0500[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0500[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -143,7 +141,7 @@ RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL, }; -FriBidiPropCharType FriBidiPropertyBlock0600[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0600[256] = { CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS , CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,CS ,AL ,AL ,AL ,AL ,AL , AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , @@ -162,7 +160,7 @@ EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,AL ,AL ,AL ,AL ,AL ,AL , }; -FriBidiPropCharType FriBidiPropertyBlock0700[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0700[256] = { AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,BN , AL ,NSM,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , @@ -181,7 +179,7 @@ NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, }; -FriBidiPropCharType FriBidiPropertyBlock0900[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0900[256] = { NSM,NSM,NSM,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -200,7 +198,7 @@ LTR,LTR,ET ,ET ,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0a00[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0a00[256] = { NSM,NSM,NSM,NSM,NSM,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -219,7 +217,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0b00[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0b00[256] = { NSM,NSM,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -238,7 +236,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0c00[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0c00[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -257,7 +255,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0d00[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0d00[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -276,7 +274,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0e00[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0e00[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -295,7 +293,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock0f00[256] = { +static FriBidiPropCharType FriBidiPropertyBlock0f00[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,NSM,NSM,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -314,7 +312,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock1000[256] = { +static FriBidiPropCharType FriBidiPropertyBlock1000[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,NSM,NSM,NSM, @@ -333,7 +331,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock1600[256] = { +static FriBidiPropCharType FriBidiPropertyBlock1600[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -352,7 +350,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock1700[256] = { +static FriBidiPropCharType FriBidiPropertyBlock1700[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -371,7 +369,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlock1800[256] = { +static FriBidiPropCharType FriBidiPropertyBlock1800[256] = { ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,BN ,BN ,BN ,BN ,BN , LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -390,7 +388,7 @@ NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, }; -FriBidiPropCharType FriBidiPropertyBlock1f00[256] = { +static FriBidiPropCharType FriBidiPropertyBlock1f00[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -409,7 +407,7 @@ ON ,ON ,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,ON ,ON ,ON , }; -FriBidiPropCharType FriBidiPropertyBlock2000[256] = { +static FriBidiPropCharType FriBidiPropertyBlock2000[256] = { WS ,WS ,WS ,WS ,WS ,WS ,WS ,WS ,WS ,WS ,WS ,BN ,BN ,BN ,LTR,RTL, ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,WS ,BS ,LRE,RLE,PDF,LRO,RLO,WS , @@ -428,7 +426,7 @@ NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, }; -FriBidiPropCharType FriBidiPropertyBlock2100[256] = { +static FriBidiPropCharType FriBidiPropertyBlock2100[256] = { ON ,ON ,LTR,ON ,ON ,ON ,ON ,LTR,ON ,ON ,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,ON ,LTR,ON ,ON ,ON ,LTR,LTR,LTR,LTR,LTR,ON ,ON , ON ,ON ,ON ,ON ,LTR,ON ,LTR,ON ,LTR,ON ,LTR,LTR,LTR,LTR,ET ,LTR, @@ -447,7 +445,7 @@ ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , }; -FriBidiPropCharType FriBidiPropertyBlock2200[256] = { +static FriBidiPropCharType FriBidiPropertyBlock2200[256] = { ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ET ,ET ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , @@ -466,7 +464,7 @@ ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , }; -FriBidiPropCharType FriBidiPropertyBlock2300[256] = { +static FriBidiPropCharType FriBidiPropertyBlock2300[256] = { ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , @@ -485,7 +483,7 @@ ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , }; -FriBidiPropCharType FriBidiPropertyBlock2400[256] = { +static FriBidiPropCharType FriBidiPropertyBlock2400[256] = { ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , @@ -504,7 +502,7 @@ EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN , }; -FriBidiPropCharType FriBidiPropertyBlock2500[256] = { +static FriBidiPropCharType FriBidiPropertyBlock2500[256] = { ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , @@ -523,7 +521,7 @@ ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , }; -FriBidiPropCharType FriBidiPropertyBlock3000[256] = { +static FriBidiPropCharType FriBidiPropertyBlock3000[256] = { WS ,ON ,ON ,ON ,ON ,LTR,LTR,LTR,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , ON ,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,NSM,NSM,NSM,NSM,NSM,NSM, @@ -542,7 +540,7 @@ LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,ON ,LTR,LTR,LTR,LTR, }; -FriBidiPropCharType FriBidiPropertyBlocka400[256] = { +static FriBidiPropCharType FriBidiPropertyBlocka400[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -561,7 +559,7 @@ ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON ,ON , }; -FriBidiPropCharType FriBidiPropertyBlockfb00[256] = { +static FriBidiPropCharType FriBidiPropertyBlockfb00[256] = { LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,RTL,NSM,RTL, RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,RTL,ET ,RTL,RTL,RTL,RTL,RTL,RTL, @@ -580,7 +578,7 @@ AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , }; -FriBidiPropCharType FriBidiPropertyBlockfc00[256] = { +static FriBidiPropCharType FriBidiPropertyBlockfc00[256] = { AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , @@ -599,7 +597,7 @@ AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , }; -FriBidiPropCharType FriBidiPropertyBlockfd00[256] = { +static FriBidiPropCharType FriBidiPropertyBlockfd00[256] = { AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , @@ -618,7 +616,7 @@ AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL , }; -FriBidiPropCharType FriBidiPropertyBlockfe00[256] = { +static FriBidiPropCharType FriBidiPropertyBlockfe00[256] = { NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM,NSM, @@ -637,7 +635,7 @@ AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,AL ,BN , }; -FriBidiPropCharType FriBidiPropertyBlockff00[256] = { +static FriBidiPropCharType FriBidiPropertyBlockff00[256] = { ON ,ON ,ON ,ET ,ET ,ET ,ON ,ON ,ON ,ON ,ON ,ET ,CS ,ET ,CS ,ES , EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,EN ,CS ,ON ,ON ,ON ,ON ,ON , ON ,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR,LTR, @@ -658,7 +656,7 @@ /* 33 blocks defined */ -FriBidiPropCharType *FriBidiPropertyBlocks[256] = { +static FriBidiPropCharType *FriBidiPropertyBlocks[256] = { FriBidiPropertyBlock0000, FriBidiPropertyBlock0100, FriBidiPropertyBlock0200, @@ -954,7 +952,7 @@ // of the display engine to actually mirror these. //----------------------------------------------------------------------*/ -struct { +static struct { FriBidiChar ch, mirrored_ch; } FriBidiMirroredChars[] = { {0x0028, 0x0029}, @@ -1099,7 +1097,7 @@ {0x301B, 0x301A} }; -gint nFriBidiMirroredChars = 140; +static gint nFriBidiMirroredChars = 140; /* *INDENT-ON* */ --- /home/otaylor/cvs/fribidi/fribidi_types.h Thu Oct 18 14:42:36 2001 +++ fribidi_types.h Mon Apr 16 18:42:34 2001 @@ -279,4 +279,6 @@ #define FRIBIDI_MAX_STRING_LENGTH 65535 #endif +FriBidiCharType _pango_fribidi_get_type(FriBidiChar uch); + #endif