...
Now going through the negotiation process,
- let p[i] be the value of the i-th parameter of the PPM, and let PL be the parameter list {p[0], .. ,p[n-1]}
- let v[i] be the visibility flag of the i-th parameter (whether is rendered at all in the UI)
- let u[i] be the usability flag of the i-th parameter (whether can edit vs. being rendered read-only)
- let invalid[i] be the invalid message of the i-th parameter (only rendered when set)
1) Fill in defaults in two passes:
Code Block |
---|
for i in 0..n-1 p[i]:= default_i() // no arg, init PL // fixed point search for PL, run this outer loop until PL does not change any more, for faileach ifpermutation iterationCountperm >of {0..n-1} for iterationCounti in 1..n for i in 0..n-1 perm // <== perm dictates the order in which the indices are processed p[i]:= default_i(PL) if none of the p[i] had changed, then // we found a fixed point goto(2) render invocation veto message "Cannot find an initial fixed point for action parameter defaults." |
...