fix(editor): Clear All, New Terrain reset, right-click menu, gizmo drag

- Clear All now actually removes all objects and NPCs (was only clearing
  selections before). Uses new ObjectPlacer::clearAll() method.
- New Terrain clears all objects/NPCs and resets viewport before creating
  fresh terrain. Fixes stale state from previous session.
- Right-click context menu works on both objects AND NPCs with
  appropriate options for each (Move/Rotate/Scale for objects,
  Fly To/Duplicate for NPCs)
- Gizmo drag: left-click now confirms the transform (ends drag) instead
  of requiring mouse-up. Right-click cancels. Camera no longer steals
  mouse events while gizmo is active.
- Right-click on unselected area passes through to camera correctly
This commit is contained in:
Kelsi 2026-05-05 05:20:53 -07:00
parent d9ed7be36c
commit befa12f9e6
3 changed files with 64 additions and 30 deletions

View file

@ -54,6 +54,7 @@ public:
bool loadFromFile(const std::string& path);
const std::vector<PlacedObject>& getObjects() const { return objects_; }
void clearAll() { objects_.clear(); undoStack_.clear(); selectedIdx_ = -1; }
size_t objectCount() const { return objects_.size(); }
float getPlacementRotationY() const { return placementRotY_; }