Variables refer to other widgets.
The current implementation only allows access to sibling widgets.
In case the value of a widget is null but the widget is required, then a special
exception will be thrown, the
CannotYetResolveWarning . This is because in
that case, you'll probably want to re-evaluate the expression at a later time (since
the widget is required, it will eventually get a value).
In case the value of the widget is null but the field is not required, then simply
null is returned. (TODO: a function IsNull() will provided in the expression library
so that expression writers can check for the likely condition where a non-required field
is null).
If the variable name does not refer to an existing widget, null is returned (TODO: this
behaviour will probably change in the future)
|