Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I wrote this over a year ago in my popular fork of Roman's sample code, and have been using it in an app ever since. But I want to move the wizard code from the app into a library, and I thought it would be better to contribute to a library someone has already started :) (I am hoping of course that a new version of the library would be released soon after any eventual merge, so that I can actually use this library.)
These commits enable complex branching structures to be developed, where Pages can be enabled or disabled depending on earlier choices. The alternative is to duplicate pages across branches, which is much messier.
I welcome any comments you have. In particular, I'm not sure that my original decision to allow multiple Conditional objects per Page is necessary, because there would be no difference between the Conditional objects other than what later pages used them for conditions. I should also add some sort of check that a Conditional object is not added to multiple pages, which would cause subtle breakages. (Neither of these mattered before because I was the only user, and my use case wasn't that complex.)