Lines Matching refs:Bidi

38  * algorithm for direct BiDi, algorithm for inverse Bidi and the bizarre
61 import java.text.Bidi;
70 * <h2>Bidi algorithm for ICU</h2>
79 * accordingly are sometimes called "Storage Layout Engines". ICU's Bidi and
91 * embedding level after performing the Bidi algorithm.
96 * with the Bidi class <code>Block Separator</code>. For handling of
126 * Bidi implementation would resolve it to.</li>
154 * Reordering mode values indicate which variant of the Bidi algorithm to
169 * Reordering options can be applied during Bidi text transformations.
183 * <h4> Sample code for the ICU Bidi API </h4>
185 * <h5>Rendering a paragraph with the ICU Bidi API</h5>
187 * This is (hypothetical) sample code that illustrates how the ICU Bidi API
210 * import com.ibm.icu.text.Bidi;
250 * // using Bidi.getLogicalRun(...)
252 * static int getLineBreak(String text, Bounds line, Bidi para,
287 * if (direction == Bidi.LTR) {
328 * static void renderLine(Bidi line, String text, int start, int limit,
331 * if (direction != Bidi.MIXED) {
375 * Bidi para = new Bidi();
378 * textDirection != 0 ? Bidi.LEVEL_DEFAULT_RTL
379 * : Bidi.LEVEL_DEFAULT_LTR,
405 * Bidi line = new Bidi(length, 0);
450 * renderParagraph("Some Latin text...", Bidi.LTR, null, 0, 80);
451 * renderParagraph("Some Hebrew text...", Bidi.RTL, null, 0, 60);
541 * happen for the logical-to-visual mapping of a Bidi control when option
544 * Bidi mark (LRM or RLM) inserted by option
572 /** Reordering mode: Regular Logical to Visual Bidi algorithm according to Unicode.
595 * <code>OPTION_INSERT_MARKS</code>, some Bidi controls in the source
619 /** Reordering mode: Inverse Bidi (Visual to Logical) algorithm for the
620 * <code>REORDER_NUMBERS_SPECIAL</code> Bidi algorithm.
627 * visual modes come first, and all inverse Bidi modes come last.
634 * insert Bidi marks (LRM or RLM) when needed to ensure correct result of
658 * resulting logical text with removal of Bidi marks
688 * remove Bidi control characters
758 * Comparing the description of the Bidi algorithm with this implementation
759 * is easier with the same names for the Bidi types in the code as there.
814 /* if option OPTION_REMOVE_CONTROLS is set, and/or Bidi
880 /* for inverse Bidi with insertion of directional marks */
890 * used in the Bidi algorithm.
956 * in the Bidi algorithm (N2)
1023 * Allocate a <code>Bidi</code> object with preallocated memory
1025 * This method provides a <code>Bidi</code> object like the default constructor
1076 /* get Bidi properties */
1203 /* for inverse Bidi, the default para level is set to RTL if there is a
1216 byte lastStrongDir=0; /* for default level & inverse Bidi */
1319 return Bidi.DIRECTION_LEFT_TO_RIGHT;
1321 return Bidi.DIRECTION_RIGHT_TO_LEFT;
1332 * The Bidi algorithm is designed to result in the same behavior whether embedding
1359 * Note that (Pn) and (Xn) changed significantly from version 4 of the Bidi algorithm.
1364 * With the Bidi stack of explicit levels,
1397 /* or we are in "inverse Bidi" */
1650 /* 2) This table triggers actions when there is a change in the Bidi*/
2167 /* check for RTL inverse Bidi mode */
2168 /* FOOD FOR THOUGHT: in case of RTL inverse Bidi, it would make sense to
2287 * Perform the Unicode Bidi algorithm. It is defined in the
2317 * @param text contains the text that the Bidi algorithm will be performed
2344 * of the levels, will be stored in the <code>Bidi</code> object;
2347 * Bidi operations. However, the <code>setPara()</code> and
2372 * Perform the Unicode Bidi algorithm. It is defined in the
2401 * @param chars contains the text that the Bidi algorithm will be performed
2428 * of the levels, will be stored in the <code>Bidi</code> object;
2431 * Bidi operations. However, the <code>setPara()</code> and
2456 /* initialize the Bidi object */
2461 this.direction = Bidi.DIRECTION_LEFT_TO_RIGHT;
2485 * For an empty paragraph, create a Bidi object with the paraLevel and
2495 direction = Bidi.DIRECTION_RIGHT_TO_LEFT;
2498 direction = Bidi.DIRECTION_LEFT_TO_RIGHT;
2545 * The steps after (X9) in the Bidi algorithm are performed only if
2549 case Bidi.DIRECTION_LEFT_TO_RIGHT:
2556 case Bidi.DIRECTION_RIGHT_TO_LEFT:
2651 * Perform the Unicode Bidi algorithm on a given paragraph, as defined in the
2701 (byte)Bidi.DIRECTION_LEFT_TO_RIGHT : (byte)Bidi.DIRECTION_RIGHT_TO_LEFT;
2782 * @return The length of the text that the <code>Bidi</code> object was
2849 * <code>setLine()</code> returns a <code>Bidi</code> object to
2852 * specified by referring to a <code>Bidi</code> object representing
2863 * a <code>Bidi</code> object that represents a line.<p>
2865 * <strong>Important: </strong>the line <code>Bidi</code> object may
2866 * reference data within the global text <code>Bidi</code> object.
2875 * @return a <code>Bidi</code> object that will now represent a line of the text.
2887 public Bidi setLine(Bidi bidi, BidiBase bidiBase, Bidi newBidi, BidiBase newBidiBase, int start, int limit)
2946 * <code>Bidi</code> object, after <code>setPara()</code>
2966 * <code>Bidi</code> (paragraph or line) object.
2969 * corresponding text characters are Bidi marks inserted in the visual
3007 * This is a convenience method that does not use a <code>Bidi</code> object.
3011 * <code>Bidi</code> object.
3048 * Create Bidi from the given text, embedding, and direction information.
3091 case Bidi.DIRECTION_LEFT_TO_RIGHT:
3093 paraLvl = Bidi.DIRECTION_LEFT_TO_RIGHT;
3095 case Bidi.DIRECTION_RIGHT_TO_LEFT:
3096 paraLvl = Bidi.DIRECTION_RIGHT_TO_LEFT;
3098 case Bidi.DIRECTION_DEFAULT_LEFT_TO_RIGHT:
3101 case Bidi.DIRECTION_DEFAULT_RIGHT_TO_LEFT:
3162 return (getDirection() == Bidi.DIRECTION_LEFT_TO_RIGHT && (paraLevel & 1) == 0);
3178 return (getDirection() == Bidi.DIRECTION_RIGHT_TO_LEFT && (paraLevel & 1) == 1);
3193 return (getParaLevel() == Bidi.DIRECTION_LEFT_TO_RIGHT);
3322 * constructing a Bidi object. Text in the Arabic Presentation Forms area of
3338 final int RTLMask = (1 << Bidi.DIRECTION_RIGHT_TO_LEFT |