package ch.vorburger.appviewsnflows.vaadin; import com.vaadin.ui.Component; /** * TODO * * @param <T> Java Class Type of the Model of this View * * @author Michael Vorburger */ public interface View<T> { // TODO extend ch.vorburger.appviewsnflows.View ? Or contain instead of inherit? /** * Implementations must not "construct" the component here; it should have been constructed * before and simply returned here. */ Component getRootComponent(); void setModel(T model); // TODO move this up into non-Vaddin View (or new ViewContainer extends View?) void setSubView(String slotName, View<?> subView); }