package com.smartgwt.sample.showcase.client.forms.details; import com.smartgwt.client.util.SC; import com.smartgwt.client.widgets.Canvas; import com.smartgwt.client.widgets.form.DynamicForm; import com.smartgwt.client.widgets.form.fields.FormItemIcon; import com.smartgwt.client.widgets.form.fields.StaticTextItem; import com.smartgwt.client.widgets.form.fields.TextItem; import com.smartgwt.client.widgets.form.fields.events.IconClickEvent; import com.smartgwt.client.widgets.form.fields.events.IconClickHandler; import com.smartgwt.sample.showcase.client.PanelFactory; import com.smartgwt.sample.showcase.client.ShowcasePanel; public class FormHintsSample extends ShowcasePanel { private static final String DESCRIPTION = "Hints provide guidance to the user filling out the form. In this case, " + "the MM/YYYY hint tells the user the expected format for the free-form date field. Hints can be displayed beside the field, or inside the field."; private static final String HELPTEXT = "<br><b>Severity 1</b> - Critical problem<br>System is unavailable in production or " + "is corrupting data, and the error severely impacts the user's operations." + "<br><br><b>Severity 2</b> - Major problem<br>An important function of the system " + "is not available in production, and the user's operations are restricted." + "<br><br><b>Severity 3</b> - Minor problem<br>Inability to use a function of the " + "system occurs, but it does not seriously affect the user's operations."; public static class Factory implements PanelFactory { private String id; public Canvas create() { FormHintsSample panel = new FormHintsSample(); id = panel.getID(); return panel; } public String getID() { return id; } public String getDescription() { return DESCRIPTION; } } public Canvas getViewPanel() { final DynamicForm form = new DynamicForm(); form.setWidth(300); TextItem caseNumber = new TextItem("case", "Case #"); caseNumber.setWidth(130); caseNumber.setHint("Enter case number"); caseNumber.setShowHintInField(true); FormItemIcon icon = new FormItemIcon(); icon.setSrc("[SKIN]/actions/help.png"); final StaticTextItem severityLevel = new StaticTextItem(); severityLevel.setName("severityLevel"); severityLevel.setTitle("Severity Level"); severityLevel.setDefaultValue("Severity 2"); severityLevel.setIcons(icon); severityLevel.addIconClickHandler(new IconClickHandler() { public void onIconClick(IconClickEvent event) { SC.say(HELPTEXT); } }); final TextItem dueDate = new TextItem("dueDate", "Due Date"); dueDate.setWidth(70); dueDate.setHint("MM/YYYY"); form.setFields(caseNumber, severityLevel, dueDate); return form; } public String getIntro() { return DESCRIPTION; } }