Skip to content

TilePanelNode ​

Namespace: Hex1b

Assembly: Hex1b.dll

Render node for . Manages viewport math, tile fetching, POI positioning, and input bindings.

csharp
public sealed class TilePanelNode : Hex1bNode, IDisposable

Inheritance ​

Object → Hex1bNode → TilePanelNode

Implements ​

Properties ​

CameraX ​

Camera X position in tile coordinates.

Returns: Double

csharp
public double CameraX { get; set; }

CameraY ​

Camera Y position in tile coordinates.

Returns: Double

csharp
public double CameraY { get; set; }

ContentChild ​

The reconciled content child node. This is the root of the widget tree built by the tile panel widget.

Returns: Hex1bNode

csharp
public Hex1bNode? ContentChild { get; set; }

DataSource ​

The tile data source.

Returns: ITileDataSource

csharp
public ITileDataSource? DataSource { get; }

IsFocusable ​

Tile panel nodes are NOT themselves focusable - focus passes through to children.

Returns: Boolean

csharp
public override bool IsFocusable { get; }

IsFocused ​

Focus state exists on the content child, not the tile panel node itself.

Returns: Boolean

csharp
public override bool IsFocused { get; set; }

PointsOfInterest ​

Points of interest to display on the map.

Returns: IReadOnlyList<TilePointOfInterest>

csharp
public IReadOnlyList<TilePointOfInterest> PointsOfInterest { get; }

ZoomLevel ​

Zoom level. 0 = 1x, 1 = 2x, 2 = 4x, etc.

Returns: Int32

csharp
public int ZoomLevel { get; set; }

Methods ​

ArrangeCore(Rect) ​

Override this method to implement arranging logic for this node. The base implementation saves previous bounds, marks dirty on change, and sets bounds.

Parameters:

csharp
protected override void ArrangeCore(Rect rect)

Dispose() ​

Disposes the tile cache and cancels pending background fetches.

csharp
public void Dispose()

GetChildren() ​

Gets the direct children of this node for structural tree traversal. Container nodes should override this to return their children.

Returns: IEnumerable<Hex1bNode>

csharp
public override IEnumerable<Hex1bNode> GetChildren()

GetFocusableNodes() ​

Gets all focusable nodes in this subtree (including this node if focusable).

Returns: IEnumerable<Hex1bNode>

csharp
public override IEnumerable<Hex1bNode> GetFocusableNodes()

MeasureCore(Constraints) ​

Override this method to implement measuring logic for this node.

Parameters:

Returns: Size

csharp
protected override Size MeasureCore(Constraints constraints)

Render(Hex1bRenderContext) ​

Renders the node to the given context.

Parameters:

csharp
public override void Render(Hex1bRenderContext context)

Released under the MIT License.