public interface DynamicCriteria
Canvas.ruleScope
using
Criterion.valuePath
.
In other words, it allows criteria to be declared using values from nearby drawn
components, via the Canvas.ruleScope
.
Values are pulled from the ruleScope via setting Criterion.valuePath
When values drawn from the ruleScope change, the component where dynamicCriteria is
declared will be notified and automatically use the new value
public void onModuleLoad() { TextItem lifeSpan = new TextItem("lifeSpan"); lifeSpan.setDefaultValue(45); final DynamicForm theForm = new DynamicForm(); theForm.setID("theForm"); theForm.setItems(lifeSpan); AdvancedCriteria initialCriteria = new AdvancedCriteria("lifeSpan", OperatorId.GREATER_THAN); initialCriteria.setValuePath("theForm.values.lifeSpan"); ListGrid lg = new ListGrid(); lg.setAutoFetchData(true); lg.setDataSource(AnimalXmlDS.getInstance()); lg.setInitialCriteria(initialCriteria); lg.setWidth(600); lg.setHeight(400); lg.setTop(50); VLayout vl = new VLayout(); vl.addMembers(theForm, lg); vl.draw(); }