Grid Placement

Manipulation: System vs Parent (5.0)

This guide captures a key 5.0-era architecture rule:

  • ManipulationSystem owns the business logic.
  • ManipulationParent owns visual transforms and input-driven transform changes.

Why this split exists

5.0-era manipulation intentionally separates:

  • system orchestration + lifecycle
  • from scene transform concerns

So that:

  • the system remains testable (as much as possible in the 5.0 architecture)
  • the node hierarchy remains understandable

Responsibilities

ComponentRoleOwnsDoes NOT own
ManipulationSystemBusiness logic layerlifecycle, validation, state transitions, high-level APIdirect visual transforms, scene hierarchy decisions
ManipulationParentVisual transform layer (Node2D)rotation/flip/scale container, transform input handling, holds preview + indicatorsorchestration rules/validation

Scene hierarchy shape (5.0 mental model)

1
2
3
4
GridPositioner2D
  └── ManipulationParent
      ├── IndicatorManager
      └── Preview / move-copy

Key implication

  • Preview copies and indicators are transformed together by the parent, while the system enforces workflow rules.

This separation is a precursor to the later 5.1/6.0 direction: keep scene mutation localized and keep workflow logic centralized.