package org.realityforge.gwt.sample.contacts.client.view.ui;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ClickEvent;
import org.realityforge.gwt.sample.contacts.client.view.EditContactView;
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.Button;
import com.google.gwt.user.client.ui.Widget;
public class EditContactUI
extends AbstractContactUI
implements EditContactView
{
interface Binder extends UiBinder<Widget, EditContactUI> {}
private static final Binder uiBinder = GWT.create( Binder.class );
@UiField
Button _saveButton;
@UiField
Button _cancelButton;
private Presenter _presenter;
public EditContactUI()
{
initWidget( uiBinder.createAndBindUi( this ) );
}
@UiHandler( "_saveButton" )
void onSaveButtonClicked( final ClickEvent event )
{
if( _presenter != null )
{
copyBackContact();
_presenter.onSaveButtonClicked( getContact() );
}
}
@UiHandler( "_cancelButton" )
void onCancelButtonClicked( final ClickEvent event )
{
if( _presenter != null )
{
_presenter.onCancelButtonClicked();
}
}
public void setPresenter( final Presenter presenter )
{
_presenter = presenter;
}
}