/** * */ package org.gcube.portlets.user.invitefriends.client.validation; import com.github.gwtbootstrap.client.ui.Button; import com.github.gwtbootstrap.client.ui.HelpBlock; import com.github.gwtbootstrap.client.ui.Modal; import com.github.gwtbootstrap.client.ui.TextBox; import com.google.gwt.core.client.GWT; import com.google.gwt.editor.client.Editor; import com.google.gwt.editor.client.EditorDriver; import com.google.gwt.editor.client.SimpleBeanEditorDriver; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.Widget; /** * @author ivangsa * */ public class ValidationErrorsViewImpl extends Composite implements ValidationErrorsView, Editor { interface Binder extends UiBinder {} private static Binder uiBinder = GWT.create(Binder.class); interface Driver extends SimpleBeanEditorDriver { } private Driver driver = GWT.create(Driver.class); private final Delegate delegate; @UiField TextBox email; @UiField TextBox name; @UiField TextBox lastName; // @UiField Button openModal; @UiField Button cancelInvite; @UiField Button sendInvite; @UiField Modal modalWindow; @UiField HelpBlock helpBlock; /** * */ public ValidationErrorsViewImpl(Delegate delegate) { super(); this.delegate = delegate; initWidget(uiBinder.createAndBindUi(this)); driver.initialize(this); driver.edit(new UserDetails()); } @UiHandler("openModal") void onUserClick(ClickEvent event) { if (!delegate.onSendClick()) { helpBlock.setText("We will send the invitation email to: "+email.getText()); modalWindow.show(); } } @UiHandler("cancelInvite") public void onCancelClick(ClickEvent e) { modalWindow.hide(); } @Override public EditorDriver getEditorDriver() { return driver; } }