Generic step-driven activity that guides the user from "fresh system" to "fully configured state". More...
| Header: | #include <WizardActivity> |
| Inherits: | octomy::activity::PageActivity |
| Inherited By: | AgentUnboxingWizard, ControlUnboxingWizard, and OPALUnboxingWizard |
The wizard is a list of \ref WizardStep declarations registered at configure time. Each step's lambdas describe how to ask the system "are you in the state I target?", whether the step should be visible / reachable / launchable / skippable right now, and what happens when the user clicks it (typically pushing a sub-activity).
On every onResume() (the user returned from a sub-activity, or the wizard was just pushed) the wizard:
1. Re-evaluates every step's predicates. 2. Updates the visual list (visible steps only, with status icons reflecting `isDone` / `isLaunchable` / `isSkippable`). 3. Highlights the first incomplete visible step as the user's "next target". 4. If isComplete() returns true, navigates to the activity named by setDoneActivity (or just pops, if no done activity was set).
The wizard owns nothing about the system it configures — every state observation goes through caller-supplied lambdas. Concrete wizards (agent unboxing, hub unboxing, etc.) live in their owning libs and register their step lists.
See also WizardStep.