diff options
Diffstat (limited to 'pango/pango-utils.c')
-rw-r--r-- | pango/pango-utils.c | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/pango/pango-utils.c b/pango/pango-utils.c index 9ade0691..9df61673 100644 --- a/pango/pango-utils.c +++ b/pango/pango-utils.c @@ -32,8 +32,6 @@ #include <glib/gstdio.h> -#include "mini-fribidi/fribidi.h" - #ifndef HAVE_FLOCKFILE # define flockfile(f) (void)1 # define funlockfile(f) (void)1 @@ -1087,128 +1085,6 @@ pango_parse_stretch (const char *str, return FALSE; } -/** - * pango_log2vis_get_embedding_levels: - * @text: the text to itemize. - * @length: the number of bytes (not characters) to process, or -1 - * if @text is nul-terminated and the length should be calculated. - * @pbase_dir: input base direction, and output resolved direction. - * - * This will return the bidirectional embedding levels of the input paragraph - * as defined by the Unicode Bidirectional Algorithm available at: - * - * http://www.unicode.org/reports/tr9/ - * - * If the input base direction is a weak direction, the direction of the - * characters in the text will determine the final resolved direction. - * - * Return value: a newly allocated array of embedding levels, one item per - * character (not byte), that should be freed using g_free. - * - * Since: 1.4 - */ -guint8 * -pango_log2vis_get_embedding_levels (const gchar *text, - int length, - PangoDirection *pbase_dir) -{ - FriBidiCharType fribidi_base_dir; - guint8 *embedding_levels_list; - - switch (*pbase_dir) - { - case PANGO_DIRECTION_LTR: - case PANGO_DIRECTION_TTB_RTL: - fribidi_base_dir = FRIBIDI_TYPE_L; - break; - case PANGO_DIRECTION_RTL: - case PANGO_DIRECTION_TTB_LTR: - fribidi_base_dir = FRIBIDI_TYPE_R; - break; - case PANGO_DIRECTION_WEAK_RTL: - fribidi_base_dir = FRIBIDI_TYPE_WR; - break; - case PANGO_DIRECTION_WEAK_LTR: - case PANGO_DIRECTION_NEUTRAL: - default: - fribidi_base_dir = FRIBIDI_TYPE_WL; - break; - } - -#ifdef FRIBIDI_HAVE_UTF8 - { - if (length < 0) - length = strlen (text); - embedding_levels_list = fribidi_log2vis_get_embedding_levels_new_utf8 (text, length, &fribidi_base_dir); - } -#else - { - gunichar *text_ucs4; - int n_chars; - text_ucs4 = g_utf8_to_ucs4_fast (text, length, &n_chars); - embedding_levels_list = g_new (guint8, n_chars); - fribidi_log2vis_get_embedding_levels ((FriBidiChar*)text_ucs4, n_chars, - &fribidi_base_dir, - (FriBidiLevel*)embedding_levels_list); - g_free (text_ucs4); - } -#endif - - *pbase_dir = (fribidi_base_dir == FRIBIDI_TYPE_L) ? PANGO_DIRECTION_LTR : PANGO_DIRECTION_RTL; - - return embedding_levels_list; -} - -/** - * pango_unichar_direction: - * @ch: a Unicode character - * - * Determines the inherent direction of a character; either - * %PANGO_DIRECTION_LTR, %PANGO_DIRECTION_RTL, or - * %PANGO_DIRECTION_NEUTRAL. - * - * This function is useful to categorize characters into left-to-right - * letters, right-to-left letters, and everything else. If full - * Unicode bidirectional type of a character is needed, - * pango_bidi_type_for_gunichar() can be used instead. - * - * Return value: the direction of the character. - */ -PangoDirection -pango_unichar_direction (gunichar ch) -{ - FriBidiCharType fribidi_ch_type = fribidi_get_type (ch); - - if (!FRIBIDI_IS_STRONG (fribidi_ch_type)) - return PANGO_DIRECTION_NEUTRAL; - else if (FRIBIDI_IS_RTL (fribidi_ch_type)) - return PANGO_DIRECTION_RTL; - else - return PANGO_DIRECTION_LTR; -} - -/** - * pango_get_mirror_char: - * @ch: a Unicode character - * @mirrored_ch: location to store the mirrored character - * - * If @ch has the Unicode mirrored property and there is another Unicode - * character that typically has a glyph that is the mirror image of @ch's - * glyph, puts that character in the address pointed to by @mirrored_ch. - * - * Use g_unichar_get_mirror_char() instead; the docs for that function - * provide full details. - * - * Return value: %TRUE if @ch has a mirrored character and @mirrored_ch is - * filled in, %FALSE otherwise - **/ -gboolean -pango_get_mirror_char (gunichar ch, - gunichar *mirrored_ch) -{ - return g_unichar_get_mirror_char (ch, mirrored_ch); -} - static guint alias_hash (struct PangoAlias *alias) |