wxMaxima
Loading...
Searching...
No Matches
Data Structures
WorksheetCursor.h File Reference

The worksheet's "between the cells" cursor (the horizontally drawn caret). More...

#include "cells/CellPtr.h"
Include dependency graph for WorksheetCursor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  WorksheetCursor
 The between-the-cells cursor: active flag, position, selection anchors. More...
 

Detailed Description

The worksheet's "between the cells" cursor (the horizontally drawn caret).

The worksheet has two cursors: this one, which sits between two group cells (or above the first one), and the text cursor inside an active EditorCell (tracked as CellPointers::m_activeCell, which the EditorCell itself maintains). At most one of the two is active at a time - and while whole cells are selected, neither is. That exclusivity is currently enforced at the Worksheet::SetHCaret / Worksheet::SetActiveCell seam, not here: cells and the autocompletion popup re-activate an editor directly, so this class cannot own the invariant yet.

Note Worksheet::GetHCaret() is more than Position(): it is a derived "where would inserted cells go" anchor that falls back to the active cell's group, the selection, and finally the last cell (pinned by test_WorksheetCursor).