Skip to content

SelectionPanelSelectedNode

Namespace: Hex1b.Widgets

Assembly: Hex1b.dll

One entry in : describes a single node whose layout intersects the active selection at the moment the user committed the copy.

csharp
public sealed class SelectionPanelSelectedNode

Inheritance

ObjectSelectionPanelSelectedNode

Constructors

SelectionPanelSelectedNode(Hex1bNode, bool, Rect, Rect)

Creates a new .

Parameters:

csharp
public SelectionPanelSelectedNode(Hex1bNode node, bool isFullySelected, Rect intersectionInNode, Rect intersectionInTerminal)

Properties

IntersectionInNode

Intersection of the node's bounds with the selection, expressed in node-local coordinates ((0, 0) is the top-left of the node). Reflects the actual selected cell footprint within the node, not the selection's bounding box — for example, a node on the start row of a multi-row character selection will see the rectangle clamped to the columns from the start point onwards.

Returns: Rect

csharp
public Rect IntersectionInNode { get; }

IntersectionInTerminal

Intersection of the node's bounds with the selection, expressed in absolute terminal coordinates. Reflects the actual selected cell footprint within the node (see ).

Returns: Rect

csharp
public Rect IntersectionInTerminal { get; }

IsFullySelected

true when every cell of the node's Bounds falls inside the selection. Exact for all three selection modes (, and ), computed from per-row selection coverage rather than corner sampling, so multi-row stream selections are handled correctly.

Returns: Boolean

csharp
public bool IsFullySelected { get; }

Node

The node whose layout intersects the selection. May be a container (e.g., , ) or a leaf (e.g., , ). Consumers typically pattern-match on type or use the instance as a stable identity.

Returns: Hex1bNode

csharp
public Hex1bNode Node { get; }

Released under the MIT License.