TileRenderingScope
Receiver passed to every dev.catbit.mosaic.client.ui.sdui.foundation.tiles.renderer.TileRenderer.Render call — one fresh instance per tile, built by TileRendererManager right before rendering it.
It carries the tile's own identity (tileId) and its own declared events, and exposes every way a renderer can react to a user interaction: mutate this tile's own local state synchronously (dispatchEvent), notify every tile in the tree that shares a group concern (dispatchGroupEvent), run this tile's server-declared event chains (triggerEvent), or render child TileSchemas (RenderChild/RenderChildren). None of these calls block — they all funnel through onEvent, which the owning MosaicScreenStateHolder observes to mutate the live tile tree and trigger recomposition.
Properties
the events this tile schema declares (TileSchema.events), used by triggerEvent to decide which of them actually fire for a given EventTrigger. null when the tile declares none.
Functions
Applies tileEvent to this tile's own TileHolder synchronously, by emitting a UIEvent.TileEventHolderUIEvent addressed to tileId.
Broadcasts tileGroupEvent to every TileHolder in the whole screen's tile tree whose handlesGroupEvent(event) returns true for it, by emitting a UIEvent.TileGroupEventHolderUIEvent.
callbackFor specialized for EventTriggers.onClick() — the standard way a tile renderer wires up Modifier.styledWith's onClick/a composable's own onClick parameter, only when the tile actually declares an OnClick event.
Fires EventTriggers.onDisplay() once, the first time this composable enters composition — the standard way every built-in container/interactive tile implements its own OnDisplay trigger. Keyed on tileId, so it re-fires only if the tile identity itself changes (a new instance with a different id), not on every recomposition.
callbackFor specialized for EventTriggers.onLongPress() — same pattern as onClick, for Modifier.styledWith's onLongClick.
Renders tileSchema as Compose UI.
Renders one child tileSchema, delegating to the app-wide TileRendererManager reached via LocalTileRendererManager and forwarding this scope's own onEvent sink unchanged.
Renders every schema in tileSchemas in order, by calling the same path as RenderChild for each one — the usual way a container TileRenderer renders its whole children list in one call.
Runs whichever of this tile's own events declare a trigger structurally equal to trigger — the remote half of a tile's interaction, and the primary way a TileRenderer starts a server-declared event chain.