Styling¶
Purpose¶
Owns theme-aware GUIStyle generation, style caching, texture caching, and reusable editor presentation infrastructure used throughout Snap Studio Pro.
This territory centralizes reusable editor styling behaviour and visual consistency systems.
Owns¶
- GUIStyle generation
- GUIStyle caching
- Theme-aware style creation
- Shared editor visual styling
- Cached editor textures
- Style registry systems
- Shared separator/header drawing
- Quantized texture cache keys
- Repaint-driven style refresh workflows
Does NOT Own¶
- Workflow orchestration
- Rendering implementation
- Preview lifecycle ownership
- Feature-domain behaviour
- Theme persistence ownership
Allowed Dependencies¶
Styling may depend on:
- Unity Editor GUI APIs
- Theme systems
- Shared UI abstractions
- Lightweight utility systems
Styling should avoid depending on:
- feature orchestration systems
- rendering systems
- preview systems
- export execution systems
Notes¶
Styling owns reusable editor presentation infrastructure only.
This territory intentionally centralizes: - GUIStyle creation - cached textures - theme-aware colors - repaint refresh logic - reusable editor drawing helpers
StyleCache and StyleRegistry intentionally exist as centralized editor presentation systems to avoid excessive per-frame GUIStyle and Texture2D allocation.
The texture/style caching work here is important because Snap Studio Pro is a large IMGUI-heavy editor tool with long-running editor sessions.
Future Candidates¶
- Continue protecting against GUIStyle/Texture2D allocation leaks.
- Maintain explicit cache refresh ownership.
- Keep styling systems presentation-focused and reusable.
- Avoid embedding workflow orchestration into styling infrastructure.