EnsureVisualCaretOrder

Formulär, interaktion, Unicode

Beskrivning

Intern hjälpmetod i TPDFlibFormSession som beräknar den cachade fysiska textmarkörsplatsordningen som den visuella markörrörelsen använder

Ett giltigt cache för aktuellt redigeringsvärde och löst textriktning återanvänds, i annat fall byggs ordningen om från grafemgränstabellen

Värdet delas upp i rader vid LF-, CR- och CRLF-brytningar, och varje rad löses upp i dubbelriktade körningar under den lösta basriktningen, med en reservlösning med en enda körning när körningsupplösningen misslyckas

Körningarnas inbäddningsnivåer begränsas till intervallet 0 till 125 och den visuella körningsordningen följer de lösta nivåerna

Grafemgränsindex läggs till i fysisk vänster-till-höger-ordning över körningarna, framåt för vänster-till-höger-körningar och bakåt för höger-till-vänster-körningar, så att ett logiskt index vid en blandad riktningsgräns kan uppta två olika platser

Konsekutiva dubblettplatser slås samman, radbrytningspositioner blir egna platser, ett tomt resultat faller tillbaka på den enskilda platsen 0, och en ombyggnad återställer den visuella platspositionen till-1

Deklaration

procedure EnsureVisualCaretOrder;

Se även

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