UTDSeatLayout class
Dev-tunable seat-grid layout knobs.
Every seat dimension in the kit ultimately derives from these four values.
They are set once by the host app via UTDAudioRoomConfig.seatLayout; the
mounted UTDAudioRoom publishes that config to UTDSeatLayout.active so the
many size consumers that cannot reach the widget config — every
UTDRoomMode.computeSeatSize call site (grid, skeleton, overlays, gift &
foreground positioning) and the app-side SeatMetrics — all read the SAME
source and can never drift out of sync.
Defaults reproduce the kit's original look, so an app that passes nothing is
unaffected. Change the look by passing a UTDSeatLayout(...) to the config.
Constructors
- UTDSeatLayout({double avatarRatio = 0.7, double rowPadding = 1.0, double rowSpacing = 5.0, double seatScale = 1.0})
-
const
Properties
- avatarRatio → double
-
Fraction of a seat slot the avatar circle fills (0–1). Higher = larger
faces and less dead space inside each slot, which also visually tightens
the vertical gap between rows.
final
- hashCode → int
-
The hash code for this object.
no setteroverride
- rowPadding → double
-
Horizontal breathing room reserved across a row, expressed in seat-widths.
Lower = larger seats and tighter horizontal gaps (a 4-column row uses
designWidth / (4 + rowPadding)as its reference seat size). Keep itfinal - rowSpacing → double
-
Vertical gap, in logical px, between seat rows in the built-in grid.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- seatScale → double
-
A direct multiplier applied to the final computed seat slot size. 1.0 is
the computed default; 1.1 makes every seat 10% larger, 0.9 shrinks them.
The kit's 52–120px safety clamp still applies as a hard rail, so an
extreme value can never explode or collapse the grid.
final
Methods
-
copyWith(
{double? avatarRatio, double? rowPadding, double? rowSpacing, double? seatScale}) → UTDSeatLayout -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override
Static Properties
- active ↔ UTDSeatLayout
-
The layout currently applied by the mounted UTDAudioRoom. Size consumers
that can't reach the widget config read from here. Reset to defaults if a
room is torn down without another taking its place is unnecessary — a new
room overwrites it in
initStatebefore its first build.getter/setter pair
Constants
- defaults → const UTDSeatLayout
- The kit's original shipped defaults.