package org.vaadin.jefferson.demo.addressbook.content;
import org.vaadin.jefferson.Presentation;
import org.vaadin.jefferson.content.SimpleComposite;
import org.vaadin.jefferson.demo.addressbook.domain.Person;
import com.vaadin.data.Property.ValueChangeEvent;
import com.vaadin.data.Property.ValueChangeListener;
import com.vaadin.data.util.BeanItem;
import com.vaadin.ui.ComponentContainer;
public class ListView extends SimpleComposite {
public PersonForm personForm;
private PersonList personList;
public ListView(PersonList personList, PersonForm personForm) {
super("List");
this.personList = personList;
this.personForm = personForm;
setChildren(personList, personForm);
}
@Override
protected ComponentContainer accept(Presentation presentation) {
ComponentContainer rendition = super.accept(presentation);
personList.setListener(new ValueChangeListener() {
public void valueChange(ValueChangeEvent event) {
personForm.setDataSource(
new BeanItem<Person>(personList.getSelection()[0]));
}
});
return rendition;
}
}