We need support for a set of movable cursors with selections.
When pressing on text, the cursor should appear at the correct position.
Mostly this includes keeping track of where the cursors currently are, both logically and physically (bi-directional text) and moving the cursors with mouse and keyboard. For this we need to find a good data structure to save the cursors data, we need to have a bi-directional physical position to logical position and we need correct error handling when for example text gets deleted programmatically while a cursor is pointing to that text.
We need support for a set of movable cursors with selections. When pressing on text, the cursor should appear at the correct position.
Mostly this includes keeping track of where the cursors currently are, both logically and physically (bi-directional text) and moving the cursors with mouse and keyboard. For this we need to find a good data structure to save the cursors data, we need to have a bi-directional physical position to logical position and we need correct error handling when for example text gets deleted programmatically while a cursor is pointing to that text.