-- Grid + snap settings for the layout system. -- -- Two independent grids: -- * gardens.grid_size_cm / snap_to_grid — the garden-scale grid the visual grid -- is drawn from and (when snap is on) objects snap to when placed/moved/resized. -- Defaults to 100 cm (1 m), matching the editor's previous fixed grid. -- * garden_objects.grid_size_cm / snap_to_grid — a per-object grid used inside a -- plantable bed: when snap is on, plants snap to it. Defaults to 30 cm (~1 ft), -- a practical bed cell. -- -- snap defaults to off on both, so existing gardens keep free placement until the -- owner (garden grid) or an editor (bed grid) opts in. ALTER TABLE gardens ADD COLUMN grid_size_cm REAL NOT NULL DEFAULT 100; ALTER TABLE gardens ADD COLUMN snap_to_grid INTEGER NOT NULL DEFAULT 0 CHECK (snap_to_grid IN (0, 1)); ALTER TABLE garden_objects ADD COLUMN grid_size_cm REAL NOT NULL DEFAULT 30; ALTER TABLE garden_objects ADD COLUMN snap_to_grid INTEGER NOT NULL DEFAULT 0 CHECK (snap_to_grid IN (0, 1));