Minga.RenderModel.Window.PaneGeometry (Minga v0.1.0)

Copy Markdown View Source

BEAM-authored pane geometry for one render-model window.

Native GUI frontends use this as the authoritative source for pane ownership, clipping, and input hit testing. Pixel conversion remains frontend-owned, but the BEAM owns the cell-space rects and target regions.

Summary

Types

rect()

@type rect() ::
  {row :: non_neg_integer(), col :: non_neg_integer(),
   width :: non_neg_integer(), height :: non_neg_integer()}

t()

@type t() :: %Minga.RenderModel.Window.PaneGeometry{
  clip_rect: rect(),
  content_rect: rect(),
  gutter_metrics: Minga.RenderModel.Window.GutterMetrics.t(),
  gutter_rect: rect(),
  hit_regions: [Minga.RenderModel.Window.HitRegion.t()],
  text_rect: rect(),
  total_rect: rect(),
  viewport: Minga.RenderModel.Window.Viewport.t(),
  window_id: non_neg_integer()
}