refactor: add Effect trait and apply_effects infrastructure

Define Effect trait in ui/effect.rs with concrete effect structs for
all model mutations, view changes, navigation, and app state updates.
Each effect implements apply(&self, &mut App). Add App::apply_effects
to apply a sequence of effects. No behavior change yet — existing
key handlers still work as before.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Edward Langley
2026-04-03 22:36:44 -07:00
parent 567ca341f7
commit 9421d01da5
3 changed files with 405 additions and 0 deletions

View File

@ -1,5 +1,6 @@
pub mod app;
pub mod category_panel;
pub mod effect;
pub mod formula_panel;
pub mod grid;
pub mod help;