Zum Inhalt springen
Anjunar/ DOCS

Selektion

Die Selektion liegt im Editorzustand, unabhängig vom Browser-DOM.

Konzept

Punkte und Bereiche

Ein Cursor ist eine kollabierte RangeSelection. Anchor und Focus behalten ihre Richtung; PositionMapping führt sie durch Dokumentänderungen. Tabellen steuern eine eigene rechteckige TableSelection bei.

Auswählen und ansehen

Text oder Tabellenzellen auswählen, dann bearbeiten und den stabilen Baum beobachten.

Select part of this sentence and change its mark.

A

B

One

Two

13 Wörter · 20 Knoten
ember.core.root/1 [document] ember.rich-text.paragraph/1 [selection4] ember.core.text/1 [selection1] "Select " ember.core.text/1 [selection2] "part of this sentence" ember.core.text/1 [selection3] " and change its mark." ember.table.table/1 [selection19] ember.table.row/1 [selection11] ember.table.cell/1 [selection7] ember.rich-text.paragraph/1 [selection6] ember.core.text/1 [selection5] "A" ember.table.cell/1 [selection10] ember.rich-text.paragraph/1 [selection9] ember.core.text/1 [selection8] "B" ember.table.row/1 [selection18] ember.table.cell/1 [selection14] ember.rich-text.paragraph/1 [selection13] ember.core.text/1 [selection12] "One" ember.table.cell/1 [selection17] ember.rich-text.paragraph/1 [selection16] ember.core.text/1 [selection15] "Two"
Quellcode

Selektion im Zustand

Eine Transaktion kann den Cursor setzen. TableSelection nutzt Zellen-IDs für die beiden Ecken.

scala
session.update(_.setSelection( RangeSelection.caret(Point.textBefore(textId, 0)) )) val rectangle = TableSelection(tableId, firstCellId, lastCellId) session.update(_.setSelection(rectangle))