Mask Validator based text field (Smart GWT)
/*
* SmartGWT (GWT for SmartClient)
* Copyright 2008 and beyond, Isomorphic Software, Inc.
*
* SmartGWT is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License version 3
* as published by the Free Software Foundation. SmartGWT is also
* available under typical commercial license terms - see
* http://smartclient.com/license
* This software is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*/
package com.smartgwt.sample.showcase.client;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
import com.smartgwt.client.data.DataSource;
import com.smartgwt.client.data.fields.DataSourceTextField;
import com.smartgwt.client.types.TitleOrientation;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.IButton;
import com.smartgwt.client.widgets.events.ClickEvent;
import com.smartgwt.client.widgets.events.ClickHandler;
import com.smartgwt.client.widgets.form.DynamicForm;
import com.smartgwt.client.widgets.form.validator.MaskValidator;
import com.smartgwt.client.widgets.layout.VLayout;
public class Showcase implements EntryPoint {
public void onModuleLoad() {
RootPanel.get().add(getViewPanel());
}
TitleOrientation titleOrientation = TitleOrientation.LEFT;
public Canvas getViewPanel() {
DataSource dataSource = new DataSource();
dataSource.setID("valueTransform");
MaskValidator maskValidator = new MaskValidator();
maskValidator.setMask("^\\s*(1?)\\s*\\(?\\s*(\\d{3})\\s*\\)?\\s*-?\\s*(\\d{3})\\s*-?\\s*(\\d{4})\\s*$");
maskValidator.setTransformTo("$1($2) $3 - $4");
DataSourceTextField dsTextField = new DataSourceTextField("phone");
dsTextField.setTitle("Phone");
dsTextField.setValidators(maskValidator);
dataSource.setFields(dsTextField);
final DynamicForm form = new DynamicForm();
form.setWidth(300);
form.setDataSource(dataSource);
IButton validateButton = new IButton();
validateButton.setTitle("Validate");
validateButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
form.validate();
}
});
VLayout vLayout = new VLayout();
vLayout.setMembersMargin(10);
vLayout.addMember(form);
vLayout.addMember(validateButton);
return vLayout;
}
}
SmartGWT.zip( 9,880 k)Related examples in the same category