EnsureVisualCaretOrder

Formuláře, interakce, unicode

Popis

Interní helper TPDFlibFormSession, který vypočítá uložené fyzické pořadí slotů kurzoru používané vizuálním pohybem kurzoru

Platná cache pro aktuální editovanou hodnotu a rozlišený směr textu se znovu používá, jinak se pořadí znovu postaví z tabulky hranic grafémů

Hodnota se rozdělí na řádky na zlomech LF, CR a CRLF a každý řádek se rozliší na obousměrné průběhy pod rozlišeným základním směrem, se zálohou jediného průběhu, když rozlišování průběhu selže

Úrovně vkládání průběhů se omezují na rozsah 0 až 125 a vizuální pořadí průběhů sleduje rozlišené úrovně

Indexy hranic grafémů se přidávají ve fyzickém pořadí zleva doprava napříč průběhy, dopředu u průběhů zleva doprava a dozadu u průběhů zprava doleva, takže logický index na hranici smíšeného směru může zabírat dva odlišné sloty

Po sobě jdoucí duplicitní sloty se sloučí, pozice odřádkování se stanou vlastními sloty, prázdný výsledek spadne na jediný slot 0 a přestavba resetuje pozici vizuálního slotu na -1

Deklarace

procedure EnsureVisualCaretOrder;

Viz také

InvalidateVisualCaretOrder, GetVisualCaretOrder, MoveVisualCaret, GetResolvedTextDirection, EnsureSelectionBoundaries, TPDFlibFormTextDirection, TPDFlibFormSession