PlannerEntryBuilder<T> typedef

PlannerEntryBuilder<T> = Widget Function(BuildContext context, PlannerEntry<T> entry, PlannerEntryLayout layout)

Builds a fully custom widget for a single timed event (#78) — and, reused as allDayEntryBuilder, for a single all-day chip (#80). Supplied to the Planner as entryBuilder; when non-null the planner layers a widget overlay over the canvas and calls this for every (on-screen) event, sizing and positioning the returned widget at the event's current on-screen rect so it tracks scroll, zoom and drag in lockstep with the grid.

The overlay is purely visual — it is wrapped in IgnorePointer / ExcludeSemantics, so every gesture (tap, double-tap, drag, resize, long-press, right-click) and all accessibility actions fall through to the package's existing recognizers and fire the usual onEntry* callbacks. The builder therefore decides appearance only; interaction stays package-owned.

entry is the typed entry being drawn (read entry.data for the host's metadata payload, #77); layout carries the on-screen PlannerEntryLayout facts (size, overlap column, drag state) the builder needs to shed detail or reflect the drag.

Implementation

typedef PlannerEntryBuilder<T> = Widget Function(
  BuildContext context,
  PlannerEntry<T> entry,
  PlannerEntryLayout layout,
);