Layout¶
Purpose¶
Owns panel layout orchestration and editor UI composition helpers for Snap Studio Pro.
This territory contains layout-facing adapters, right-side panel composition, tab routing, and panel registration support.
Owns¶
- Panel layout coordination
- Right panel composition
- Tab routing support
- Panel adapter helpers
- Panel registration entry points
- Layout-specific UI orchestration
Does NOT Own¶
- Feature workflow implementation
- Capture execution
- Rendering implementation
- Preview scene lifecycle
- Pipeline implementation
- Low-level UI styling primitives
Allowed Dependencies¶
Layout may depend on:
- Panel sections
- Panel abstractions
- Preview facades
- Feature controllers/services where required for construction
- Rendering abstractions
- Unity Editor layout APIs
Layout should avoid depending on:
- low-level rendering implementation
- pipeline internals
- unrelated infrastructure internals
Notes¶
Layout is composition territory.
It is allowed to wire together panels and route drawing, but should not absorb feature behaviour.
If a class decides which panels appear where, it belongs here. If a class performs export/capture/rendering work, it belongs elsewhere.
Future Candidates¶
- Keep layout orchestration explicit and readable.
- Avoid reflection-based panel discovery unless there is a strong reason.
- Keep panel registration order aligned with the visible UI.