}
} );
form.addAttribute( constants.LiteralValue() + ":",
widgets( lit,
new InfoPopup( constants.Literal(),
constants.ALiteralValueMeansTheValueAsTypedInIeItsNotACalculation() ) ) );
if ( model.isTemplate() ) {
Button templateButton = new Button( constants.TemplateKey() );
templateButton.addClickHandler( new ClickHandler() {
public void onClick(ClickEvent event) {
value.nature = FieldNature.TYPE_TEMPLATE;
value.value = "";
makeDirty();
refresh();
form.hide();
}
} );
form.addAttribute( constants.TemplateKey() + ":",
widgets( templateButton,
new InfoPopup( constants.Literal(),
constants.ALiteralValueMeansTheValueAsTypedInIeItsNotACalculation() ) ) );
}
form.addRow( new HTML( "<hr/>" ) );
form.addRow( new SmallLabel( constants.AdvancedSection() ) );
Button formula = new Button( constants.Formula() );
formula.addClickHandler( new ClickHandler() {
public void onClick(ClickEvent event) {
value.nature = FieldNature.TYPE_FORMULA;
value.value = "=";
makeDirty();
refresh();
form.hide();
}
} );
// If there is a bound Facts or Fields that are of the same type as the current variable type, then show a button
List<String> bindings = getApplicableBindings();
if ( bindings.size() > 0 ) {
Button variable = new Button( constants.BoundVariable() );
form.addAttribute( constants.BoundVariable() + ":",
variable );
variable.addClickHandler( new ClickHandler() {
public void onClick(ClickEvent event) {
value.nature = FieldNature.TYPE_VARIABLE;
value.value = "=";
makeDirty();
refresh();
form.hide();
}
} );
}
form.addAttribute( constants.Formula() + ":",
widgets( formula,
new InfoPopup( constants.Formula(),
constants.FormulaTip() ) ) );
form.show();
}