private static WComponent build() {
		WContainer root = new WContainer();

		WSubordinateControl control = new WSubordinateControl();
		root.add(control);

		WFieldLayout layout = new WFieldLayout();
		layout.setLabelWidth(25);
		layout.setMargin(new com.github.bordertech.wcomponents.Margin(0, 0, 12, 0));
		WCheckBox checkBox = new WCheckBox();
		layout.addField("Set Mandatory", checkBox);

		WTextField text = new WTextField();
		layout.addField("Might need this field", text);

		WTextField mandatoryField = new WTextField();
		layout.addField("Another field always mandatory", mandatoryField);
		mandatoryField.setMandatory(true);


		final WRadioButtonSelect rbSelect = new WRadioButtonSelect("australian_state");
		layout.addField("Select a state", rbSelect);

		root.add(layout);

		Rule rule = new Rule();
		rule.setCondition(new Equal(checkBox, Boolean.TRUE.toString()));
		rule.addActionOnTrue(new Mandatory(text));
		rule.addActionOnFalse(new Optional(text));
		rule.addActionOnTrue(new Mandatory(rbSelect));
		rule.addActionOnFalse(new Optional(rbSelect));
		control.addRule(rule);

		return root;
	}
private static WComponent build ( ) { WContainer root = new WContainer ( ) ; WSubordinateControl control = new WSubordinateControl ( ) ; root . add ( control ) ; WFieldLayout layout = new WFieldLayout ( ) ; layout . setLabelWidth ( 25 ) ; layout . setMargin ( new com . github . bordertech . wcomponents . Margin ( 0 , 0 , 12 , 0 ) ) ; WCheckBox checkBox = new WCheckBox ( ) ; layout . addField ( "Set Mandatory" , checkBox ) ; WTextField text = new WTextField ( ) ; layout . addField ( "Might need this field" , text ) ; WTextField mandatoryField = new WTextField ( ) ; layout . addField ( "Another field always mandatory" , mandatoryField ) ; mandatoryField . setMandatory ( true ) ; final WRadioButtonSelect rbSelect = new WRadioButtonSelect ( "australian_state" ) ; layout . addField ( "Select a state" , rbSelect ) ; root . add ( layout ) ; Rule rule = new Rule ( ) ; rule . setCondition ( new Equal ( checkBox , Boolean . TRUE . toString ( ) ) ) ; rule . addActionOnTrue ( new Mandatory ( text ) ) ; rule . addActionOnFalse ( new Optional ( text ) ) ; rule . addActionOnTrue ( new Mandatory ( rbSelect ) ) ; rule . addActionOnFalse ( new Optional ( rbSelect ) ) ; control . addRule ( rule ) ; return root ; }
Creates the component to be added to the validation container. This is doen in a static method because the
component is passed into the superclass constructor.

@return the component to be added to the validation container.