EnsureVisualCaretOrder
Formularios, interacción, Unicode
Descripción
Auxiliar interno de TPDFlibFormSession que calcula el orden físico de ranuras del cursor en caché usado por el movimiento visual del cursor
Una caché valida para el valor de edición actual y la dirección de texto resuelta se reutiliza; en caso contrario, el orden se reconstruye desde la tabla de límites de grafemas
El valor se divide en líneas en los saltos LF, CR y CRLF, y cada línea se resuelve en tramos bidireccionales bajo la dirección base resuelta, con un tramo único de reserva cuando la resolución de tramos falla
Los niveles de incrustación de tramos se acotan al rango de 0 a 125 y el orden visual de tramos sigue los niveles resueltos
Los índices de límites de grafemas se agregan en orden físico de izquierda a derecha a través de los tramos, hacia adelante para los tramos de izquierda a derecha y hacia atrás para los de derecha a izquierda, así que un índice lógico en un límite de dirección mixta puede ocupar dos ranuras distintas
Las ranuras duplicadas consecutivas se fusionan, las posiciones de salto de línea se convierten en ranuras propias, un resultado vacío recurre a la ranura única 0 y una reconstrucción restablece la posición de ranura visual a -1
Declaración
procedure EnsureVisualCaretOrder;
Véase también
InvalidateVisualCaretOrder, GetVisualCaretOrder, MoveVisualCaret, GetResolvedTextDirection, EnsureSelectionBoundaries, TPDFlibFormTextDirection, TPDFlibFormSession